Title: Assessing the influence of data access patterns and contention management policies on the performance of software transactional memory systems

Authors: Fernando Kronbauer, Sandro Rigo

Addresses: Motorola Mobility, Jaguariuna, SP, Rod. SP 340 – Km 128,7, Tanquinho Velho, Jaguariuna, SP, 13820-000, Brazil. ' Institute of Computing, University of Campinas, Av. Albert Einstein 1251, CEP 13083-852, Campinas-SP, Brazil

Abstract: Transactional memory was proposed as a mean for easing the burden of traditional concurrency control mechanisms. The programmer has only to mark the code sections that are to be executed atomically, and the system takes care of the synchronisation details. As transactions are executed in parallel, some of them are likely to access resources in ways that cannot be conciliated. Conflicts among transactions are mediated by a contention manager. In this work, we present a novel approach to contention management (CM), which binds different CM strategies to different data in a programme, based on the access patterns to these data. We show how it can be done in a way that introduces minimum overhead and present benchmark results to evaluate our implementation, also demonstrating how the best CM strategy may vary under different levels of contention, under a varying number of threads per processing core, and under different system architectures.

Keywords: contention management; parallel programming; concurrent programming; parallel architectures; software transactional memory; high performance systems; data access patterns; concurrency control.

DOI: 10.1504/IJHPSA.2011.040464

International Journal of High Performance Systems Architecture, 2011 Vol.3 No.2/3, pp.110 - 121

Received: 02 Aug 2010
Accepted: 29 Nov 2010

Published online: 21 Mar 2015 *

Full-text access for editors Full-text access for subscribers Purchase this article Comment on this article