Affiliation:
1. University of Wisconsin-Madison
Abstract
Since the introduction of fully programmable vertex shader hardware, GPU computing has made tremendous advances. Exception support and speculative execution are the next steps to expand the scope and improve the usability of GPUs. However, traditional mechanisms to support exceptions and speculative execution are highly intrusive to GPU hardware design. This paper builds on two related insights to provide a unified lightweight mechanism for supporting exceptions and speculation on GPUs.
First, we observe that GPU programs can be broken into code regions that contain little or no live register state at their entry point. We then also recognize that it is simple to generate these regions in such a way that they are idempotent, allowing their entry points to function as program recovery points and enabling support for exception handling, fast context switches, and speculation, all with very low overhead. We call the architecture of GPUs executing these idempotent regions the iGPU architecture. The hardware extensions required are minimal and the construction of idempotent code regions is fully transparent under the typical dynamic compilation framework of GPUs. We demonstrate how iGPU exception support enables virtual memory paging with very low overhead (1% to 4%), and how speculation support enables circuit-speculation techniques that can provide over 25% reduction in energy.
Publisher
Association for Computing Machinery (ACM)
Reference42 articles.
1. AMD. Memory System on Fusion APUs. http://goo.gl/r72cp. AMD. Memory System on Fusion APUs . http://goo.gl/r72cp.
2. AMD Accelerated Parallel Processing OpenCL Programming Guide;AMD;Rev. 1.3f.,2011
3. Cost reduction and evaluation of temporary faults detecting technique
Cited by
8 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Compiler-Directed Incremental Checkpointing for Low Latency GPU Preemption;2022 IEEE International Parallel and Distributed Processing Symposium (IPDPS);2022-05
2. MASK;ACM SIGPLAN Notices;2018-11-30
3. Efficient exception handling support for GPUs;Proceedings of the 50th Annual IEEE/ACM International Symposium on Microarchitecture;2017-10-14
4. Peruse and Profit;Proceedings of the 2016 International Conference on Supercomputing;2016-06
5. JavaScript Parallelizing Compiler for Exploiting Parallelism from Data-Parallel HTML5 Applications;ACM Transactions on Architecture and Code Optimization;2016-01-07