Skip to content
Free planNo credit card requiredStart writing

article · ACM SIGARCH Computer Architecture News · 2014

Enabling preemptive multiprogramming on GPUs

Ivan Tanasić, Isaac Gelado, Javier Cabezas, Alex Ramírez, Nacho Navarro, Mateo Valero

Cited by 172Abstract and details only

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

Cite this paper

APA 7

Tanasić, I., Gelado, I., Cabezas, J., Ramírez, A., Navarro, N., & Valero, M. (2014). Enabling preemptive multiprogramming on GPUs. ACM SIGARCH Computer Architecture News, 42(3), 193–204. https://doi.org/10.1145/2678373.2665702

MLA 9

Tanasić, Ivan, et al. “Enabling preemptive multiprogramming on GPUs.” ACM SIGARCH Computer Architecture News, vol. 42, no. 3, 2014, pp. 193–204, https://doi.org/10.1145/2678373.2665702.

Chicago

Tanasić, Ivan, Isaac Gelado, Javier Cabezas, Alex Ramírez, Nacho Navarro, and Mateo Valero. 2014. “Enabling preemptive multiprogramming on GPUs.” ACM SIGARCH Computer Architecture News 42 (3): 193–204. https://doi.org/10.1145/2678373.2665702.

Harvard

Tanasić, I. et al. (2014) ‘Enabling preemptive multiprogramming on GPUs’, ACM SIGARCH Computer Architecture News, 42(3), pp. 193–204. Available at: https://doi.org/10.1145/2678373.2665702.

BibTeX
@article{tanasic2014enabling,
  title = {{Enabling preemptive multiprogramming on GPUs}},
  author = {Tanasić, Ivan and Gelado, Isaac and Cabezas, Javier and Ramírez, Alex and Navarro, Nacho and Valero, Mateo},
  journal = {ACM SIGARCH Computer Architecture News},
  volume = {42},
  number = {3},
  pages = {193--204},
  year = {2014},
  doi = {10.1145/2678373.2665702}
}

Made from the index record. Check names, capitalisation and page numbers against the paper. Need another style? AI for Research has over 10,000.