Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Jonathan Bailey

dblp:207/1811 · DBLP profile ↗
← Back
2ranked-venue papers
1as first author
0since 2021 · last 2018
0000-0002-6229-8995ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 2 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
2 papers
GPUs and heterogeneous computing · 44% Processor architecture and microarchitecture · 44% Energy-efficient computing · 12%

Topics — the 5 heaviest of 5, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Processor architecture and microarchitecture
register file
0.622018
Scratch That (But Cache This): A Hybrid Register Cache/Scratchpad for GPUs · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2018
Regless: just-in-time operand staging for GPUs · MICRO 2017
GPUs and heterogeneous computing
GPU microarchitecture
0.312018
Scratch That (But Cache This): A Hybrid Register Cache/Scratchpad for GPUs · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2018
GPUs and heterogeneous computing
GPU architecture
0.312017
Regless: just-in-time operand staging for GPUs · MICRO 2017
Energy-efficient computing › energy-efficient architecture
GPU energy efficiency
0.112017
Regless: just-in-time operand staging for GPUs · MICRO 2017
Energy-efficient computing
power management
0.112017
Regless: just-in-time operand staging for GPUs · MICRO 2017

Methods — techniques the papers use, named apart from their topics

register caching · 0.3compiler-managed scratchpad · 0.3
YearPublicationVenuePosition
2018 Scratch That (But Cache This): A Hybrid Register Cache/Scratchpad for GPUs
abstract
Graphics processing units (GPUs) are throughput-oriented architectures that implement massive multithreading. Large, power-hungry register files are required in GPUs to support the simultaneous execution of thousands of threads on the hardware. Prior work proposed reducing register access energy by adding a small register cache (RC) to the GPU. The cache stores recently referenced registers and services subsequent accesses to these registers, reducing accesses to the main register file. Later work obtained further energy savings by replacing this cache with a compiler-managed scratchpad. We note that registers are allocated to the cache dynamically and reactively whereas registers are allocated to the scratchpad statically and proactively. Our insight is that these allocation schemes are complimentary because the cache leverages runtime information unavailable to the compiler and the scratchpad leverages compile time information unavailable to the cache. Further, there exist register access patterns that are easily captured by one structure but for which the other structure is ineffective. Instead of implementing either an RC or scratchpad alone, we propose dividing temporary register storage capacity between a cache and a scratchpad in order to capture a broader range of register accesses. Given 12 KB of storage per streaming multiprocessor, our hybrid design reduces register energy to 38.7% of the baseline, compared to 47.9% for a RC and 47.1% for a register scratchpad.
Jonathan Bailey, John Kloosterman, Scott A. Mahlke
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.1
2017 Regless: just-in-time operand staging for GPUs
abstract
The register file is one of the largest and most power-hungry structures in a Graphics Processing Unit (GPU), because massive multithreading requires all the register state for every active thread to be available. Previous approaches to making register accesses more efficient have optimized how registers are stored, but they must keep all values for active threads in a large, high-bandwidth structure. If operand storage is to be reduced further, there will not be enough capacity for every live value to be stored at the same time. Our insight is that computation graphs can be sliced into regions and operand storage can be allocated to these regions as they are encountered at run time, allowing a small operand staging unit to replace the register file. Most operand values have a short lifetime that is contained in one region, so their value does not need to persist in the staging unit past the end of that region. The small number of longer-lived operands can be stored in lower-bandwidth global memory, but the hardware must anticipate their use to fetch them early enough to avoid stalls. In RegLess, hardware uses compiler annotations to anticipate warps' operand usage at run time, allowing the register file to be replaced with an operand staging unit 25% of the size, saving 75% of register file energy and 11% of total GPU energy with no average performance loss.
John Kloosterman, Jonathan Beaumont, Davoud Anoushe Jamshidi, Jonathan Bailey, Trevor N. Mudge, Scott A. Mahlke
MICRO4