Parallel VHDL Simulation Engine
Abstract:
In this paper, we report a parallel simulation engine and its benchmark results on CEN3-Project "Parallel VHDL Performance Simulation". The goal of the project is to develop a parallel event driven simulator that will be able to simulate a model with up-to 100,000 concurrently interacting objects. Our target is to achieve a speed-up of up-to hundred times when implemented on a massively parallel system. We have developed a simulation framework that can be used to simulate not only VHDL models but also models in other application domains such as networks, force modeling, and traffic simulation. The simulation framework consists of the cockpit, the object modeling scheme, and the front end user interface. The cockpit, frequently called a simulation engine, is the main program module of the parallel simulator. It orchestrates modules, message handling, and event queue based on the simulation protocol it uses. The object modeling-scheme is developed using C++. Our modeling-scheme enables the modelers to develop simulation models independent from the simulation protocols. The end user builds the model of the system to be simulated by instantiating the components of the system, and providing their interconnection, and specifying the employed simulation protocols. We have benchmarked the performance of our simulator with various test suites on SP2 and Origin2000. The test suites have models consisting of more than 100,000 objects as their components. We have analyzed the communication patterns of parallel simulation and developed a mathematical model to predict the performance of parallel simulation in terms of the problem size, the activity rate, roll back rate, and the number of processors. We have observed that the performance of parallel simulation depends on computational granularity of the system to be simulated and the event scheduling. 1.

