Multiprocessor simulation using communicating sequential processes

Pranav S. Vaidya, Jaehwan John Lee
2010 International Journal of Computer Aided Engineering and Technology  
Modeling and simulation are extremely important tools used for accurate performance prediction of multicore/multiprocessor systems. To tackle the complexity of capturing the design and subsequent simulation of multiprocessor systems, it might be beneficial to consider formal methods of high-level design. However, there are two major issues in using formal methods for multiprocessor system design and simulation. Firstly, apart from Sequential/Parallel Discrete Event Simulation (SDES/PDES), other
more » ... formal methods such as Communicating Sequential Processes (CSP) have not been significantly explored for multiprocessor system design and simulation. This is evident from the fact that most multiprocessor simulators and simulation frameworks are based either on SDES or use some variation of PDES with cooperative multithreading. Use of these approaches also represents the second issue, where simulators and simulation frameworks based on SDES or cooperative multithreading do not exploit the true multiprocessing capabilities of simulation hosts now available even at desktop computing level. In this paper, we attempt to address these two issues by presenting our ongoing research work on a multiprocessor simulator based on the formal method of Communicating Sequential Processes (CSP). Here, we show how a multiprocessor system can be described using the primitives of CSP. Furthermore, we show how this formal description of a multiprocessor system can be mapped to the primitives provided by the Kent C++CSP multithreading library to create a multithreaded multiprocessor simulator. Finally we present the results of the simulator performance using two applications.
doi:10.1504/ijcaet.2010.029599 fatcat:5wcz3aynzzdtjibtw5blxtxod4