TY - GEN
T1 - The case for GPGPU spatial multitasking
AU - Adriaens, Jacob T.
AU - Compton, Katherine
AU - Kim, Nam Sung
AU - Schulte, Michael J.
PY - 2012/5/3
Y1 - 2012/5/3
N2 - The set-top and portable device market continues to grow, as does the demand for more performance under increasing cost, power, and thermal constraints. The integration of Graphics Processing Units (GPUs) into these devices and the emergence of general-purpose computations on graphics hardware enable a new set of highly parallel applications. In this paper, we propose and make the case for a GPU multitasking technique called spatial multitasking. Traditional GPU multitasking techniques, such as cooperative and preemptive multitasking, partition GPU time among applications, while spatial multitasking allows GPU resources to be partitioned among multiple applications simultaneously. We demonstrate the potential benefits of spatial multitasking with an analysis and characterization of General-Purpose GPU (GPGPU) applications. We find that many GPGPU applications fail to utilize available GPU resources fully, which suggests the potential for significant performance benefits using spatial multitasking instead of, or in combination with, preemptive or cooperative multitasking. We then implement spatial multitasking and compare it to cooperative multitasking using simulation. We evaluate several heuristics for partitioning GPU stream multiprocessors (SMs) among applications and find spatial multitasking shows an average speedup of up to 1.19 over cooperative multitasking when two applications are sharing the GPU. Speedups are even higher when more than two applications are sharing the GPU.
AB - The set-top and portable device market continues to grow, as does the demand for more performance under increasing cost, power, and thermal constraints. The integration of Graphics Processing Units (GPUs) into these devices and the emergence of general-purpose computations on graphics hardware enable a new set of highly parallel applications. In this paper, we propose and make the case for a GPU multitasking technique called spatial multitasking. Traditional GPU multitasking techniques, such as cooperative and preemptive multitasking, partition GPU time among applications, while spatial multitasking allows GPU resources to be partitioned among multiple applications simultaneously. We demonstrate the potential benefits of spatial multitasking with an analysis and characterization of General-Purpose GPU (GPGPU) applications. We find that many GPGPU applications fail to utilize available GPU resources fully, which suggests the potential for significant performance benefits using spatial multitasking instead of, or in combination with, preemptive or cooperative multitasking. We then implement spatial multitasking and compare it to cooperative multitasking using simulation. We evaluate several heuristics for partitioning GPU stream multiprocessors (SMs) among applications and find spatial multitasking shows an average speedup of up to 1.19 over cooperative multitasking when two applications are sharing the GPU. Speedups are even higher when more than two applications are sharing the GPU.
UR - http://www.scopus.com/inward/record.url?scp=84860351763&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84860351763&partnerID=8YFLogxK
U2 - 10.1109/HPCA.2012.6168946
DO - 10.1109/HPCA.2012.6168946
M3 - Conference contribution
AN - SCOPUS:84860351763
SN - 9781467308243
T3 - Proceedings - International Symposium on High-Performance Computer Architecture
SP - 79
EP - 90
BT - Proceedings - 18th IEEE International Symposium on High Performance Computer Architecture, HPCA - 18 2012
T2 - 18th IEEE International Symposium on High Performance Computer Architecture, HPCA - 18 2012
Y2 - 25 February 2012 through 29 February 2012
ER -