Computing Scalars

The Compute Scalars operation is specified by the following attributes:

AttributeDescription
groupa string expression that generates a group identifier for an input statistic
valuea numeric expression that produces the values of the new scalars
namethe name of the new scalars, may contain expressions within ${...}
modulethe module of the new scalars, may contain expressions within ${...}
averageReplicationsa boolean value, if true, then the computed scalars are averaged for each measurement, and add only the averages to the dataset
computeStddeva boolean value, if true, then the standard deviation of the computed scalars are also added to the dataset
computeMinMaxa boolean value, if true, then the minimum/maximum of computed scalars are also added to the dataset
computeConfInta boolean value, if true then the half length of the symmetric confidence interval is also added to the dataset
confIntLevela number between 0 and 1, the confidence level of the computed confidence interval

The generation of the scalars follows the following steps:

  1. Group input statistics by their run. The computation of scalars is performed in each run independently. You can not combine the statistics of different runs, other than computing the averages described in step 4.

  2. Within each run, group the input statistics further by their group identifier. The group identifier of a statistic is computed by evaluating the group expression. The following variables can be used in the expression to access the fields of the current statistic:

    • name: the name of the statistic

    • module: the module that generated the statistic

    • value: the value of the statistics if it is a scalar, otherwise NaN

    • run: the name of the run in which the statistics was generated

    • configname, datetime, experiment, measurement, and other attributes of the run

    The group identifier will be available in Step 3 as the group variable. The group expression is optional, by default each scalar belongs to the same group.

  3. Within each group, evaluate the value expression. The evaluation can produce multiple values. For each value generate a name and a module by evaluating the name and module expressions. The value, name, and module expressions can refer to the group variable, and to any variable that is defined in the group expression and is constant within a group. The name and module expressions can also refer to variables defined in the value expression.

  4. If the averageReplications field is false, then the computation produces the scalars whose modules and values were computed in Step 3. Otherwise the values that belongs to the same module and to the same measurement, and has the same name are collected, and their mean is computed. If requested, then standard deviation, minimum, maximum, and confidence interval of the mean is also be computed. The name of these additinal scalars will be scalar:stddev, scalar:min, scalar:max, scalar:confint, where scalar is the name of mean as specified in the name field of the computation.

    A new run identifier also generated to refer to the set of runs from which the average was computed. This run identifier has the form runs-xxxxx, where xxxxx is a hash computed from the identifiers of the members. The new run will have the attributes that has the same value in the individual runs.