Parallelization of Discrete Event Simulation Models

Techniques for Transparent Speculative Execution on Multi-Cores Architectures
SKU: 9788898533596
Collana: 
Studi e Ricerche
Numero Collana: 
35
Collezione: 
Scienze e Tecnologie
edizione: 
prima
formato: 
16x23
pagine: 
268
lingua: 
inglese
tipologia: 
monografia
Price: €22,00

Winner of the Competition “Prize for PhD thesis 2015”

This thesis tackles simulation, which (from the Latin simulare, to “fake” or to “replicate”) is the imitation of a real-world process’ or system’s operation over time. Using simulation, it is possible to collect results very quickly, long before the actual phenomenon occurs, or a particular system is built. It is a very powerful and versatile analytic and experimental instrument, so that it is used in medicine, biology, physics, and economics, just to mention a few application fields. Nevertheless, models are becoming always more refined, and the size of the data sets is getting always larger. This requires an ever increasing computing power to keep simulation times reduced, as in the past.

The advent of multicore technology has given a new impulse to performance increase of computing systems, after that the last decade has seen a significant slowdown. Yet, it has introduced new obstacles as well: the increased complexity of software implementation, verification, and validation. Regarding simulation, this is of great difficulty for the experts of fields not directly related to computer science, possibly preventing them from fully relying on the computing power that is available nowadays.

This publication tackles this issue in the field of discrete-event simulation. In particular, several techniques and methodologies are presented, which allow to move the problem of simulation-model parallelization to the runtime environment in charge of executing it. In this way, it is possible to run in parallel a model implemented in a sequential fashion, benefiting at the same time from the increased computing power and from the much simpler and more intuitive programming model.