-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Benchmark functions with history -- -- Benchmark functions via GHC.Stats and keep a history of -- running time and allocation profiles. @package BenchmarkHistory @version 0.0.0.2 module BenchmarkHistory newtype TimeStamp TimeStamp :: LocalTime -> TimeStamp [getTimeStamp] :: TimeStamp -> LocalTime newtype GCStatistics GCStatistics :: GCStats -> GCStatistics [getGCStatistics] :: GCStatistics -> GCStats data Stats Stats :: !TimeStamp -> !GCStatistics -> !GCStatistics -> !Int -> Stats [timeStamp] :: Stats -> !TimeStamp [preStats] :: Stats -> !GCStatistics [postStats] :: Stats -> !GCStatistics [multiplier] :: Stats -> !Int gcStatDiff :: Num a => (GCStats -> a) -> GCStats -> GCStats -> a -- | Benchmark a function. The function should take a /considerable amount -- of time/ to finish, since the benchmarking system is designed to -- measure coarse-grained timings. benchmark :: (NFData e, NFData a, NFData b) => Int -> String -> (a -> e) -> (e -> a -> b) -> a -> IO ExitCode call :: NFData b => (a -> b) -> a -> IO b -- | Divide data into blocks toBlocks :: [Int] -> [a] -> [[a]] defbs :: [Integer] -- | for each block, perform an op and return first time stamp and op -- result eachBlock :: (GCStats -> r) -> (Int -> r -> r -> Double) -> [[Stats]] -> [(TimeStamp, Double)] -- | Statistics for data. We allow one standard deviation or 5% of the mean -- as error margin before we flag the running time as being slow enough -- to raise an ExitFailure 1. basicStats :: [(TimeStamp, Double)] -> IO ExitCode instance GHC.Generics.Selector BenchmarkHistory.S1_0_3Stats instance GHC.Generics.Selector BenchmarkHistory.S1_0_2Stats instance GHC.Generics.Selector BenchmarkHistory.S1_0_1Stats instance GHC.Generics.Selector BenchmarkHistory.S1_0_0Stats instance GHC.Generics.Constructor BenchmarkHistory.C1_0Stats instance GHC.Generics.Datatype BenchmarkHistory.D1Stats instance GHC.Generics.Selector BenchmarkHistory.S1_0_0GCStatistics instance GHC.Generics.Constructor BenchmarkHistory.C1_0GCStatistics instance GHC.Generics.Datatype BenchmarkHistory.D1GCStatistics instance GHC.Generics.Selector BenchmarkHistory.S1_0_0TimeStamp instance GHC.Generics.Constructor BenchmarkHistory.C1_0TimeStamp instance GHC.Generics.Datatype BenchmarkHistory.D1TimeStamp instance GHC.Generics.Generic BenchmarkHistory.Stats instance GHC.Show.Show BenchmarkHistory.Stats instance GHC.Read.Read BenchmarkHistory.Stats instance GHC.Generics.Generic BenchmarkHistory.GCStatistics instance GHC.Show.Show BenchmarkHistory.GCStatistics instance GHC.Read.Read BenchmarkHistory.GCStatistics instance GHC.Generics.Generic BenchmarkHistory.TimeStamp instance GHC.Show.Show BenchmarkHistory.TimeStamp instance GHC.Read.Read BenchmarkHistory.TimeStamp instance Control.DeepSeq.NFData BenchmarkHistory.TimeStamp instance Data.Csv.Conversion.FromField BenchmarkHistory.TimeStamp instance Data.Csv.Conversion.ToField BenchmarkHistory.TimeStamp instance Control.DeepSeq.NFData BenchmarkHistory.GCStatistics instance Data.Csv.Conversion.FromField BenchmarkHistory.GCStatistics instance Data.Csv.Conversion.ToField BenchmarkHistory.GCStatistics instance Data.Csv.Conversion.DefaultOrdered BenchmarkHistory.Stats instance Data.Csv.Conversion.FromNamedRecord BenchmarkHistory.Stats instance Data.Csv.Conversion.ToNamedRecord BenchmarkHistory.Stats instance Data.Csv.Conversion.FromRecord BenchmarkHistory.Stats instance Data.Csv.Conversion.ToRecord BenchmarkHistory.Stats instance Control.DeepSeq.NFData BenchmarkHistory.Stats