packages feed

zwirn-core-0.1.1.0: benchmarks/ZwirnBenchmarks.hs

module Main where

import Criterion.Main
import Zwirn.Core.Cord
import Zwirn.Core.Modulate (fastcat)
import Zwirn.Core.Query
import Zwirn.Core.Time

cord :: Cord () () Int
cord = fastcat $ map pure [1 .. 10]

cord2 :: Cord () () Int
cord2 = stack $ replicate 10 cord

main :: IO ()
main =
  defaultMain
    [ bgroup
        "1"
        [ bench "1" $ nf (map snd . findAllValuesWithTime (Time 0 1, Time 1 1) ()) cord,
          bench "2" $ nf (map snd . findAllValuesWithTime (Time 0 1, Time 1 1) ()) cord2
        ]
    ]