Optimistic Realtime Scheduler
The realtime scheduler is a new optimistic scheduling option for ROSS, invoked through --synch=5
.
During this scheduler, GVT intervals are trigged based on the amount of time elapsed (rather than the number of event which have been processed).
For models that see minimal speedup during regular optimistic simulation, or models where there is a known load imbalance, the optimistic realtime scheduler may lead to increased performance.
Parameters
The realtime scheduler depends on two parameters:
- GVT-Interval:
This is the specified amount of time, measured in milliseconds, between GVT phases. NOTE: this is now an overloaded parameter. During regular optimistic simulation (or conservative simulation), the GVT-interval specifies the number of events to processed between GVT phases. - Clock Rate:
This is the clock rate of the underlying hardware. Knowing the actual clock rate of the hardware is necessary to calculate the amount of time which has elapsed.
Usage
Command Line Option | Global Variable | Meaning |
---|---|---|
--synch=5 |
g_tw_synchronization_protocol = OPTIMISTIC_REALTIME |
Simulation will be performed using the Optimistic Realtime Scheduler |
--gvt-interval=5 |
g_tw_gvt_interval = 5 |
Number of milliseconds between GVT phases |
--clock-rate=3600000000 |
g_tw_clock_rate=3600000000 |
Clock rate of underlying hardware |
History
This feature was initially proposed in Pull Request #79. It was eventually merged into the master branch in commit fd476a.