GPU register file virtualization

Hyeran Jeon, Gokul Subramanian Ravi, Nam Sung Kim, Murali Annavaram

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

To support massive number of parallel thread contexts, Graphics Processing Units (GPUs) use a huge register file, which is responsible for a large fraction of GPU's total power and area. The conventional belief is that a large register file is inevitable for accommodating more parallel thread contexts, and technology scaling makes it feasible to incorporate ever increasing size of register file. In this paper, we demonstrate that the register file size need not be large to accommodate more threads context. We first characterize the useful lifetime of a register and show that register lifetimes vary drastically across various registers that are allocated to a kernel. While some registers are alive for the entire duration of the kernel execution, some registers have a short lifespan. We propose GPU register file virtualization that allows multiple warps to share physical registers. Since warps may be scheduled for execution at different points in time, we propose to proactively release dead registers from one warp and re-allocate them to a different warp that may occur later in time, thereby reducing the needless demand for physical registers. By using register virtualization, we shrink the architected register space to a smaller physical register space. By under-provisioning the physical register file to be smaller than the architected register file we reduce dynamic and static power consumption. We then develop a new register throttling mechanism to run applications that exceed the size of the under-provisioned register file without any deadlock. Our evaluation shows that even after halving the architected register file size using our proposed GPU register file virtualization applications run successfully with negligible performance overhead.

Original languageEnglish (US)
Title of host publicationProceedings - 48th Annual IEEE/ACM International Symposium on Microarchitecture, MICRO 2015
PublisherIEEE Computer Society
Pages420-432
Number of pages13
ISBN (Electronic)9781450340342
DOIs
StatePublished - Dec 5 2015
Event48th Annual IEEE/ACM International Symposium on Microarchitecture, MICRO 2015 - Waikiki, United States
Duration: Dec 5 2015Dec 9 2015

Publication series

NameProceedings of the Annual International Symposium on Microarchitecture, MICRO
Volume05-09-December-2015
ISSN (Print)1072-4451

Other

Other48th Annual IEEE/ACM International Symposium on Microarchitecture, MICRO 2015
CountryUnited States
CityWaikiki
Period12/5/1512/9/15

Keywords

  • GPGPU
  • energy-efficient computing
  • microarchitecture
  • register file

ASJC Scopus subject areas

  • Hardware and Architecture

Fingerprint Dive into the research topics of 'GPU register file virtualization'. Together they form a unique fingerprint.

  • Cite this

    Jeon, H., Ravi, G. S., Kim, N. S., & Annavaram, M. (2015). GPU register file virtualization. In Proceedings - 48th Annual IEEE/ACM International Symposium on Microarchitecture, MICRO 2015 (pp. 420-432). (Proceedings of the Annual International Symposium on Microarchitecture, MICRO; Vol. 05-09-December-2015). IEEE Computer Society. https://doi.org/10.1145/2830772.2830784