Lock-free scheduling of logical processes in parallel simulation

  • Authors:
  • Jason Liu;David M. Nicol;King Tan

  • Affiliations:
  • Department of Computer Science, Dartmouth College, Hanover, New Hampshire;Department of Computer Science, Dartmouth College, Hanover, New Hampshire;Department of Computer Science, Dartmouth College, Hanover, New Hampshire

  • Venue:
  • Proceedings of the fifteenth workshop on Parallel and distributed simulation
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

With fixed lookahead information in a simulation model, the overhead of asynchronous conservative parallel simulation lies in the mechanism used for propagating time updates in order for logical processes to safely advance their local simulation clocks. Studies have shown that a good scheduling algorithm should preferentially schedule processes containing events on the critical path. This paper introduces a lock-free algorithm for scheduling logical processes in conservative parallel discrete-event simulation on shred-memory multiprocessor machines. The algorithm uses fetch & add operations that help avoid inefficiencies associated with using locks. The lock-free algorithm is robust. Experiments show that, compared with the scheduling algorithm using locks, the lock-free algorithm exhibits better performance when the number of logical processes assigned to each processor is small or when the workload becomes significant. In models with large number of logical processes, our algorithm shows only modest increase in execution time due to the overhead in the algorithm for extra bookkeeping.