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.


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.


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


This feature was initially proposed in Pull Request #79. It was eventually merged into the master branch in commit fd476a.