Deadline-based Scheduling for GPU with Preemption Support

被引:61
作者
Capodieci, Nicola [1 ]
Cavicchioli, Roberto [1 ]
Bertogna, Marko [1 ]
Paramakuru, Aingara [2 ]
机构
[1] Univ Modena & Reggio Emilia, Dept Phys Math & Informat, Modena, Italy
[2] NVIDIA Corp, Toronto, ON, Canada
来源
2018 39TH IEEE REAL-TIME SYSTEMS SYMPOSIUM (RTSS 2018) | 2018年
关键词
GPU; Scheduling; real-time; ADAS;
D O I
10.1109/RTSS.2018.00021
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Modern automotive-grade embedded computing platforms feature high-performance Graphics Processing Units (GPUs) to support the massively parallel processing power needed for next-generation autonomous driving applications (e.g., Deep Neural Network (DNN) inference, sensor fusion, path planning, etc). As these workload-intensive activities are pushed to higher criticality levels, there is a stronger need for more predictable scheduling algorithms that are able to guarantee predictability without overly sacrificing GPU utilization. Unfortunately, the real-rime literature on GPU scheduling mostly considered limited (or null) preemption capabilities, while previous efforts in broader domains were often based on programming models and APIs that were not designed to support the real-rime requirements of recurring workloads. In this paper, we present the design of a prototype real-time scheduler for GPU activities on an embedded System on a Chip (SoC) featuring a cutting edge GPU architecture by NVIDIA adopted in the autonomous driving domain. The scheduler runs as a software partition on top of the NVIDIA hypervisor, and it leverages latest generation architectural features, such as pixel-level preemption and thread level preemption. Such a design allowed us to implement and test a preemptive Earliest Deadline First (EDF) scheduler for GPU tasks providing bandwidth isolations by means of a Constant Bandwidth Server (CBS). Our work involved investigating alternative programming models for compute APIs, allowing us to characterize CPU-to-GPU command submission with more detailed scheduling information. A detailed experimental characterization is presented to show the significant schedulability improvement of recurring real-time GPU tasks.
引用
收藏
页码:119 / 130
页数:12
相关论文
共 31 条
[1]   Integrating multimedia applications in hard real-time systems [J].
Abeni, L ;
Buttazzo, G .
19TH IEEE REAL-TIME SYSTEMS SYMPOSIUM, PROCEEDINGS, 1998, :4-13
[2]  
Abeni Luca, 2015, ACM SIGBED Rev., V11, P19, DOI [10.1145/2724942.2724945, DOI 10.1145/2724942.2724945]
[3]  
[Anonymous], 2016, KHRONOS EGLSTREAM SP
[4]  
[Anonymous], 2017, GPU SCHEDULING SYNCH
[5]  
Arunkumar Akhil, 2017, P 44 ANN INT S COMP
[6]  
Baruah S, 2015, EMBED SYST, P1, DOI 10.1007/978-3-319-08696-5
[7]  
BARUAH SK, 1990, PROCEEDINGS : 11TH REAL-TIME SYSTEMS SYMPOSIUM, P182, DOI 10.1109/REAL.1990.128746
[8]   Supporting Preemptive Task Executions and Memory Copies in GPGPUs [J].
Basaran, Can ;
Kang, Kyoung-Don .
PROCEEDINGS OF THE 24TH EUROMICRO CONFERENCE ON REAL-TIME SYSTEMS (ECRTS 2012), 2012, :287-296
[9]   Measuring the performance of schedulability tests [J].
Bini, E ;
Buttazzo, GC .
REAL-TIME SYSTEMS, 2005, 30 (1-2) :129-153
[10]  
Breitbart J., 2010, European Conference on Parallel Processing, P373