TY - GEN
T1 - Scalable and Fast Lazy Persistency on GPUs
AU - Yudha, Ardhi Wiratama Baskara
AU - Kimura, Keiji
AU - Zhou, Huiyang
AU - Solihin, Yan
N1 - Publisher Copyright:
© 2020 IEEE.
PY - 2020/10
Y1 - 2020/10
N2 - GPUs applications, including many scientific and machine learning applications, increasingly demand larger memory capacity. NVM is promising higher density compared to DRAM and better future scaling potentials. Long running GPU applications can benefit from NVM by exploiting its persistency, allowing crash recovery of data in memory. In this paper, we propose mapping Lazy Persistency (LP) to GPUs and identify the design space of such mapping. We then characterize LP performance on GPUs, varying the checksum type, reduction method, use of locking, and hash table designs. Armed with insights into the performance bottlenecks, we propose a hash table-less method that performs well on hundreds and thousands of threads, achieving persistency with nearly negligible (2.1%) slowdown for a variety of representative benchmarks. We also propose a directive-based programming language support to simplify programming effort for adding LP to GPU applications.
AB - GPUs applications, including many scientific and machine learning applications, increasingly demand larger memory capacity. NVM is promising higher density compared to DRAM and better future scaling potentials. Long running GPU applications can benefit from NVM by exploiting its persistency, allowing crash recovery of data in memory. In this paper, we propose mapping Lazy Persistency (LP) to GPUs and identify the design space of such mapping. We then characterize LP performance on GPUs, varying the checksum type, reduction method, use of locking, and hash table designs. Armed with insights into the performance bottlenecks, we propose a hash table-less method that performs well on hundreds and thousands of threads, achieving persistency with nearly negligible (2.1%) slowdown for a variety of representative benchmarks. We also propose a directive-based programming language support to simplify programming effort for adding LP to GPU applications.
UR - http://www.scopus.com/inward/record.url?scp=85097849165&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85097849165&partnerID=8YFLogxK
U2 - 10.1109/IISWC50251.2020.00032
DO - 10.1109/IISWC50251.2020.00032
M3 - Conference contribution
AN - SCOPUS:85097849165
T3 - Proceedings - 2020 IEEE International Symposium on Workload Characterization, IISWC 2020
SP - 252
EP - 263
BT - Proceedings - 2020 IEEE International Symposium on Workload Characterization, IISWC 2020
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 16th IEEE International Symposium on Workload Characterization, IISWC 2020
Y2 - 27 October 2020 through 29 October 2020
ER -