arrow
Return

Thread-Level Locking for SIMT Architectures

delete2020-05-01
delete4
PRE
AI
高岚 (Lan Gao)
Y
Yunlong Xu
R
Rui Wang *
Z
Zhongzhi Luan
Z
Zhibin Yu
D
Depei Qian
DOI:10.1109/TPDS.2019.2955705delete
deleteOriginal
deleteOriginal request for help
deleteShare
deleteSave
Abstract

Abstract

En 中文
As more emerging applications are moving to GPUs, thread-level synchronization has become a requirement. However, GPUs only provide warp-level and thread-block-level rather than thread-level synchronization. Moreover, it is highly possible to cause live-locks by using CPU synchronization mechanisms to implement thread-level synchronization for GPUs. In this article, we first propose a software-based thread-level synchronization mechanism called lock stealing for GPUs to avoid live-locks. We then describe how to implement our lock stealing algorithm in mutual exclusive locks and readers-writer locks with high performance. Finally, by putting it all together, we develop a thread-level locking library (TLLL) for commercial GPUs. To evaluate TLLL and show its general applicability, we use it to implement six widely used programs. We compare TLLL against the state-of-the-art ad-hoc GPU synchronization, GPU software transactional memory (STM), and CPU hardware transactional memory (HTM), respectively. The results show that, compared with the ad-hoc GPU synchronization for Delaunay mesh refinement (DMR), TLLL improves the performance by 22 percent on average on a GTX970 GPU, and shows up to 11 percent of performance improvement on a Volta V100 GPU. Moreover, it significantly reduces the required memory size. Such low memory consumption enables DMR to successfully run on the GTX970 GPU with the 10-million mesh size, and the V100 GPU with the 40-million mesh size, with which the ad-hoc synchronization can not run successfully. In addition, TLLL outperforms the GPU STM by 65 percent, and the CPU HTM (running on a Xeon E5-2620 v4 CPU with 16 hardware threads) by 43 percent on average.
Keywords:
Graphics processing units
Synchronization
Message systems
System recovery
Instruction sets
Hardware
Computer architecture
Deadlocks
parallelism and concurrency
runtime environments
SIMD processors
synchronization
AI Summary

AI Summary

Key information extracted from the uploaded paper, including a brief overview, abstract, background, key highlights, visual analysis, and future outlook.

Journal

IEEE Transactions on Parallel and Distributed Systems cover
IEEE Transactions on Parallel and Distributed Systems
IF:
6
Papers:
5.2K
Citations:
1.1W

Organization

B
Beihang University
Scholars:
5.1W
Papers: 4.1W
Citations: 37
X
xi'an jiaotong university
Scholars:
9.1W
Papers: 6.6W
Citations: 75
C
capital normal university
Scholars:
6.4K
Papers: 4.4K
Citations: 3
C
chinese academy of sciences
Scholars:
56.1W
Papers: 44.8W
Citations: 704
researcher View more organizations