The Timer Class is used to keep track of run times in the CÆSAR Code Package. A Timer keeps track of both CPU and Wall Clock times. The time between starting and stopping a Timer is referred to as a split time. A Timer keeps statistics for split and total times, and for each processor in a parallel run.
Timer public procedures:
Fundamental procedures | |||
Initialize | Initializes a Timer object. | ||
Finalize | Finalizes a Timer object. | ||
Valid_State | Returns false iff a Timer object is in an invalid state. | ||
Operations | |||
Arithmetic_Mean | Returns the arithmetic mean of the Timer object. | ||
Average | Returns the arithmetic mean of the Timer object. | ||
Count | Returns the number of splits in the Timer object. | ||
Geometric_Mean | Returns the geometric mean of the Timer object. | ||
Get_CPU_Time | Returns CPU time in seconds. | ||
Get_Wall_Clock_Time | Returns Wall Clock time in seconds. | ||
Harmonic_Mean | Returns the harmonic mean of the Timer object. | ||
Initialized | Returns true iff a Timer object has been initialized. | ||
Maximum | Returns the maximum value of the Timer object. | ||
Mean | Returns the arithmetic mean of the Timer object. | ||
Minimum | Returns the minimum value of the Timer object. | ||
Julian_Day | Returns the Julian Day number for a given date. | ||
Name | Returns the name of the Timer object. | ||
Output | Writes out the Timer object. | ||
Reset | Resets all the registers in a Timer object, returning it to a freshly initialized state. | ||
Standard_Deviation | Returns the standard deviation of the Timer object. | ||
Start | Instructs a Timer object to begin timing. | ||
Stop | Instructs a Timer object to discontinue timing. | ||
Sum | Returns the sum or total of the Timer object. | ||
Total | Returns the sum or total of the Timer object. | ||
Totally_Positive | Returns true if all the times in the Timer object are positive. |
Timer public defined types:
Timer type | |||
CPU_Time | Time object to track. | ||
Initialized | Initialization status. | ||
Name | The name for this Timer object. | ||
Running | Logical for Timer state. | ||
Wall_Clock_Time | Time object to track. | ||
Time type | |||
Start | Initial time value. | ||
Statistics | Statistics for the time splits. |
The Timer Class code listing contains additional documentation. The Timer Class also contains a Unit Test Program.