Copyright | (c) 2009-2014 Bryan O'Sullivan |
---|---|
License | BSD-style |
Maintainer | bos@serpentine.com |
Stability | experimental |
Portability | GHC |
Safe Haskell | Trustworthy |
Language | Haskell2010 |
Criterion.Types
Description
Types for benchmarking.
The core type is Benchmarkable
, which admits both pure functions
and IO
actions.
For a pure function of type a -> b
, the benchmarking harness
calls this function repeatedly, each time with a different Int64
argument (the number of times to run the function in a loop), and
reduces the result the function returns to weak head normal form.
For an action of type IO a
, the benchmarking harness calls the
action repeatedly, but does not reduce the result.
Synopsis
- data Config = Config {
- confInterval :: CL Double
- timeLimit :: Double
- resamples :: Int
- regressions :: [([String], String)]
- rawDataFile :: Maybe FilePath
- reportFile :: Maybe FilePath
- csvFile :: Maybe FilePath
- jsonFile :: Maybe FilePath
- junitFile :: Maybe FilePath
- verbosity :: Verbosity
- template :: FilePath
- data Verbosity
- data Benchmarkable = NFData a => Benchmarkable {
- allocEnv :: Int64 -> IO a
- cleanEnv :: Int64 -> a -> IO ()
- runRepeatedly :: a -> Int64 -> IO ()
- perRun :: Bool
- data Benchmark where
- Environment :: forall env a. NFData env => IO env -> (env -> IO a) -> (env -> Benchmark) -> Benchmark
- Benchmark :: String -> Benchmarkable -> Benchmark
- BenchGroup :: String -> [Benchmark] -> Benchmark
- data Measured = Measured {
- measTime :: !Double
- measCpuTime :: !Double
- measCycles :: !Int64
- measIters :: !Int64
- measAllocated :: !Int64
- measPeakMbAllocated :: !Int64
- measNumGcs :: !Int64
- measBytesCopied :: !Int64
- measMutatorWallSeconds :: !Double
- measMutatorCpuSeconds :: !Double
- measGcWallSeconds :: !Double
- measGcCpuSeconds :: !Double
- fromInt :: Int64 -> Maybe Int64
- toInt :: Maybe Int64 -> Int64
- fromDouble :: Double -> Maybe Double
- toDouble :: Maybe Double -> Double
- measureAccessors :: Map String (Measured -> Maybe Double, String)
- measureKeys :: [String]
- measure :: Unbox a => (Measured -> a) -> Vector Measured -> Vector a
- rescale :: Measured -> Measured
- env :: NFData env => IO env -> (env -> Benchmark) -> Benchmark
- envWithCleanup :: NFData env => IO env -> (env -> IO a) -> (env -> Benchmark) -> Benchmark
- perBatchEnv :: (NFData env, NFData b) => (Int64 -> IO env) -> (env -> IO b) -> Benchmarkable
- perBatchEnvWithCleanup :: (NFData env, NFData b) => (Int64 -> IO env) -> (Int64 -> env -> IO ()) -> (env -> IO b) -> Benchmarkable
- perRunEnv :: (NFData env, NFData b) => IO env -> (env -> IO b) -> Benchmarkable
- perRunEnvWithCleanup :: (NFData env, NFData b) => IO env -> (env -> IO ()) -> (env -> IO b) -> Benchmarkable
- toBenchmarkable :: (Int64 -> IO ()) -> Benchmarkable
- bench :: String -> Benchmarkable -> Benchmark
- bgroup :: String -> [Benchmark] -> Benchmark
- addPrefix :: String -> String -> String
- benchNames :: Benchmark -> [String]
- nf :: NFData b => (a -> b) -> a -> Benchmarkable
- whnf :: (a -> b) -> a -> Benchmarkable
- nfIO :: NFData a => IO a -> Benchmarkable
- whnfIO :: IO a -> Benchmarkable
- nfAppIO :: NFData b => (a -> IO b) -> a -> Benchmarkable
- whnfAppIO :: (a -> IO b) -> a -> Benchmarkable
- data Outliers = Outliers {
- samplesSeen :: !Int64
- lowSevere :: !Int64
- lowMild :: !Int64
- highMild :: !Int64
- highSevere :: !Int64
- data OutlierEffect
- = Unaffected
- | Slight
- | Moderate
- | Severe
- data OutlierVariance = OutlierVariance {
- ovEffect :: OutlierEffect
- ovDesc :: String
- ovFraction :: Double
- data Regression = Regression {
- regResponder :: String
- regCoeffs :: Map String (Estimate ConfInt Double)
- regRSquare :: Estimate ConfInt Double
- data KDE = KDE {}
- data Report = Report {
- reportNumber :: Int
- reportName :: String
- reportKeys :: [String]
- reportMeasured :: Vector Measured
- reportAnalysis :: SampleAnalysis
- reportOutliers :: Outliers
- reportKDEs :: [KDE]
- data SampleAnalysis = SampleAnalysis {
- anRegress :: [Regression]
- anMean :: Estimate ConfInt Double
- anStdDev :: Estimate ConfInt Double
- anOutlierVar :: OutlierVariance
- data DataRecord
- = Measurement Int String (Vector Measured)
- | Analysed Report
Configuration
Top-level benchmarking configuration.
Constructors
Config | |
Fields
|
Instances
Data Config Source # | |||||
Defined in Criterion.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Config -> c Config gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Config dataTypeOf :: Config -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Config) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Config) gmapT :: (forall b. Data b => b -> b) -> Config -> Config gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Config -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Config -> r gmapQ :: (forall d. Data d => d -> u) -> Config -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Config -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Config -> m Config gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Config -> m Config gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Config -> m Config | |||||
Generic Config Source # | |||||
Defined in Criterion.Types Associated Types
| |||||
Read Config Source # | |||||
Defined in Criterion.Types | |||||
Show Config Source # | |||||
Eq Config Source # | |||||
MonadReader Config Criterion | |||||
type Rep Config Source # | |||||
Defined in Criterion.Types type Rep Config = D1 ('MetaData "Config" "Criterion.Types" "criterion-1.6.3.0-9Q9DiCBFrUVt1MK2yVv8x" 'False) (C1 ('MetaCons "Config" 'PrefixI 'True) (((S1 ('MetaSel ('Just "confInterval") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (CL Double)) :*: S1 ('MetaSel ('Just "timeLimit") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Double)) :*: (S1 ('MetaSel ('Just "resamples") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int) :*: (S1 ('MetaSel ('Just "regressions") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [([String], String)]) :*: S1 ('MetaSel ('Just "rawDataFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe FilePath))))) :*: ((S1 ('MetaSel ('Just "reportFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe FilePath)) :*: (S1 ('MetaSel ('Just "csvFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe FilePath)) :*: S1 ('MetaSel ('Just "jsonFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe FilePath)))) :*: (S1 ('MetaSel ('Just "junitFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe FilePath)) :*: (S1 ('MetaSel ('Just "verbosity") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Verbosity) :*: S1 ('MetaSel ('Just "template") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FilePath)))))) |
Control the amount of information displayed.
Instances
Data Verbosity Source # | |||||
Defined in Criterion.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Verbosity -> c Verbosity gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Verbosity toConstr :: Verbosity -> Constr dataTypeOf :: Verbosity -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Verbosity) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Verbosity) gmapT :: (forall b. Data b => b -> b) -> Verbosity -> Verbosity gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Verbosity -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Verbosity -> r gmapQ :: (forall d. Data d => d -> u) -> Verbosity -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Verbosity -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Verbosity -> m Verbosity gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Verbosity -> m Verbosity gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Verbosity -> m Verbosity | |||||
Bounded Verbosity Source # | |||||
Defined in Criterion.Types | |||||
Enum Verbosity Source # | |||||
Defined in Criterion.Types | |||||
Generic Verbosity Source # | |||||
Defined in Criterion.Types Associated Types
| |||||
Read Verbosity Source # | |||||
Defined in Criterion.Types | |||||
Show Verbosity Source # | |||||
Eq Verbosity Source # | |||||
Ord Verbosity Source # | |||||
Defined in Criterion.Types | |||||
type Rep Verbosity Source # | |||||
Defined in Criterion.Types type Rep Verbosity = D1 ('MetaData "Verbosity" "Criterion.Types" "criterion-1.6.3.0-9Q9DiCBFrUVt1MK2yVv8x" 'False) (C1 ('MetaCons "Quiet" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Normal" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Verbose" 'PrefixI 'False) (U1 :: Type -> Type))) |
Benchmark descriptions
data Benchmarkable #
Constructors
NFData a => Benchmarkable | |
Fields
|
Constructors
Environment :: forall env a. NFData env => IO env -> (env -> IO a) -> (env -> Benchmark) -> Benchmark | |
Benchmark :: String -> Benchmarkable -> Benchmark | |
BenchGroup :: String -> [Benchmark] -> Benchmark |
Measurements
Constructors
Measured | |
Fields
|
Instances
FromJSON Measured | |||||
Defined in Criterion.Measurement.Types Methods parseJSON :: Value -> Parser Measured parseJSONList :: Value -> Parser [Measured] omittedField :: Maybe Measured | |||||
ToJSON Measured | |||||
Defined in Criterion.Measurement.Types Methods toEncoding :: Measured -> Encoding toJSONList :: [Measured] -> Value toEncodingList :: [Measured] -> Encoding | |||||
Data Measured | |||||
Defined in Criterion.Measurement.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Measured -> c Measured gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Measured toConstr :: Measured -> Constr dataTypeOf :: Measured -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Measured) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Measured) gmapT :: (forall b. Data b => b -> b) -> Measured -> Measured gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Measured -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Measured -> r gmapQ :: (forall d. Data d => d -> u) -> Measured -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Measured -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Measured -> m Measured gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Measured -> m Measured gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Measured -> m Measured | |||||
Generic Measured | |||||
Defined in Criterion.Measurement.Types Associated Types
| |||||
Read Measured | |||||
Defined in Criterion.Measurement.Types | |||||
Show Measured | |||||
Binary Measured | |||||
NFData Measured | |||||
Defined in Criterion.Measurement.Types | |||||
Eq Measured | |||||
type Rep Measured | |||||
Defined in Criterion.Measurement.Types type Rep Measured = D1 ('MetaData "Measured" "Criterion.Measurement.Types" "criterion-measurement-0.2.2.0-lm53mVpFTm6nNLxKH4CXb" 'False) (C1 ('MetaCons "Measured" 'PrefixI 'True) (((S1 ('MetaSel ('Just "measTime") 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 Double) :*: (S1 ('MetaSel ('Just "measCpuTime") 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 Double) :*: S1 ('MetaSel ('Just "measCycles") 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 Int64))) :*: (S1 ('MetaSel ('Just "measIters") 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 Int64) :*: (S1 ('MetaSel ('Just "measAllocated") 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 Int64) :*: S1 ('MetaSel ('Just "measPeakMbAllocated") 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 Int64)))) :*: ((S1 ('MetaSel ('Just "measNumGcs") 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 Int64) :*: (S1 ('MetaSel ('Just "measBytesCopied") 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 Int64) :*: S1 ('MetaSel ('Just "measMutatorWallSeconds") 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 Double))) :*: (S1 ('MetaSel ('Just "measMutatorCpuSeconds") 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 Double) :*: (S1 ('MetaSel ('Just "measGcWallSeconds") 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 Double) :*: S1 ('MetaSel ('Just "measGcCpuSeconds") 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 Double)))))) |
fromDouble :: Double -> Maybe Double #
measureAccessors :: Map String (Measured -> Maybe Double, String) #
measureKeys :: [String] #
Benchmark construction
envWithCleanup :: NFData env => IO env -> (env -> IO a) -> (env -> Benchmark) -> Benchmark #
perBatchEnv :: (NFData env, NFData b) => (Int64 -> IO env) -> (env -> IO b) -> Benchmarkable #
perBatchEnvWithCleanup :: (NFData env, NFData b) => (Int64 -> IO env) -> (Int64 -> env -> IO ()) -> (env -> IO b) -> Benchmarkable #
perRunEnv :: (NFData env, NFData b) => IO env -> (env -> IO b) -> Benchmarkable #
perRunEnvWithCleanup :: (NFData env, NFData b) => IO env -> (env -> IO ()) -> (env -> IO b) -> Benchmarkable #
toBenchmarkable :: (Int64 -> IO ()) -> Benchmarkable #
bench :: String -> Benchmarkable -> Benchmark #
benchNames :: Benchmark -> [String] #
Evaluation control
nf :: NFData b => (a -> b) -> a -> Benchmarkable #
whnf :: (a -> b) -> a -> Benchmarkable #
nfIO :: NFData a => IO a -> Benchmarkable #
whnfIO :: IO a -> Benchmarkable #
nfAppIO :: NFData b => (a -> IO b) -> a -> Benchmarkable #
whnfAppIO :: (a -> IO b) -> a -> Benchmarkable #
Result types
Outliers from sample data, calculated using the boxplot technique.
Constructors
Outliers | |
Fields
|
Instances
FromJSON Outliers Source # | |||||
Defined in Criterion.Types Methods parseJSON :: Value -> Parser Outliers parseJSONList :: Value -> Parser [Outliers] omittedField :: Maybe Outliers | |||||
ToJSON Outliers Source # | |||||
Defined in Criterion.Types Methods toEncoding :: Outliers -> Encoding toJSONList :: [Outliers] -> Value toEncodingList :: [Outliers] -> Encoding | |||||
Data Outliers Source # | |||||
Defined in Criterion.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Outliers -> c Outliers gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Outliers toConstr :: Outliers -> Constr dataTypeOf :: Outliers -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Outliers) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Outliers) gmapT :: (forall b. Data b => b -> b) -> Outliers -> Outliers gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Outliers -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Outliers -> r gmapQ :: (forall d. Data d => d -> u) -> Outliers -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Outliers -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Outliers -> m Outliers gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Outliers -> m Outliers gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Outliers -> m Outliers | |||||
Monoid Outliers Source # | |||||
Semigroup Outliers Source # | |||||
Generic Outliers Source # | |||||
Defined in Criterion.Types Associated Types
| |||||
Read Outliers Source # | |||||
Defined in Criterion.Types | |||||
Show Outliers Source # | |||||
Binary Outliers Source # | |||||
NFData Outliers Source # | |||||
Defined in Criterion.Types | |||||
Eq Outliers Source # | |||||
type Rep Outliers Source # | |||||
Defined in Criterion.Types type Rep Outliers = D1 ('MetaData "Outliers" "Criterion.Types" "criterion-1.6.3.0-9Q9DiCBFrUVt1MK2yVv8x" 'False) (C1 ('MetaCons "Outliers" 'PrefixI 'True) ((S1 ('MetaSel ('Just "samplesSeen") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int64) :*: S1 ('MetaSel ('Just "lowSevere") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int64)) :*: (S1 ('MetaSel ('Just "lowMild") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int64) :*: (S1 ('MetaSel ('Just "highMild") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int64) :*: S1 ('MetaSel ('Just "highSevere") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int64))))) |
data OutlierEffect Source #
A description of the extent to which outliers in the sample data affect the sample mean and standard deviation.
Constructors
Unaffected | Less than 1% effect. |
Slight | Between 1% and 10%. |
Moderate | Between 10% and 50%. |
Severe | Above 50% (i.e. measurements are useless). |
Instances
FromJSON OutlierEffect Source # | |||||
Defined in Criterion.Types Methods parseJSON :: Value -> Parser OutlierEffect parseJSONList :: Value -> Parser [OutlierEffect] omittedField :: Maybe OutlierEffect | |||||
ToJSON OutlierEffect Source # | |||||
Defined in Criterion.Types Methods toJSON :: OutlierEffect -> Value toEncoding :: OutlierEffect -> Encoding toJSONList :: [OutlierEffect] -> Value toEncodingList :: [OutlierEffect] -> Encoding omitField :: OutlierEffect -> Bool | |||||
Data OutlierEffect Source # | |||||
Defined in Criterion.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> OutlierEffect -> c OutlierEffect gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c OutlierEffect toConstr :: OutlierEffect -> Constr dataTypeOf :: OutlierEffect -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c OutlierEffect) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c OutlierEffect) gmapT :: (forall b. Data b => b -> b) -> OutlierEffect -> OutlierEffect gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> OutlierEffect -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> OutlierEffect -> r gmapQ :: (forall d. Data d => d -> u) -> OutlierEffect -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> OutlierEffect -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> OutlierEffect -> m OutlierEffect gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> OutlierEffect -> m OutlierEffect gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> OutlierEffect -> m OutlierEffect | |||||
Generic OutlierEffect Source # | |||||
Defined in Criterion.Types Associated Types
| |||||
Read OutlierEffect Source # | |||||
Defined in Criterion.Types Methods readsPrec :: Int -> ReadS OutlierEffect readList :: ReadS [OutlierEffect] readPrec :: ReadPrec OutlierEffect readListPrec :: ReadPrec [OutlierEffect] | |||||
Show OutlierEffect Source # | |||||
Defined in Criterion.Types Methods showsPrec :: Int -> OutlierEffect -> ShowS show :: OutlierEffect -> String showList :: [OutlierEffect] -> ShowS | |||||
Binary OutlierEffect Source # | |||||
Defined in Criterion.Types | |||||
NFData OutlierEffect Source # | |||||
Defined in Criterion.Types Methods rnf :: OutlierEffect -> () | |||||
Eq OutlierEffect Source # | |||||
Defined in Criterion.Types | |||||
Ord OutlierEffect Source # | |||||
Defined in Criterion.Types Methods compare :: OutlierEffect -> OutlierEffect -> Ordering (<) :: OutlierEffect -> OutlierEffect -> Bool (<=) :: OutlierEffect -> OutlierEffect -> Bool (>) :: OutlierEffect -> OutlierEffect -> Bool (>=) :: OutlierEffect -> OutlierEffect -> Bool max :: OutlierEffect -> OutlierEffect -> OutlierEffect min :: OutlierEffect -> OutlierEffect -> OutlierEffect | |||||
type Rep OutlierEffect Source # | |||||
Defined in Criterion.Types type Rep OutlierEffect = D1 ('MetaData "OutlierEffect" "Criterion.Types" "criterion-1.6.3.0-9Q9DiCBFrUVt1MK2yVv8x" 'False) ((C1 ('MetaCons "Unaffected" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Slight" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Moderate" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Severe" 'PrefixI 'False) (U1 :: Type -> Type))) |
data OutlierVariance Source #
Analysis of the extent to which outliers in a sample affect its standard deviation (and to some extent, its mean).
Constructors
OutlierVariance | |
Fields
|
Instances
FromJSON OutlierVariance Source # | |||||
Defined in Criterion.Types Methods parseJSON :: Value -> Parser OutlierVariance parseJSONList :: Value -> Parser [OutlierVariance] omittedField :: Maybe OutlierVariance | |||||
ToJSON OutlierVariance Source # | |||||
Defined in Criterion.Types Methods toJSON :: OutlierVariance -> Value toEncoding :: OutlierVariance -> Encoding toJSONList :: [OutlierVariance] -> Value toEncodingList :: [OutlierVariance] -> Encoding omitField :: OutlierVariance -> Bool | |||||
Data OutlierVariance Source # | |||||
Defined in Criterion.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> OutlierVariance -> c OutlierVariance gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c OutlierVariance toConstr :: OutlierVariance -> Constr dataTypeOf :: OutlierVariance -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c OutlierVariance) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c OutlierVariance) gmapT :: (forall b. Data b => b -> b) -> OutlierVariance -> OutlierVariance gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> OutlierVariance -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> OutlierVariance -> r gmapQ :: (forall d. Data d => d -> u) -> OutlierVariance -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> OutlierVariance -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> OutlierVariance -> m OutlierVariance gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> OutlierVariance -> m OutlierVariance gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> OutlierVariance -> m OutlierVariance | |||||
Generic OutlierVariance Source # | |||||
Defined in Criterion.Types Associated Types
Methods from :: OutlierVariance -> Rep OutlierVariance x to :: Rep OutlierVariance x -> OutlierVariance | |||||
Read OutlierVariance Source # | |||||
Defined in Criterion.Types Methods readsPrec :: Int -> ReadS OutlierVariance readList :: ReadS [OutlierVariance] readPrec :: ReadPrec OutlierVariance readListPrec :: ReadPrec [OutlierVariance] | |||||
Show OutlierVariance Source # | |||||
Defined in Criterion.Types Methods showsPrec :: Int -> OutlierVariance -> ShowS show :: OutlierVariance -> String showList :: [OutlierVariance] -> ShowS | |||||
Binary OutlierVariance Source # | |||||
Defined in Criterion.Types | |||||
NFData OutlierVariance Source # | |||||
Defined in Criterion.Types Methods rnf :: OutlierVariance -> () | |||||
Eq OutlierVariance Source # | |||||
Defined in Criterion.Types Methods (==) :: OutlierVariance -> OutlierVariance -> Bool (/=) :: OutlierVariance -> OutlierVariance -> Bool | |||||
type Rep OutlierVariance Source # | |||||
Defined in Criterion.Types type Rep OutlierVariance = D1 ('MetaData "OutlierVariance" "Criterion.Types" "criterion-1.6.3.0-9Q9DiCBFrUVt1MK2yVv8x" 'False) (C1 ('MetaCons "OutlierVariance" 'PrefixI 'True) (S1 ('MetaSel ('Just "ovEffect") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 OutlierEffect) :*: (S1 ('MetaSel ('Just "ovDesc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: S1 ('MetaSel ('Just "ovFraction") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Double)))) |
data Regression Source #
Results of a linear regression.
Constructors
Regression | |
Fields
|
Instances
FromJSON Regression Source # | |||||
Defined in Criterion.Types Methods parseJSON :: Value -> Parser Regression parseJSONList :: Value -> Parser [Regression] omittedField :: Maybe Regression | |||||
ToJSON Regression Source # | |||||
Defined in Criterion.Types Methods toJSON :: Regression -> Value toEncoding :: Regression -> Encoding toJSONList :: [Regression] -> Value toEncodingList :: [Regression] -> Encoding omitField :: Regression -> Bool | |||||
Generic Regression Source # | |||||
Defined in Criterion.Types Associated Types
| |||||
Read Regression Source # | |||||
Defined in Criterion.Types Methods readsPrec :: Int -> ReadS Regression readList :: ReadS [Regression] readPrec :: ReadPrec Regression readListPrec :: ReadPrec [Regression] | |||||
Show Regression Source # | |||||
Defined in Criterion.Types Methods showsPrec :: Int -> Regression -> ShowS show :: Regression -> String showList :: [Regression] -> ShowS | |||||
Binary Regression Source # | |||||
Defined in Criterion.Types | |||||
NFData Regression Source # | |||||
Defined in Criterion.Types Methods rnf :: Regression -> () | |||||
Eq Regression Source # | |||||
Defined in Criterion.Types | |||||
type Rep Regression Source # | |||||
Defined in Criterion.Types type Rep Regression = D1 ('MetaData "Regression" "Criterion.Types" "criterion-1.6.3.0-9Q9DiCBFrUVt1MK2yVv8x" 'False) (C1 ('MetaCons "Regression" 'PrefixI 'True) (S1 ('MetaSel ('Just "regResponder") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: (S1 ('MetaSel ('Just "regCoeffs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map String (Estimate ConfInt Double))) :*: S1 ('MetaSel ('Just "regRSquare") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Estimate ConfInt Double))))) |
Data for a KDE chart of performance.
Instances
FromJSON KDE Source # | |||||
Defined in Criterion.Types Methods parseJSON :: Value -> Parser KDE parseJSONList :: Value -> Parser [KDE] omittedField :: Maybe KDE | |||||
ToJSON KDE Source # | |||||
Defined in Criterion.Types | |||||
Data KDE Source # | |||||
Defined in Criterion.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> KDE -> c KDE gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c KDE dataTypeOf :: KDE -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c KDE) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c KDE) gmapT :: (forall b. Data b => b -> b) -> KDE -> KDE gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> KDE -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> KDE -> r gmapQ :: (forall d. Data d => d -> u) -> KDE -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> KDE -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> KDE -> m KDE gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> KDE -> m KDE gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> KDE -> m KDE | |||||
Generic KDE Source # | |||||
Defined in Criterion.Types Associated Types
| |||||
Read KDE Source # | |||||
Defined in Criterion.Types | |||||
Show KDE Source # | |||||
Binary KDE Source # | |||||
NFData KDE Source # | |||||
Defined in Criterion.Types | |||||
Eq KDE Source # | |||||
type Rep KDE Source # | |||||
Defined in Criterion.Types type Rep KDE = D1 ('MetaData "KDE" "Criterion.Types" "criterion-1.6.3.0-9Q9DiCBFrUVt1MK2yVv8x" 'False) (C1 ('MetaCons "KDE" 'PrefixI 'True) (S1 ('MetaSel ('Just "kdeType") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: (S1 ('MetaSel ('Just "kdeValues") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Vector Double)) :*: S1 ('MetaSel ('Just "kdePDF") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Vector Double))))) |
Report of a sample analysis.
Constructors
Report | |
Fields
|
Instances
FromJSON Report Source # | |||||
Defined in Criterion.Types Methods parseJSON :: Value -> Parser Report parseJSONList :: Value -> Parser [Report] omittedField :: Maybe Report | |||||
ToJSON Report Source # | |||||
Defined in Criterion.Types Methods toEncoding :: Report -> Encoding toJSONList :: [Report] -> Value toEncodingList :: [Report] -> Encoding | |||||
Generic Report Source # | |||||
Defined in Criterion.Types Associated Types
| |||||
Read Report Source # | |||||
Defined in Criterion.Types | |||||
Show Report Source # | |||||
Binary Report Source # | |||||
NFData Report Source # | |||||
Defined in Criterion.Types | |||||
Eq Report Source # | |||||
type Rep Report Source # | |||||
Defined in Criterion.Types type Rep Report = D1 ('MetaData "Report" "Criterion.Types" "criterion-1.6.3.0-9Q9DiCBFrUVt1MK2yVv8x" 'False) (C1 ('MetaCons "Report" 'PrefixI 'True) ((S1 ('MetaSel ('Just "reportNumber") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int) :*: (S1 ('MetaSel ('Just "reportName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: S1 ('MetaSel ('Just "reportKeys") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [String]))) :*: ((S1 ('MetaSel ('Just "reportMeasured") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Vector Measured)) :*: S1 ('MetaSel ('Just "reportAnalysis") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SampleAnalysis)) :*: (S1 ('MetaSel ('Just "reportOutliers") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Outliers) :*: S1 ('MetaSel ('Just "reportKDEs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [KDE]))))) |
data SampleAnalysis Source #
Result of a bootstrap analysis of a non-parametric sample.
Constructors
SampleAnalysis | |
Fields
|
Instances
FromJSON SampleAnalysis Source # | |||||
Defined in Criterion.Types Methods parseJSON :: Value -> Parser SampleAnalysis parseJSONList :: Value -> Parser [SampleAnalysis] omittedField :: Maybe SampleAnalysis | |||||
ToJSON SampleAnalysis Source # | |||||
Defined in Criterion.Types Methods toJSON :: SampleAnalysis -> Value toEncoding :: SampleAnalysis -> Encoding toJSONList :: [SampleAnalysis] -> Value toEncodingList :: [SampleAnalysis] -> Encoding omitField :: SampleAnalysis -> Bool | |||||
Generic SampleAnalysis Source # | |||||
Defined in Criterion.Types Associated Types
| |||||
Read SampleAnalysis Source # | |||||
Defined in Criterion.Types Methods readsPrec :: Int -> ReadS SampleAnalysis readList :: ReadS [SampleAnalysis] readPrec :: ReadPrec SampleAnalysis readListPrec :: ReadPrec [SampleAnalysis] | |||||
Show SampleAnalysis Source # | |||||
Defined in Criterion.Types Methods showsPrec :: Int -> SampleAnalysis -> ShowS show :: SampleAnalysis -> String showList :: [SampleAnalysis] -> ShowS | |||||
Binary SampleAnalysis Source # | |||||
Defined in Criterion.Types | |||||
NFData SampleAnalysis Source # | |||||
Defined in Criterion.Types Methods rnf :: SampleAnalysis -> () | |||||
Eq SampleAnalysis Source # | |||||
Defined in Criterion.Types Methods (==) :: SampleAnalysis -> SampleAnalysis -> Bool (/=) :: SampleAnalysis -> SampleAnalysis -> Bool | |||||
type Rep SampleAnalysis Source # | |||||
Defined in Criterion.Types type Rep SampleAnalysis = D1 ('MetaData "SampleAnalysis" "Criterion.Types" "criterion-1.6.3.0-9Q9DiCBFrUVt1MK2yVv8x" 'False) (C1 ('MetaCons "SampleAnalysis" 'PrefixI 'True) ((S1 ('MetaSel ('Just "anRegress") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Regression]) :*: S1 ('MetaSel ('Just "anMean") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Estimate ConfInt Double))) :*: (S1 ('MetaSel ('Just "anStdDev") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Estimate ConfInt Double)) :*: S1 ('MetaSel ('Just "anOutlierVar") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 OutlierVariance)))) |
data DataRecord Source #
Constructors
Measurement Int String (Vector Measured) | |
Analysed Report |
Instances
FromJSON DataRecord Source # | |||||
Defined in Criterion.Types Methods parseJSON :: Value -> Parser DataRecord parseJSONList :: Value -> Parser [DataRecord] omittedField :: Maybe DataRecord | |||||
ToJSON DataRecord Source # | |||||
Defined in Criterion.Types Methods toJSON :: DataRecord -> Value toEncoding :: DataRecord -> Encoding toJSONList :: [DataRecord] -> Value toEncodingList :: [DataRecord] -> Encoding omitField :: DataRecord -> Bool | |||||
Generic DataRecord Source # | |||||
Defined in Criterion.Types Associated Types
| |||||
Read DataRecord Source # | |||||
Defined in Criterion.Types Methods readsPrec :: Int -> ReadS DataRecord readList :: ReadS [DataRecord] readPrec :: ReadPrec DataRecord readListPrec :: ReadPrec [DataRecord] | |||||
Show DataRecord Source # | |||||
Defined in Criterion.Types Methods showsPrec :: Int -> DataRecord -> ShowS show :: DataRecord -> String showList :: [DataRecord] -> ShowS | |||||
Binary DataRecord Source # | |||||
Defined in Criterion.Types | |||||
NFData DataRecord Source # | |||||
Defined in Criterion.Types Methods rnf :: DataRecord -> () | |||||
Eq DataRecord Source # | |||||
Defined in Criterion.Types | |||||
type Rep DataRecord Source # | |||||
Defined in Criterion.Types type Rep DataRecord = D1 ('MetaData "DataRecord" "Criterion.Types" "criterion-1.6.3.0-9Q9DiCBFrUVt1MK2yVv8x" 'False) (C1 ('MetaCons "Measurement" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Vector Measured)))) :+: C1 ('MetaCons "Analysed" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Report))) |