EconPapers    
Economics at your fingertips  
 

Self-optimizing Concurrency in Software Transactional Memory via Model-based Approach

Pierangelo Di Sanzo (), Francesco Del Re (), Diego Rughetti (), Bruno Ciciani () and Francesco Quaglia ()
Additional contact information
Pierangelo Di Sanzo: Department of Computer, Control and Management Engineering, Universita' degli Studi di Roma "La Sapienza"
Francesco Del Re: Department of Computer, Control and Management Engineering, Universita' degli Studi di Roma "La Sapienza"
Diego Rughetti: Department of Computer, Control and Management Engineering, Universita' degli Studi di Roma "La Sapienza"
Bruno Ciciani: Department of Computer, Control and Management Engineering, Universita' degli Studi di Roma "La Sapienza"
Francesco Quaglia: Department of Computer, Control and Management Engineering, Universita' degli Studi di Roma "La Sapienza"

No 2013-07, DIAG Technical Reports from Department of Computer, Control and Management Engineering, Universita' degli Studi di Roma "La Sapienza"

Abstract: In the era of multi-core systems, the need for tools simplifying the development of concurrent applications is increasingly looming. In such a context, Software Transactional Memory (STM) is recognized as an effective programming paradigm, thanks to its ability to guarantee consistency of data that are shared across concurrent threads in an application transparent manner. On the other hand, a core problem to cope with for STM, which has received great attention of late, deals with (dynamically) regulating the degree of concurrency, in order to deliver optimal performance. In fact, depending on the application workload, whose profile can also change over time, an oversized number of concurrent threads may cause loss in performance due to excessive data contention, which may give rise to excessively high transaction abort rate. Conversely, an undersized number of threads may hamper performance due to limited exploitation of parallelism. We address this problem by proposing a self-regulation approach of the concurrency level, which leverages a parametric analytical performance model aimed at predicting the scalability of the STM application as a function of the actual workload profile and the number of concurrent threads supposed to sustaining the execution. The regulation scheme allows achieving optimal performance during the whole lifetime of the application via dynamically resizing the number of concurrent threads according to the predictions by the model. The later is customized for a specific application/platform pair through regression analysis, which is based on a lightweight sampling phase. We also present a real implementation of the model-based concurrency self-regulation architecture integrated within the open source TinySTM framework. Further, the effectiveness of the proposal is evaluated via an experimental assessment based on standard STM benchmark applications.

Keywords: Software Transactional Memory; performance modeling; concurrency regulation; self-tuning (search for similar items in EconPapers)
Pages: 24 pages
Date: 2013-07
References: View complete reference list from CitEc
Citations:

Downloads: (external link)
http://www.dis.uniroma1.it/~bibdis/RePEc/aeg/report/2013-07.pdf Revised version, 2013 (application/pdf)

Related works:
This item may be available elsewhere in EconPapers: Search for items with the same title.

Export reference: BibTeX RIS (EndNote, ProCite, RefMan) HTML/Text

Persistent link: https://EconPapers.repec.org/RePEc:aeg:report:2013-07

Access Statistics for this paper

More papers in DIAG Technical Reports from Department of Computer, Control and Management Engineering, Universita' degli Studi di Roma "La Sapienza" Contact information at EDIRC.
Bibliographic data for series maintained by Antonietta Angelica Zucconi ( this e-mail address is bad, please contact ).

 
Page updated 2025-04-14
Handle: RePEc:aeg:report:2013-07