| 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-37u6TwoM4MiLFctWn3r0Qo" '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-37u6TwoM4MiLFctWn3r0Qo" '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-91caNzWsYfj3aYOBtIMkjY" '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-37u6TwoM4MiLFctWn3r0Qo" '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-37u6TwoM4MiLFctWn3r0Qo" '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-37u6TwoM4MiLFctWn3r0Qo" '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-37u6TwoM4MiLFctWn3r0Qo" '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-37u6TwoM4MiLFctWn3r0Qo" '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-37u6TwoM4MiLFctWn3r0Qo" '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-37u6TwoM4MiLFctWn3r0Qo" '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-37u6TwoM4MiLFctWn3r0Qo" '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))) | |||||