12 #ifndef SST_CORE_CORETEST_STATISTICSCOMPONENT_H 13 #define SST_CORE_CORETEST_STATISTICSCOMPONENT_H 15 #include "sst/core/component.h" 16 #include "sst/core/rng/rng.h" 30 SST_ELI_REGISTER_COMPONENT(
33 "StatisticsComponent.int",
34 SST_ELI_ELEMENT_VERSION(1,0,0),
35 "Statistics test component with ints",
36 COMPONENT_CATEGORY_UNCATEGORIZED
39 SST_ELI_DOCUMENT_PARAMS(
40 {
"seed_w",
"The seed to use for the random number generator",
"7" },
41 {
"seed_z",
"The seed to use for the random number generator",
"5" },
42 {
"seed",
"The seed to use for the random number generator.",
"11" },
43 {
"rng",
"The random number generator to use (Marsaglia or Mersenne), default is Mersenne",
"Mersenne"},
44 {
"count",
"The number of random numbers to generate, default is 1000",
"1000" },
45 {
"dynamic_reg",
"The cycle at which to dynamically register a statistic. 0 indicates none",
"0"}
48 SST_ELI_DOCUMENT_STATISTICS(
49 {
"stat1_U32",
"Test Statistic 1 - Collecting U32 Data",
"units", 1},
50 {
"stat2_U64",
"Test Statistic 2 - Collecting U64 Data",
"units", 2},
51 {
"stat3_I32",
"Test Statistic 3 - Collecting I32 Data",
"units", 3},
52 {
"stat4_I64",
"Test Statistic 4 - Collecting I64 Data",
"units", 4},
53 {
"stat5_dyn",
"Test Statistic 5 - Statistic registered during run loop",
"units", 1}
57 SST_ELI_DOCUMENT_PORTS(
58 {
"left",
"left port", {
""} },
59 {
"right",
"right port", {
""} },
63 SST_ELI_DOCUMENT_SUBCOMPONENT_SLOTS(
66 SST_ELI_IS_CHECKPOINTABLE()
80 virtual bool Clock1Tick(SST::Cycle_t);
104 SST_ELI_REGISTER_COMPONENT(
107 "StatisticsComponent.float",
108 SST_ELI_ELEMENT_VERSION(1,0,0),
109 "Statistics test component with floats",
110 COMPONENT_CATEGORY_UNCATEGORIZED
113 SST_ELI_DOCUMENT_PARAMS(
114 {
"seed_w",
"The seed to use for the random number generator",
"7" },
115 {
"seed_z",
"The seed to use for the random number generator",
"5" },
116 {
"seed",
"The seed to use for the random number generator.",
"11" },
117 {
"rng",
"The random number generator to use (Marsaglia or Mersenne), default is Mersenne",
"Mersenne"},
118 {
"count",
"The number of random numbers to generate, default is 1000",
"1000" }
121 SST_ELI_DOCUMENT_STATISTICS(
122 {
"stat1_F32",
"Test Statistic 1 - Collecting F32 Data",
"units", 1},
123 {
"stat2_F64",
"Test Statistic 2 - Collecting F64 Data",
"units", 2},
124 {
"stat3_F64",
"Test Statistic 2 - Collecting F64 Data",
"units", 9},
128 SST_ELI_DOCUMENT_PORTS(
129 {
"left",
"left port", {
""} },
130 {
"right",
"right port", {
""} },
134 SST_ELI_DOCUMENT_SUBCOMPONENT_SLOTS(
137 SST_ELI_IS_CHECKPOINTABLE()
151 virtual bool Clock1Tick(SST::Cycle_t);
154 std::string rng_type;
170 #endif // SST_CORE_CORETEST_STATISTICSCOMPONENT_H Output object provides consistent method for outputting data to stdout, stderr and/or sst debug file...
Definition: output.h:57
Implements the base class for random number generators for the SST core.
Definition: rng.h:29
Definition: constant.h:18
This class is basically a wrapper for objects to declare the order in which their members should be s...
Definition: serializer.h:42
void setup() override
Called after all components have been constructed and initialization has completed, but before simulation time has begun.
Definition: coreTest_StatisticsComponent.h:70
Main component object for the simulation.
Definition: component.h:30
void finish() override
Called after complete phase, but before objects are destroyed.
Definition: coreTest_StatisticsComponent.h:71
void finish() override
Called after complete phase, but before objects are destroyed.
Definition: coreTest_StatisticsComponent.h:142
void setup() override
Called after all components have been constructed and initialization has completed, but before simulation time has begun.
Definition: coreTest_StatisticsComponent.h:141
Definition: coreTest_StatisticsComponent.h:24
Parameter store.
Definition: params.h:63
Definition: coreTest_StatisticsComponent.h:100
Definition: coreTest_StatisticsComponent.h:26
Definition: elementinfo.h:44
Link between two components.
Definition: link.h:56