Virtual Thread: Maximizing Thread-Level Parallelism beyond GPU Scheduling Limit

Myung Kuk Yoon, Keunsoo Kim, Sangpil Lee, Won Woo Ro, Murali Annavaram

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

46 Scopus citations

Abstract

Modern GPUs require tens of thousands of concurrent threads to fully utilize the massive amount of processing resources. However, thread concurrency in GPUs can be diminished either due to shortage of thread scheduling structures (scheduling limit), such as available program counters and single instruction multiple thread stacks, or due to shortage of on-chip memory (capacity limit), such as register file and shared memory. Our evaluations show that in practice concurrency in many general purpose applications running on GPUs is curtailed by the scheduling limit rather than the capacity limit. Maximizing the utilization of on-chip memory resources without unduly increasing the scheduling complexity is a key goal of this paper. This paper proposes a Virtual Thread (VT) architecture which assigns Cooperative Thread Arrays (CTAs) up to the capacity limit, while ignoring the scheduling limit. However, to reduce the logic complexity of managing more threads concurrently, we propose to place CTAs into active and inactive states, such that the number of active CTAs still respects the scheduling limit. When all the warps in an active CTA hit a long latency stall, the active CTA is context switched out and the next ready CTA takes its place. We exploit the fact that both active and inactive CTAs still fit within the capacity limit which obviates the need to save and restore large amounts of CTA state. Thus VT significantly reduces performance penalties of CTA swapping. By swapping between active and inactive states, VT can exploit higher degree of thread level parallelism without increasing logic complexity. Our simulation results show that VT improves performance by 23.9% on average.

Original languageEnglish
Title of host publicationProceedings - 2016 43rd International Symposium on Computer Architecture, ISCA 2016
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages609-621
Number of pages13
ISBN (Electronic)9781467389471
DOIs
StatePublished - 24 Aug 2016
Event43rd International Symposium on Computer Architecture, ISCA 2016 - Seoul, Korea, Republic of
Duration: 18 Jun 201622 Jun 2016

Publication series

NameProceedings - 2016 43rd International Symposium on Computer Architecture, ISCA 2016

Conference

Conference43rd International Symposium on Computer Architecture, ISCA 2016
Country/TerritoryKorea, Republic of
CitySeoul
Period18/06/1622/06/16

Bibliographical note

Publisher Copyright:
© 2016 IEEE.

Keywords

  • Capacity Limit
  • GPGPU
  • GPU
  • Scheduling Limit
  • Virtual Thread (VT)
  • Warp Scheduling

Fingerprint

Dive into the research topics of 'Virtual Thread: Maximizing Thread-Level Parallelism beyond GPU Scheduling Limit'. Together they form a unique fingerprint.

Cite this