The large diffusion of highly-parallel shared-memory multi-core machines has led Parallel Discrete Event Simulation (PDES) platforms to a shift towards a share-everything model. This model is based on loose coupling between simulation objects and threads, lasting (as an extreme) no more than the lifetime of individual events. Concurrent threads can therefore CPU-dispatch events destined to any object at any point in time, thus fully sharing the workload of events to be processed on a fine grain basis. This demands for efficient mechanisms to share the overall pool of pending events by enabling parallelism in insertion and extraction operations. In this article we present a lock-free event pool which also provides amortized O(1) time complexity for both insertions and extractions. It can sustain highly concurrent accesses, while not leading to noticeable performance degradation when scaling up the thread count. Experimental results demonstrate that our solution stands as a core facility capable of further raising up the pragmatical impact of such an emerging share-everything PDES paradigm.
A Lock-Free O(1) Event Pool and Its Application to Share-Everything PDES Platforms / Marotta, Romolo; Ianni, Mauro; Pellegrini, Alessandro; Quaglia, Francesco. - ELETTRONICO. - (2016), pp. 53-60. (Intervento presentato al convegno 20th IEEE/ACM International Symposium on Distributed Simulation and Real Time Applications tenutosi a London; United Kingdom nel 2016) [10.1109/DS-RT.2016.33].
A Lock-Free O(1) Event Pool and Its Application to Share-Everything PDES Platforms
MAROTTA, ROMOLO
;IANNI, MAURO
;PELLEGRINI, ALESSANDRO
;QUAGLIA, Francesco
2016
Abstract
The large diffusion of highly-parallel shared-memory multi-core machines has led Parallel Discrete Event Simulation (PDES) platforms to a shift towards a share-everything model. This model is based on loose coupling between simulation objects and threads, lasting (as an extreme) no more than the lifetime of individual events. Concurrent threads can therefore CPU-dispatch events destined to any object at any point in time, thus fully sharing the workload of events to be processed on a fine grain basis. This demands for efficient mechanisms to share the overall pool of pending events by enabling parallelism in insertion and extraction operations. In this article we present a lock-free event pool which also provides amortized O(1) time complexity for both insertions and extractions. It can sustain highly concurrent accesses, while not leading to noticeable performance degradation when scaling up the thread count. Experimental results demonstrate that our solution stands as a core facility capable of further raising up the pragmatical impact of such an emerging share-everything PDES paradigm.File | Dimensione | Formato | |
---|---|---|---|
Marotta_Postprint_A-Lock-Free_2016.pdf
accesso aperto
Note: https://ieeexplore.ieee.org/document/7789871
Tipologia:
Documento in Post-print (versione successiva alla peer review e accettata per la pubblicazione)
Licenza:
Tutti i diritti riservati (All rights reserved)
Dimensione
261.06 kB
Formato
Adobe PDF
|
261.06 kB | Adobe PDF | |
Marotta_A-Lock-Free_2016.pdf
solo gestori archivio
Tipologia:
Versione editoriale (versione pubblicata con il layout dell'editore)
Licenza:
Tutti i diritti riservati (All rights reserved)
Dimensione
231.49 kB
Formato
Adobe PDF
|
231.49 kB | Adobe PDF | Contatta l'autore |
Marotta_Frontespizio-indice_A-Lock-Free_2016.pdf
solo gestori archivio
Tipologia:
Altro materiale allegato
Licenza:
Tutti i diritti riservati (All rights reserved)
Dimensione
563.66 kB
Formato
Adobe PDF
|
563.66 kB | Adobe PDF | Contatta l'autore |
I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.