SST 12.1.0
Structural Simulation Toolkit
SST::Statistics::HistogramStatistic< BinDataType > Class Template Reference

Holder of data grouped into pre-determined width bins. More...

#include <stathistogram.h>

Inheritance diagram for SST::Statistics::HistogramStatistic< BinDataType >:
SST::Statistics::Statistic< BinDataType > SST::Statistics::StatisticBase SST::Statistics::StatisticCollector< T, F >

Public Member Functions

 SST_ELI_DECLARE_STATISTIC_TEMPLATE (HistogramStatistic, "sst", "HistogramStatistic", SST_ELI_ELEMENT_VERSION(1, 0, 0), "Track distribution of statistic across bins", "SST::Statistic<T>") HistogramStatistic(BaseComponent *comp
 
allowedKeySet insert ("minvalue")
 
allowedKeySet insert ("binwidth")
 
allowedKeySet insert ("numbins")
 
allowedKeySet insert ("dumpbinsonoutput")
 
allowedKeySet insert ("includeoutofbounds")
 
statParams pushAllowedKeys (allowedKeySet)
 
this setCollectionCount (0)
 
this setStatisticTypeName ("Histogram")
 
- Public Member Functions inherited from SST::Statistics::Statistic< BinDataType >
 SST_ELI_DECLARE_INFO (ELI::ProvidesInterface, ELI::ProvidesParams) using Datum
 
void addData (InArgs &&... args)
 Add data to the Statistic This will call the addData_impl() routine in the derived Statistic.
 
void addDataNTimes (uint64_t N, InArgs &&... args)
 
- Public Member Functions inherited from SST::Statistics::StatisticBase
void enable ()
 Enable Statistic for collections.
 
void disable ()
 Disable Statistic for collections.
 
virtual void clearStatisticData ()
 Inform the Statistic to clear its data. More...
 
virtual void resetCollectionCount ()
 Set the current collection count to 0.
 
virtual void incrementCollectionCount (uint64_t increment)
 Increment current collection count.
 
virtual void setCollectionCount (uint64_t newCount)
 Set the current collection count to a defined value.
 
virtual void setCollectionCountLimit (uint64_t newLimit)
 Set the collection count limit to a defined value.
 
void setFlagResetCountOnOutput (bool flag)
 Set the Reset Count On Output flag. More...
 
void setFlagClearDataOnOutput (bool flag)
 Set the Clear Data On Output flag. More...
 
void setFlagOutputAtEndOfSim (bool flag)
 Set the Output At End Of Sim flag. More...
 
const std::string & getCompName () const
 Return the Component Name.
 
const std::string & getStatName () const
 Return the Statistic Name.
 
const std::string & getStatSubId () const
 Return the Statistic SubId.
 
const std::string & getFullStatName () const
 Return the full Statistic name of Component.StatName.SubId.
 
const std::string & getStatTypeName () const
 Return the Statistic type name.
 
const StatisticFieldInfo::fieldType_t & getStatDataType () const
 Return the Statistic data type.
 
const char * getStatDataTypeShortName () const
 Return the Statistic data type.
 
const char * getStatDataTypeFullName () const
 Return the Statistic data type.
 
BaseComponentgetComponent () const
 Return a pointer to the parent Component.
 
bool isEnabled () const
 Return the enable status of the Statistic.
 
bool isOutputEnabled () const
 Return the enable status of the Statistic's ability to output data.
 
uint64_t getCollectionCountLimit () const
 Return the collection count limit.
 
uint64_t getCollectionCount () const
 Return the current collection count.
 
bool getFlagResetCountOnOutput () const
 Return the ResetCountOnOutput flag value.
 
bool getFlagClearDataOnOutput () const
 Return the ClearDataOnOutput flag value.
 
bool getFlagOutputAtEndOfSim () const
 Return the OutputAtEndOfSim flag value.
 
StatMode_t getRegisteredCollectionMode () const
 Return the collection mode that is registered.
 
void delayOutput (const char *delayTime)
 Delay the statistic from outputting data for a specified delay time. More...
 
void delayCollection (const char *delayTime)
 Delay the statistic from collecting data for a specified delay time. More...
 
virtual bool isReady () const
 Indicate that the Statistic is Ready to be used.
 
virtual bool isNullStatistic () const
 Indicate if the Statistic is a NullStatistic.
 

Data Fields

const std::string & statName
 
const std::string const std::string & statSubId
 
const std::string const std::string ParamsstatParams: Statistic<BinDataType>(comp
 
const std::string const std::string Params statName
 
const std::string const std::string Params statSubId
 
const std::string const std::string Params statParams
 
 m_minValue = statParams.find<BinDataType>("minvalue", 0)
 
 m_binWidth = statParams.find<NumBinsType>("binwidth", 5000)
 
 m_numBins = statParams.find<NumBinsType>("numbins", 100)
 
 m_dumpBinsOnOutput = statParams.find<bool>("dumpbinsonoutput", true)
 
 m_includeOutOfBounds = statParams.find<bool>("includeoutofbounds", true)
 
 m_totalSummed = 0
 
 m_totalSummedSqr = 0
 
 m_OOBMinCount = 0
 
 m_OOBMaxCount = 0
 
 m_itemsBinnedCount = 0
 

Protected Member Functions

void addData_impl_Ntimes (uint64_t N, BinDataType value) override
 Adds a new value to the histogram. More...
 
void addData_impl (BinDataType value) override
 
- Protected Member Functions inherited from SST::Statistics::Statistic< BinDataType >
 Statistic (BaseComponent *comp, const std::string &statName, const std::string &statSubId, Params &statParams)
 Construct a Statistic. More...
 
- Protected Member Functions inherited from SST::Statistics::StatisticBase
 StatisticBase (BaseComponent *comp, const std::string &statName, const std::string &statSubId, Params &statParams)
 Construct a StatisticBase. More...
 
ParamsgetParams ()
 Return the Statistic Parameters.
 
void setStatisticDataType (const StatisticFieldInfo::fieldType_t dataType)
 Set the Statistic Data Type.
 
void setStatisticTypeName (const char *typeName)
 Set an optional Statistic Type Name.
 

Additional Inherited Members

- Public Types inherited from SST::Statistics::StatisticBase
enum  StatMode_t { STAT_MODE_UNDEFINED , STAT_MODE_COUNT , STAT_MODE_PERIODIC , STAT_MODE_DUMP_AT_END }
 Statistic collection mode.
 
- Static Public Member Functions inherited from SST::Statistics::Statistic< BinDataType >
static fieldType_t fieldId ()
 
- Static Public Member Functions inherited from SST::Statistics::StatisticBase
static const std::vector< ElementInfoParam > & ELI_getParams ()
 

Detailed Description

template<class BinDataType>
class SST::Statistics::HistogramStatistic< BinDataType >

Holder of data grouped into pre-determined width bins.

Template Parameters
BinDataTypeis the type of the data held in each bin (i.e. what data type described the width of the bin)

Member Function Documentation

◆ addData_impl_Ntimes()

template<class BinDataType >
void SST::Statistics::HistogramStatistic< BinDataType >::addData_impl_Ntimes ( uint64_t  N,
BinDataType  value 
)
inlineoverrideprotected

Adds a new value to the histogram.

The correct bin is identified and then incremented. If no bin can be found to hold the value then a new bin is created.

Field Documentation

◆ statParams

template<class BinDataType >
const std::string const std::string Params SST::Statistics::HistogramStatistic< BinDataType >::statParams
Initial value:
{
Params::KeySet_t allowedKeySet
std::set< key_type, KeyCompare > KeySet_t
Definition: params.h:233

The documentation for this class was generated from the following file: