DocumentCode :
177302
Title :
Enabling preemptive multiprogramming on GPUs
Author :
Tanasic, Ivan ; Gelado, Isaac ; Cabezas, Javier ; Ramirez, Adrian ; Navarro, Nacho ; Valero, M.R.
Author_Institution :
Barcelona Supercomput. Center, Barcelona, Spain
fYear :
2014
fDate :
14-18 June 2014
Firstpage :
193
Lastpage :
204
Abstract :
GPUs are being increasingly adopted as compute accelerators in many domains, spanning environments from mobile systems to cloud computing. These systems are usually running multiple applications, from one or several users. However GPUs do not provide the support for resource sharing traditionally expected in these scenarios. Thus, such systems are unable to provide key multiprogrammed workload requirements, such as responsiveness, fairness or quality of service. In this paper, we propose a set of hardware extensions that allow GPUs to efficiently support multiprogrammed GPU workloads. We argue for preemptive multitasking and design two preemption mechanisms that can be used to implement GPU scheduling policies. We extend the architecture to allow concurrent execution of GPU kernels from different user processes and implement a scheduling policy that dynamically distributes the GPU cores among concurrently running kernels, according to their priorities. We extend the NVIDIA GK110 (Kepler) like GPU architecture with our proposals and evaluate them on a set of multiprogrammed workloads with up to eight concurrent processes. Our proposals improve execution time of high-priority processes by 15.6x, the average application turnaround time between 1.5x to 2x, and system fairness up to 3.4x.
Keywords :
concurrency control; graphics processing units; multiprogramming; parallel architectures; processor scheduling; GPU architecture; GPU cores; GPU kernels; GPU scheduling policies; NVIDIA GK110; cloud computing; concurrent execution; concurrent processes; concurrently running kernels; graphics processing units; high-priority process execution time; mobile systems; multiprogrammed GPU workload; multiprogrammed workload requirements; preemption mechanisms; preemptive multiprogramming; preemptive multitasking; resource sharing; Context; Engines; Graphics processing units; Hardware; Instruction sets; Kernel; Registers;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Computer Architecture (ISCA), 2014 ACM/IEEE 41st International Symposium on
Conference_Location :
Minneapolis, MN
Print_ISBN :
978-1-4799-4396-8
Type :
conf
DOI :
10.1109/ISCA.2014.6853208
Filename :
6853208
Link To Document :
بازگشت