Transactional access to shared memory in starss, a task based programming model

  • Authors:
  • Rahulkumar Gayatri;Rosa M. Badia;Eduard Ayguade;Mikel Luj$#225;n;Ian Watson

  • Affiliations:
  • Barcelona Supercomputing Center, Barcelona, Spain, Universitat Politècnica de Catalunya, Spain;Barcelona Supercomputing Center, Barcelona, Spain, Artificial Intelligence Research Institute (IIIA), Spanish National Research Council (CSIC), Spain;Barcelona Supercomputing Center, Barcelona, Spain, Universitat Politècnica de Catalunya, Spain;University of Manchester, UK;University of Manchester, UK

  • Venue:
  • Euro-Par'12 Proceedings of the 18th international conference on Parallel Processing
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

With an increase in the number of processors on a single chip, programming environments which facilitate the exploitation of parallelism on multicore architectures have become a necessity. StarSs is a task-based programming model that enables a flexible and high level programming. Although task synchronization in StarSs is based on data flow and dependency analysis, some applications (e.g. reductions) require locks to access shared data. Transactional Memory is an alternative to lock-based synchronization for controlling access to shared data. In this paper we explore the idea of integrating a lightweight Software Transactional Memory (STM) library, TinySTM , into an implementation of StarSs (SMPSs). The SMPSs runtime and the compiler have been modified to include and use calls to the STM library. We evaluated this approach on four applications and observe better performance in applications with high lock contention.