The Software Transactional Memory (STM) paradigm has gained momentum thanks to its ability to provide synchronization transparency in concurrent applications. With this paradigm, accesses to data structures that are shared among multiple threads are carried out within transactions, which are properly handled by the STM layer with no intervention by the application code. In this article we propose an enhancement of typical STM architectures which allows supporting partial rollback of active transactions, as opposed to the typical case where a rollback of a transaction entails squashing all the already-performed work. Our partial rollback scheme is still transparent to the application programmer and has been implemented for x86-64 architectures and for the ELF format, thus being largely usable on POSIX-compliant systems hosted on top of off-the-shelf architectures. We integrated it within the TinySTM open-source library and we present experimental results for the STAMP STM benchmark run on top of a 32-core HP ProLiant server.

Porfirio, A., Pellegrini, A., Di Sanzo, P., Quaglia, F. (2013). Transparent Support for Partial Rollback in Software Transactional Memories. In Euro-Par 2013: Parallel Processing (pp.583-594). HEIDELBERGER PLATZ 3, D-14197 BERLIN, GERMANY : SPRINGER-VERLAG BERLIN [10.1007/978-3-642-40047-6_59].

Transparent Support for Partial Rollback in Software Transactional Memories

Pellegrini, Alessandro;Quaglia, Francesco
2013-08-01

Abstract

The Software Transactional Memory (STM) paradigm has gained momentum thanks to its ability to provide synchronization transparency in concurrent applications. With this paradigm, accesses to data structures that are shared among multiple threads are carried out within transactions, which are properly handled by the STM layer with no intervention by the application code. In this article we propose an enhancement of typical STM architectures which allows supporting partial rollback of active transactions, as opposed to the typical case where a rollback of a transaction entails squashing all the already-performed work. Our partial rollback scheme is still transparent to the application programmer and has been implemented for x86-64 architectures and for the ELF format, thus being largely usable on POSIX-compliant systems hosted on top of off-the-shelf architectures. We integrated it within the TinySTM open-source library and we present experimental results for the STAMP STM benchmark run on top of a 32-core HP ProLiant server.
International Euro-Par 2013 Conference
Aachen
2013
Rilevanza internazionale
ago-2013
Settore ING-INF/05 - SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI
English
Intervento a convegno
Porfirio, A., Pellegrini, A., Di Sanzo, P., Quaglia, F. (2013). Transparent Support for Partial Rollback in Software Transactional Memories. In Euro-Par 2013: Parallel Processing (pp.583-594). HEIDELBERGER PLATZ 3, D-14197 BERLIN, GERMANY : SPRINGER-VERLAG BERLIN [10.1007/978-3-642-40047-6_59].
Porfirio, A; Pellegrini, A; Di Sanzo, P; Quaglia, F
File in questo prodotto:
File Dimensione Formato  
Por13.pdf

solo utenti autorizzati

Tipologia: Documento in Pre-print
Licenza: Copyright dell'editore
Dimensione 160.26 kB
Formato Adobe PDF
160.26 kB Adobe PDF   Visualizza/Apri   Richiedi una copia

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/2108/323561
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 2
  • ???jsp.display-item.citation.isi??? 2
social impact