semiring-num-1.2.0.0: bench/bench.hs
module Main (main) where
import Criterion.Main
import System.Random
import Control.Monad
import Data.Semiring
threeInts :: IO (Int,Int,Int)
threeInts = (,,) <$> randomIO <*> randomIO <*> randomIO
sumAtSize :: Int -> Benchmark
sumAtSize n =
env (replicateM n threeInts) $
\xs ->
bgroup (show n) [bench "add" $ nf add xs]
main :: IO ()
main = defaultMain [sumAtSize 10000]