Timing

Timing statistics provide detailed performance metrics for the simulation, reporting how computational time is distributed across different algorithms and operations. These outputs include both instantaneous (per reporting interval) and cumulative values, allowing users to monitor performance in real time and evaluate overall efficiency across the full simulation.

Timing statistics track the relative cost of major solver components, such as fluid solution, particle tracking, scalar transport, thermal models, and communication, as well as efficiency metrics like million updates per second (MUPS).

Statistics Table

The index table below shows the statistics that can appear in the Exit Age output file. Within this table, each statistic corresponds to a column in the output table that evolves with the time column.

Statistics

Units

Details

When Appears

Time

s

simulation time

Boundary Conditions

%

current percent of time being spent on applying boundary conditions

Communication

%

current percent of time being spent on communication

Conduction

%

current percent of time being spent on conduction

Conduction Efficiency

MUPS

current million updates per second for conduction, good measure of efficiency assuming conduction algorithm dominates performance

Conduction Efficiency Per Process

MUPS

current million updates per second per process for conduction, good measure of efficiency assuming conduction algorithm dominates performance

Cumulative Boundary Conditions

%

percent of time spent on applying boundary conditions over whole simluation

Cumulative Communication

%

percent of time spent on communication over whole simluation

Cumulative Conduction

%

percent of time spent on conduction over whole simluation

Cumulative Conduction Efficiency

MUPS

million updates per second for conduction over whole simulation, good measure of efficiency assuming conduction algorithm dominates performance

Cumulative Conduction Efficiency Per Process

MUPS

million updates per second per process for conduction over whole simulation, good measure of efficiency assuming conduction algorithm dominates performance

Cumulative CPU Time

min

total amount of CPU time elapsed since simulation launched (equals cumulative wall time multiplied by number of processes

Cumulative Fluid Solver

%

percent of time spent on fluid solution over whole simluation

Cumulative Immersed Boundary

%

percent of time spent on immersed boundary algorithm for moving bodies over whole simluation

Cumulative Initialization

%

percent of time spent on initialization over whole simulation

Cumulative Lattice Efficiency

MUPS

million lattice updates per second over whole simulation, good measure of efficiency assuming lattice/cell-based algorithms dominate performance

Cumulative Lattice Efficiency Per Process

MUPS

million lattice updates per second per process over whole simulation, good measure of efficiency assuming lattice/cell-based algorithms dominate performance

Cumulative Link Output Files

min

total amount of time spent linking output files together into PVD files over whole simulation

Cumulative Mean Age

%

percent of time spent on mean age algorithm over whole simluation

Mean Age

Cumulative Output

%

percent of time spent on output over whole simluation

Cumulative Particle Efficiency

MUPS

million particle updates per second over whole simulation, good measure of efficiency assuming particle-based algorithms dominate performance

Cumulative Particle Efficiency Per Process

MUPS

million particle updates per second per process over whole simulation, good measure of efficiency assuming particle-based algorithms dominate performance

Cumulative Particles

%

percent of time spent on particles over whole simluation

Cumulative Scalar Transport

%

percent of time spent on scalar transport over whole simluation

Cumulative Statistics

%

percent of time spent on statistics over whole simluation

Cumulative Thermal

%

percent of time spent on thermal model over whole simluation

Cumulative Volume Of Fluid

%

percent of time spent on volume of fluid algorithm over whole simluation

Cumulative Wall Time

min

total amount of wall time elapsed since simulation launched

Fluid Solver

%

current percent of time being spent on fluid solution

Immersed Boundary

%

current percent of time being spent on immersed boundary algorithm for moving bodies

Iteration

Dimensionless

number of timesteps taken (on coarsest mesh level if refinement is present)

Lattice Efficiency

MUPS

current million lattice updates per second, good measure of efficiency assuming lattice/cell-based algorithms dominate performance

Lattice Efficiency Per Process

MUPS

current million lattice updates per second per process, good measure of efficiency assuming lattice/cell-based algorithms dominate performance

Mean Age

%

current percent of time being spent on mean age algorithm

Mean Age

Output

%

current percent of time being spent on output

Particle Efficiency

MUPS

current million particle updates per second, good measure of efficiency assuming particle-based algorithms dominate performance

Particle Efficiency Per Process

MUPS

current million particle updates per second per process, good measure of efficiency assuming particle-based algorithms dominate performance

Particles

%

current percent of time being spent on particles

Scalar Transport

%

current percent of time being spent on scalar transport

Statistics

%

current percent of time being spent on statistics

Thermal

%

current percent of time being spent on thermal model

Volume Of Fluid

%

current percent of time being spent on volume of fluid algorithm

Usage and Interpretation

Timing statistics are used to diagnose performance, identify computational bottlenecks, and evaluate parallel efficiency.

The reported percentage-based metrics (e.g., Fluid Solver, Particles, Communication) represent the fraction of total computational time spent in each component. These are reported both as instantaneous values and cumulative values over the full simulation. Large percentages indicate dominant cost centers and are the primary indicators of where optimization efforts should be focused.

Efficiency metrics such as Lattice Efficiency, Particle Efficiency, and Conduction Efficiency are reported in million updates per second (MUPS),

\[\text{MUPS} = \frac{\text{number of updates}}{10^6 \cdot \text{time (s)}}\]

These provide a hardware- and problem-independent measure of algorithmic performance. Higher MUPS values indicate more efficient execution. Corresponding per process metrics normalize performance by the number of processes, making them useful for assessing parallel scaling behavior.

The cumulative timing metrics provide a full accounting of how time has been spent over the entire simulation. For example,

\[\text{Cumulative CPU Time} = (\text{Cumulative Wall Time}) \times (\text{number of processes})\]

This allows users to distinguish between total computational cost and elapsed wall-clock time, which is especially important for parallel runs.

Comparing categories such as Communication versus compute-heavy components (e.g., Fluid Solver, Particles) helps diagnose scaling limitations. A high communication fraction often indicates parallel inefficiencies, while high solver or particle fractions indicate compute-bound behavior.

The Cumulative Wall Time represents the total elapsed real (wall-clock) time since the simulation was launched. This is one of the most important performance metrics, as it reflects how long the simulation is actually taking to run in real time, independent of the number of processes. Plotting Cumulative Wall Time versus simulation time provides a direct measure of simulation speed relative to real time. The slope of this curve indicates how much wall-clock time is required to advance the simulation,

\[\text{Simulation Speed} \sim \frac{\Delta t_{\text{simulation}}}{\Delta t_{\text{wall}}}.\]

A steeper slope indicates slower performance (more wall time per unit simulation time), while a flatter slope indicates faster performance. This type of analysis is especially useful for estimating total runtime, comparing different simulation setups, and evaluating the impact of hardware or model changes on performance.

Because this metric reflects true elapsed time, it is also the most relevant quantity for planning, scheduling, and benchmarking simulations.

Efficiency metrics should be interpreted alongside time fractions. For example, a low MUPS combined with a high time percentage indicates a clear performance bottleneck, while high MUPS with low time fraction suggests efficient execution of a non-dominant component.