The Community for Technology Leaders
2012 ACM/IEEE/SCS 26th Workshop on Principles of Advanced and Distributed Simulation (1999)
Atlanta, Georgia
May 1, 1999 to May 4, 1999
ISSN: 1087-4097
ISBN: 0-7695-0155-9
pp: 20
J. Cleary , University of Waikato
B. Unger , University of Calgary
R. Simmonds , University of Calgary
Z. Xiao , University of Calgary
This paper introduces the Critical Channel Traversing (CCT) algorithm, a new scheduling algorithm for both sequential and parallel discrete event simulation. CCT is a general conservative algorithm that is aimed at the simulation of low-granularity network models on shared-memory multi-processor computers.An implementation of the CCT algorithm within a kernel called TasKit has demonstrated excellent performance for large ATM network simulations when compared to previous sequential, optimistic and conservative kernels. TasKit has achieved two to three times speedup on a single processor with respect to a splay tree central-event-list based sequential kernel. On a 16 processor (R8000) Silicon Graphics PowerChallenge, TasKit has achieved an event-rate of 1.2 million events per second and a speedup of 26 relative to the sequential kernel for a large ATM network model.Performance is achieved through a multi-level scheduling scheme that supports the scheduling of large grains of computation even with low-granularity events. Performance is also enhanced by supporting good cache behavior and automatic load balancing.The paper describes the algorithm and its motivation, proves its correctness and briefly presents performance results for TasKit.
ATM network modeling, parallel simulation, conservative PDES, optimistic PDES, Chandy-Misra-Bryant algorithm, time parallelism, Critical Channel Traversing algorithm.
J. Cleary, B. Unger, R. Simmonds, Z. Xiao, "Scheduling Critical Channels in Conservative Parallel Discrete Event Simulation", 2012 ACM/IEEE/SCS 26th Workshop on Principles of Advanced and Distributed Simulation, vol. 00, no. , pp. 20, 1999, doi:10.1109/PADS.1999.766157
539 ms
(Ver 3.3 (11022016))