|
GRVY-0.39.0
|
This section presents the C++ class for measuring runtime performance of specific code sections to aid in overall performance/statistical analysis, and to maintain historical performance records as application codes evolve or across alternate compute platforms. Individual code timers are defined based on BeginTimer/EndTimer demarcation around the desired code snippet to measure along with a unique user-provided id string. Note that individual timers can be nested and the library will report exclusive timing of the innermost timers. Various options are provided to interrogate timer measurements, statistics, and relative timer comparisons. A convenient use of these routines is to define timers around various important work constructs within your application and use the Summarize() function to obtain a concise summary of the runtime performance, variability, and relative wallclock comparisions. Example output using this approach is shown below:
Namespace: All libGRVY C++ classes are contained with the GRVY namespace.
Class Name: GRVY::GRVY_Timer_Class
Code Example: A specific C++ example using the performance timing routines is available in cpp-timer.cpp.