Title :
The development of a scheduling system GPUSched for graphics processing units
Author :
Tarakji, Ayman ; Marx, Michael ; Lankes, Stefan
Author_Institution :
Dept. for Oper. Syst., RWTH Aachen Univ., Aachen, Germany
Abstract :
Single unified programing interfaces and languages like CUDA and OpenCL have been released allowing algorithms across all fields of application to be coded and executed on the graphics processing units. In modern computer systems, the GPU is a processing device accessed through a host and it is not able to run its programs autonomously as a process in the operating system on the advertising host. The host administrates the work on the device including memory transfers, the context switch in the host process to access the device and the launch of kernels (GPU programs). With more and more software featuring GPU support, the access to this shared device has to become more controllable on a system-wide level. Therefore, a better integration of these devices into the operating system including central administration will be necessary. This work takes a first step to create such a central administration for the graphics processing units, by developing a scheduling system called GPUSched. It allows the programmer to formulate different tasks, but then it takes over and manages the execution. The tasks represent GPU code of programs running on a general-purpose operating system. Using a set of microbenchmarks and applications on a GPU system, we show that achieving better utilization of the GPU resources and using these as coprocessors to handle different tasks involve realistic trade-offs.
Keywords :
graphics processing units; operating systems (computers); processor scheduling; CUDA; GPU code; GPU programs; GPU resources; GPUSched; OpenCL; advertising host; central administration; context switch; coprocessors; general-purpose operating system; graphics processing units; memory transfers; modern computer systems; processing device; programming languages; scheduling system; single unified programing interfaces; Computational modeling; Data transfer; Graphics processing units; Hardware; Kernel; Parallel processing; CUDA; Coprocessor; Data Parallelism; GPGPU; GPUSched; Multiprocessing; Multitasking; OpenCL; Scheduling;
Conference_Titel :
High Performance Computing and Simulation (HPCS), 2013 International Conference on
Conference_Location :
Helsinki
Print_ISBN :
978-1-4799-0836-3
DOI :
10.1109/HPCSim.2013.6641471