The Sparta Modeling Framework
Loading...
Searching...
No Matches
sparta::statistics Namespace Reference

Namespace containing methods for computing and generating statistical information using instrumentation extracted from sparta structures such as Counters. More...

Namespaces

namespace  expression
 Namespace containing methods for parsing, building, and evaluating statistical expressions in sparta.
 

Classes

class  ArchiveController
 Base class used by the RootArchiveNode to have some control over its data source, whether it is a live simulation, or an offline archive (no simulation) More...
 
class  ArchiveDataSeries
 Wrapper around a leaf ArchiveNode's data. Owns a back pointer to the top RootArchiveNode in its tree, which it uses to synchronize the data source and data sink with every call to its data access APIs. More...
 
class  ArchiveDispatcher
 This class holds exactly one generic ArchiveSource, and any number of generic ArchiveSink's. More...
 
class  ArchiveNode
 When a simulation is configured to archive its statistics values, it will build a subset of its device tree to organize the statistics. The analogy is that a TreeNode is loosely the same as an ArchiveNode: More...
 
class  ArchiveSink
 Generic statistic sink base class for report archives. More...
 
class  ArchiveSource
 Generic statistic source base class for report archives. More...
 
class  ArchiveStream
 Generic statistic stream base class for sources and sinks in the report archive system. More...
 
class  BinaryIArchive
 Use a binary archive file as a source of statistics values. More...
 
class  BinaryOArchive
 Use a binary archive file as a destination for statistics values. More...
 
class  LiveSimulationArchiveController
 Controller used when SPARTA simulations are directly feeding data into a tempdir archive. More...
 
class  OfflineArchiveController
 Controller used when attaching to an archive outside of any live simulation. More...
 
class  ReportStatisticsAggregator
 This class is a source of statistics values used by SPARTA simulators. It takes a sparta::Report object and internally creates an archive tree that describes the report's statistics hierarchy. More...
 
class  ReportStatisticsArchive
 This class coordinates live SPARTA simulations (source) with binary output archives (sink). More...
 
class  ReportStatisticsHierTree
 Helper class used to build up a "report statistics hierarchy tree", where the template types are: More...
 
class  ReportStreamNode
 In the stream node hierarchy, this class is used wherever we encounter a sparta::Report node, which includes all subreports. This class can turn a Report node into a flattened vector of SI's, which in turn feed their data into our contiguous vector of double values, connected via SnapshotLogger's. More...
 
class  RootArchiveNode
 There is one of these root node objects at the top of each report's archive. The hierarchy looks like this: More...
 
class  SINodeHierarchy
 This class serializes a sparta::Report's entire SI tree (node names, parent nodes / child nodes / etc.) into the SINodeHierarchy table in the database object you provide. More...
 
class  SIValuesBuffer
 This class helps organize contiguous blocks of SI values. These values are buffered at each report update, and they are organized in the buffer so that individual SI's have their values right next to each other. To illustrate, say we had the following CSV file: More...
 
class  StatisticInstStreamNode
 In the stream node hierarchy, this class is used wherever we encounter a sparta::StatisticInstance leaf node. We make a data vector of size 1, just for our single SI, and connect them together via a SnapshotLogger. More...
 
class  StatisticsArchives
 This class owns and coordinates a group of named archives. More...
 
class  StatisticsHierRootNodes
 Utility class that holds onto statistics node hierarchies, accessible by a name that you choose. More...
 
class  StatisticSnapshot
 User-friendly wrapper around a double reference. This is like a std::reference_wrapper that connects one StatisticInstance with somebody else's double in another data structure. It lets SI's write their double data value directly into a contiguous std::vector sitting on top of the report archive system. This is done for improved performance and overall ease of use - a single std::vector<double> vs. individual StatisticInstance's scattered all over. More...
 
class  StatisticsStreams
 Wrapper around the StatisticsHierRootNodes<T> class. This class holds onto root StreamNode's that sit at the top of a report hierarchy. Say we have this hierarchy of two reports: More...
 
class  StreamController
 Stream controller interface. One of these objects will be shared between the simulation's run controller, and the root-level StreamNode's sitting at the top of each one of the simulation's report hierarchies. More...
 
class  StreamNode
 When a simulation is configured to stream its statistics values for asynchronous processing, it will build a subset of its device tree to organize the statistics. The resulting hierarchy is made up of report/subreport nodes, and StatisticInstance leaves. StreamNode's represent nodes in this hierarchy, and are designed so that you can stream data out of any node, regardless of where that node lives (could be the root, could be an SI leaf, could be anywhere in the middle). More...
 

Typedefs

typedef std::pair< std::string, std::unique_ptr< StatisticInstance > > stat_pair_t
 Type for storing each stat added.
 
typedef std::vector< stat_pair_tStatisticPairs
 Type for storing a list of stat_pair_t.
 

Functions

void refillWithNaNs (std::vector< double > &vec)
 Utility to set all elements of a vector to NaN.
 

Detailed Description

Namespace containing methods for computing and generating statistical information using instrumentation extracted from sparta structures such as Counters.

Typedef Documentation

◆ stat_pair_t

typedef std::pair<std::string, std::unique_ptr<StatisticInstance> > sparta::statistics::stat_pair_t

Type for storing each stat added.

Definition at line 32 of file Expression.hpp.

◆ StatisticPairs

Type for storing a list of stat_pair_t.

Definition at line 37 of file Expression.hpp.

Function Documentation

◆ refillWithNaNs()

void sparta::statistics::refillWithNaNs ( std::vector< double > &  vec)
inline

Utility to set all elements of a vector to NaN.

Definition at line 13 of file SIValuesBuffer.hpp.