Multiprocessor simulation using communicating sequential processes
Pranav Vaidya, John J. Lee
Abstract
Pranav Vaidya, John J. Lee
Abstract
To tackle the increasing complexity of capturing the design and subsequent simulation of multicore/multiprocessor systems, it may be beneficial to consider formal methods of high-level design. However, current formal methods of high-level multiprocessor system design and simulation often use sequential/parallel discrete event simulation with cooperative multithreading and hence do not exploit the true multiprocessing capabilities of simulation hosts now available even at the desktop computing level. Hence in this article, we present 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 operators of CSP. Furthermore, we show how this formal description of a multiprocessor system can be mapped to the functions provided by the Kent C++CSP multithreading library for creating a multithreaded multiprocessor simulator. Finally, we present the results of the simulator performance obtained using two applications.
OpenAlex reports 1 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
To tackle the increasing complexity of capturing the design and subsequent simulation of multicore/multiprocessor systems, it may be beneficial to consider formal methods of high-level design. However, current formal methods of high-level multiprocessor system design and simulation often use sequential/parallel discrete event simulation with cooperative multithreading and hence do not exploit the true multiprocessing capabilities of simulation hosts now available even at the desktop computing level. Hence in this article, we present 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 operators of CSP. Furthermore, we show how this formal description of a multiprocessor system can be mapped to the functions provided by the Kent C++CSP multithreading library for creating a multithreaded multiprocessor simulator. Finally, we present the results of the simulator performance obtained using two applications.
Key concepts: Multiprocessing, Multithreading, Computer science, Symmetric multiprocessor system, Parallel computing, Multi-core processor, Communicating sequential processes, Discrete event simulation