Skip to main navigation Skip to search Skip to main content

Software transactional memory for GPU architectures

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Modern GPUs have shown promising results in accel- erating computation intensive and numerical workloads with limited dynamic data sharing. However, many real-world applications manifest ample amount of data sharing among concurrently executing threads. Often data sharing requires mutual exclusion mechanism to ensure data integrity in multithreaded environment. Although modern GPUs provide atomic primitives that can be leveraged to construct fine-grained locks, lock-based synchronization requires significant programming efforts to achieve func- Tional correctness. The massive multithreading and SIMT execution paradigm of GPUs further extend the challenges of GPU locks. To make applications with dynamic data sharing benefit from GPU acceleration, we propose a novel software transac- Tional memory system for GPU architectures (GPU-STM). The major challenges include ensuring good scalability with respect to the massive multithreading of GPUs, and preventing livelocks caused by the SIMT execution paradigm of GPUs. To this end, we propose (1) a hierarchical valida- Tion technique and (2) an encounter-time lock-sorting mech- Anism to deal with the two challenges, respectively. We build our GPU-STM prototype based on the commercially avail- Able GPU platform and runtime. Our real system based evaluation shows that GPU-STM outperforms coarse-grain locks on GPUs by up to 20x.

Original languageEnglish
Title of host publicationProceedings of the 12th ACM/IEEE International Symposium on Code Generation and Optimization, CGO 2014
PublisherAssociation for Computing Machinery
Pages1-10
Number of pages10
ISBN (Print)9781450326704
DOIs
StatePublished - 2014
Event12th ACM/IEEE International Symposium on Code Generation and Optimization, CGO 2014 - Orlando, FL, United States
Duration: 15 Feb 201419 Feb 2014

Publication series

NameProceedings of the 12th ACM/IEEE International Symposium on Code Generation and Optimization, CGO 2014

Conference

Conference12th ACM/IEEE International Symposium on Code Generation and Optimization, CGO 2014
Country/TerritoryUnited States
CityOrlando, FL
Period15/02/1419/02/14

Keywords

  • General-purpose GPU computing
  • Parallel programming
  • Software transactional memory

Fingerprint

Dive into the research topics of 'Software transactional memory for GPU architectures'. Together they form a unique fingerprint.

Cite this