A. Over, Dept. of Comput. Sci., Australian Nat. Univ., Canberra, ACT
B. Clarke, Dept. of Comput. Sci., Australian Nat. Univ., Canberra, ACT
P. Strazdins, Dept. of Comput. Sci., Australian Nat. Univ., Canberra, ACT
The design trend towards CMPs has made the simulation of multiprocessor systems a necessity and has also made multiprocessor systems widely available. While a serial multiprocessor simulation necessarily imposes a linear slowdown, running such a simulation in parallel may help mitigate this effect. In this paper we document our experiences with two different methods of parallelizing Sparc Sulima, a simulator of UltraSPARC IIICu-based multiprocessor systems. In the first approach, a simple interconnect model within the simulator is parallelized non-deterministically using careful locking. In the second, a detailed interconnect model is parallelized while preserving determinism using parallel discrete event simulation (PDES) techniques. While both approaches demonstrate a threefold speedup using 4 threads on workloads from the NAS parallel benchmarks, speedup proved constrained by load-balancing between simulated processors. A theoretical model is developed to help understand why observed speedup is less than ideal. An analysis of the related speed-accuracy tradeoff in the first approach with respect to the simulation time quantum is also given; the results show that, for both serial and parallel simulation, a quantum in the order of a few hundreds of cycles represents a `sweet-spot', but parallel simulation is significantly more accurate for a given quantum size. As with the speedup analysis, these effects are workload dependent
Index Terms:
speedup analysis, parallel simulation, Sparc Sulima, UltraSPARC IIICu-based multiprocessor systems, interconnect model, careful locking, parallel discrete event simulation, NAS parallel benchmarks, load-balancing, simulation time quantum, serial simulation
Citation:
A. Over, B. Clarke, P. Strazdins, "A Comparison of Two Approaches to Parallel Simulation of Multiprocessors," ispass, pp.12-22, 2007 IEEE International Symposium on Performance Analysis of Systems&Software, 2007