We found a match
Your institution may have access to this item. Find your institution then sign in to continue.
- Title
FlexSched: Efficient scheduling techniques for concurrent kernel execution on GPUs.
- Authors
López-Albelda, Bernabé; Castro, Francisco M.; González-Linares, José M.; Guil, Nicolás
- Abstract
Nowadays, GPU clusters are available in almost every data processing center. Their GPUs are typically shared by different applications that might have different processing needs and/or different levels of priority. In this scenario, concurrent kernel execution can leverage the use of devices by co-executing kernels having a different or complementary resource utilization profile. A paramount issue in concurrent kernel execution on GPU is to obtain a suitable distribution of streaming multiproccessor (SM) resources among co-executing kernels to fulfill different scheduling aims. In this work, we present a software scheduler, named FlexSched, that employs a run-time mechanism with low overhead to perform intra-SM cooperative thread arrays (a.k.a. thread block) allocation of co-executing kernels. It also implements a productive online profiling mechanism that allows dynamically changing kernels resource assignation attending to the instant performance achieved for co-running kernels. An important characteristic of our approach is that off-line kernel analysis to establish the best resource assignment of co-located kernels is not required. Thus, it can run in any system where new applications must be immediately scheduled. Using a set of nine applications (13 kernels), we show our approach improves the co-execution performance of recent slicing methods. Moreover, our approach obtains a co-execution speedup of 1.40 × while slicing method just achieves 1.29 × . In addition, we test FlexSched in a real scheduling scenario where new applications are launched as soon as GPU resources become available. In this scenario, FlexSched reduces the average overall execution time by a factor of 1.25 × with respect to the time obtained when proprietary hardware (HyperQ) is employed. Finally, FlexSched is also used to implement scheduling policies that guarantee maximum turnaround time for latency sensitive applications while achieving high resource use through kernel co-execution.
- Subjects
GRAPHICS processing units; DATA processing service centers; SCHEDULING; TURNAROUND time
- Publication
Journal of Supercomputing, 2022, Vol 78, Issue 1, p43
- ISSN
0920-8542
- Publication type
Article
- DOI
10.1007/s11227-021-03819-z