SBench-0.2.0: A benchmark suite for runtime and heap measurements over a series of inputs.

Safe HaskellNone

Test.SBench.Space.Series.Test

Synopsis

Documentation

makeSeriesSource

Arguments

:: (Show c, Real c, Show d, Real d) 
=> (TestOpts -> Algorithm (a -> b) -> Data a -> FilePath -> IO d)

Function for a single test.

-> TestOpts 
-> (FilePath, Title)

File where the result data should be stored and title for the measurement graph (stored as meta information in the .sbench file)

-> Algorithm (a -> b)

Function to be tested

-> DataGen (c -> a)

Input data generator. It is fed with the input seeds.

-> [Seed c]

Input seeds, given to the input data generator to produce an input.

-> IO [(c, d)]

List of input seed-measurement pairs.

maxMemSeriesSource

Arguments

:: (Show c, Real c) 
=> NormalInput

Shall input data first be normalized? (Boolean value)

-> (FilePath, Title)

Output data file (will get extension .sbench) and title for the graph of the data stored as meta information.

-> Algorithm (a -> b)

Function to benchmark

-> DataGen (c -> a)

Input data generator. It is fed with the input seeds.

-> [Seed c]

Input seeds, given to the input data generator to produce an input.

-> IO [(c, Integer)]

List of input seed-maximal heap consumption pairs.

The function measures the maximal heap consumption of a given function over a series of different inputs that are produced via an input generator given different seeds.

maxMemSeriesWith :: (Show c, Real c) => TestOpts -> (FilePath, Title) -> Algorithm (a -> b) -> DataGen (c -> a) -> [Seed c] -> IO [(c, Integer)]Source

The function acts similar to maxMemSeries, but instead of only NormalInput, TestOpts can be set manually via the first parameter.