Runtime efficient event scheduling in multi-threaded network simulation

  • Authors:
  • Georg Kunz;Mirko Stoffers;James Gross;Klaus Wehrle

  • Affiliations:
  • Communication and Distributed Systems, and RWTH Aachen University;Communication and Distributed Systems, and RWTH Aachen University;RWTH Aachen University;Communication and Distributed Systems, and RWTH Aachen University

  • Venue:
  • Proceedings of the 4th International ICST Conference on Simulation Tools and Techniques
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Developing an efficient parallel simulation framework for multiprocessor systems is hard. A primary concern is the considerable amount of parallelization overhead imposed on the event handling routines of the simulator. Besides complex event scheduling algorithms, the main sources of overhead are thread synchronization and locking of shared data. Thus, compared to sequential simulation, the overhead of parallelization may easily outweigh its performance benefits. We introduce two efficient event handling schemes based on our parallel-simulation extension Horizon for OMNeT++. First, we present a push-based event handling scheme to minimize the overhead of thread synchronization and locking. Second, we complement this scheme with a novel event scheduling algorithm that significantly reduces the overhead of parallel event scheduling. Lastly, we prove the correctness of the scheduling algorithm. Our evaluation reveals a total reduction of the event handling overhead of up to 16x.