packages feed

PenroseKiteDart-1.11: benchmark/Bench.hs

import PKD
import TgraphExamples
import Debug.Trace (traceMarkerIO)
import Control.Concurrent (threadDelay)
-- import TileLib (draw)
-- import Diagrams.Prelude

main :: IO ()
main = 
  do let wait = threadDelay 25000
     wait
     _ <- traceMarkerIO "starting decompositions" 
     let !kD = {-# SCC "decomposing" #-} decompositions kingGraph !! n
     putStrLn $ "Number of faces of a " ++ sn ++ " times decomposed King is " 
                       ++ show (faceCount kD)
     putStrLn $ "Max vertex of a (" ++ sn ++ " times decomposed King) is " 
                            ++ show (maxV kD)
     _ <- traceMarkerIO "finished decomposing" 
     wait
     _ <- traceMarkerIO "starting force" 
     let !fkD = {-# SCC "forcingKD" #-} forceF kD
     putStrLn $ "Number of faces of force (" ++ sn ++ " times decomposed King) is " 
                            ++ show (faceCount $ forgetF fkD)
     putStrLn $ "Max vertex of force (" ++ sn ++ " times decomposed King) is " 
                            ++ show (maxV $ forgetF fkD)
     _ <- traceMarkerIO "finished force" 
     wait
     _ <- traceMarkerIO "starting (unchecked) composing" 
     let !cfkD = {-# SCC "composing" #-} forgetF $ last $ takeWhile (not . nullFaces . forgetF) $ iterate composeF fkD
     putStrLn $ "Number of faces of recomposed force (" ++ sn ++ " times decomposed King) is " 
                            ++ show (faceCount cfkD)
     putStrLn $ "Max vertex of recomposed force (" ++ sn ++ " times decomposed King) is " 
                            ++ show (maxV cfkD)
     _  <- traceMarkerIO "finished (unchecked) composing" 
     wait
     _ <- traceMarkerIO "starting checked compose" 
     let !newcfkD = {-# SCC "checkedCompose" #-} compose fkD
     putStrLn $ "Number of faces of new checked compose is " 
                            ++ show (faceCount newcfkD)
     _  <- traceMarkerIO "finished checked compose" 
{-
     wait
     _ <- traceMarkerIO "starting tryComposeToRhombuses" 
     let !crfkD = {-# SCC "tryComposeToRhombuses" #-} runTry $ tryComposeToRhombuses $ recoverGraph fkD
     putStrLn $ "Number of faces of quickCompose is " 
                            ++ show (faceCount_P3 crfkD)
     _  <- traceMarkerIO "finished tryComposeToRhombuses" 
     wait
     _ <- traceMarkerIO "starting quickCompose" 
     let !qcfkD = {-# SCC "quickCompose" #-} quickCompose fkD
     putStrLn $ "Number of faces of quickCompose is " 
                            ++ show (faceCount qcfkD)
     _  <- traceMarkerIO "finished quickCompose" 
 -}
     return ()
     

  where
       sn = show n
       n = 5

{-
       fig = draw fkD
       w = width fig
-}