From GridLAB-D Wiki
Jump to: navigation, search

GridLAB-D has a performance profiler built into the core that allows users to generate an analysis of the simulation performance. Additional measurements on class and module performance are collected to perform module/class performance analysis. The performance analysis is based on the quantitative measurements collected while the simulation is running. These measurements are then used to estimate the overall performance metrics for both the core and the modules.

Core profiles

The key measurements of the core performance analysis shown in Table 1 and the performance metrics are shown in Table 2.

Table 1 - Core performance measurements
The total number of objects in the model.
The maximum number of concurrent threads used by the simulation.
The total elapsed wall-clock time of the simulation.
The total wall-clock time spent in object synchronization. This the cumulative sum of the time spent in each objects' synchronization functions
The total elapsed simulation time of the model. This is the simulation stop time minus the simulation start time.
The total number of sync passes completed. The sync count is incremented whenever an object synchronization is requested.
The total number of timesteps completed. The step count is incremented each time the clock advances.
The total number of locks requested. The lock count is incremented each time a lock is requested.
The total number of lock spins completed. The lock spin is incremented each time a lock is requested but denied.
Table 2 - Core performance metrics
Total objects
Parallelism
Total time
  Core time
  Model time
Simulation time
Simulation speed
Syncs completed
Time steps completed
Convergence efficiency
Memory lock contention
Average timestep
Simulation rate

Module/class profiles

The class profiles are much simpler than core profiles because they only present the amount of time spent overall in each class, the fraction of the total time spend in the class, and the time spend in the class per instance of the class.