2014 · 111 citations · 24 references
EngineeringComputer EngineeringComputer ScienceHardware-software Co-designMobile SystemsParallel ComputingGraphics Processing Unit ArchitectureGraphics Processing Unit ComputingHardware AccelerationParallel Computing SystemsResource SchedulingWorkload SchedulingAcceleratorsConcurrent ComputationExecution Time AnalysisGpu ArchitectureGpu Runtime SystemsMultitaskingPreemptionWorkload
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.
24
John D. Owens, Michael Houston, David Luebke et al. · Proceedings of the IEEE · 2008 · 1.4K citations
NVIDIA Tesla: A Unified Graphics and Computing Architecture
Erik Lindholm, John Nickolls, Stuart F. Oberman et al. · IEEE Micro · 2008 · 1.3K citations
Dynamic Warp Formation and Scheduling for Efficient GPU Control Flow
Wilson Wai Lun Fung, Ivan Sham, George L. Yuan et al. · 2007 · 727 citations
System-Level Performance Metrics for Multiprogram Workloads
Stijn Eyerman, Lieven Eeckhout · IEEE Micro · 2008 · 472 citations
Understanding the efficiency of ray traversal on GPUs
Timo Aila, Samuli Laine · 2009 · 384 citations