TY - GEN
T1 - Performance of Static and Dynamic Task Scheduling for Real-Time Engine Control System on Embedded Multicore Processor
AU - Oki, Yoshitake
AU - Mikami, Hiroki
AU - Nishida, Hikaru
AU - Umeda, Dan
AU - Kimura, Keiji
AU - Kasahara, Hironori
N1 - Publisher Copyright:
© 2021, Springer Nature Switzerland AG.
PY - 2021
Y1 - 2021
N2 - Embedded multicore processors running hard real-time applications such as engine control programs require an appropriate scheduling routine to meet the real-time deadline constraints. These applications typically consist of various conditional branches which change the flow of the program and the task executions based on sensors inputs and vehicle status information. Conventionally, dynamic on-line scheduling was the only option for such applications that have unpredictable runtime behaviors. However, techniques for compilers and schedulers allow static off-line scheduling to be applied to engine control programs by utilizing execution profile feedback methods to feed task execution time information to the compiler. This paper is the first to compare dynamic scheduling and static scheduling schemes through the OSCAR multi-grain automatic parallelizing compiler and its overheads on an actual engine control program using an embedded multicore processor implemented on an FPGA. Evaluations and analysis on the engine control program indicate promising results for static scheduling, recording a 2.53 × speedup on 4 cores compared to single core execution. In contrast, speedup on dynamic scheduling with 4 cores was only 0.86x compared to sequential execution. The evaluation shows that static scheduling with execution profile feedback methods is an effective tool for real hard-real time control applications that have task granularity that is too fine for dynamic scheduling on embedded multicore processors.
AB - Embedded multicore processors running hard real-time applications such as engine control programs require an appropriate scheduling routine to meet the real-time deadline constraints. These applications typically consist of various conditional branches which change the flow of the program and the task executions based on sensors inputs and vehicle status information. Conventionally, dynamic on-line scheduling was the only option for such applications that have unpredictable runtime behaviors. However, techniques for compilers and schedulers allow static off-line scheduling to be applied to engine control programs by utilizing execution profile feedback methods to feed task execution time information to the compiler. This paper is the first to compare dynamic scheduling and static scheduling schemes through the OSCAR multi-grain automatic parallelizing compiler and its overheads on an actual engine control program using an embedded multicore processor implemented on an FPGA. Evaluations and analysis on the engine control program indicate promising results for static scheduling, recording a 2.53 × speedup on 4 cores compared to single core execution. In contrast, speedup on dynamic scheduling with 4 cores was only 0.86x compared to sequential execution. The evaluation shows that static scheduling with execution profile feedback methods is an effective tool for real hard-real time control applications that have task granularity that is too fine for dynamic scheduling on embedded multicore processors.
KW - Dynamic scheduling
KW - Hard real-time control systems
KW - Multicore
KW - Parallelizing compiler
KW - Performance comparison
KW - Scheduling overhead
KW - Static scheduling
UR - http://www.scopus.com/inward/record.url?scp=85107276649&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85107276649&partnerID=8YFLogxK
U2 - 10.1007/978-3-030-72789-5_1
DO - 10.1007/978-3-030-72789-5_1
M3 - Conference contribution
AN - SCOPUS:85107276649
SN - 9783030727888
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 1
EP - 14
BT - Languages and Compilers for Parallel Computing - 32nd International Workshop, LCPC 2019, Revised Selected Papers
A2 - Pande, Santosh
A2 - Sarkar, Vivek
PB - Springer Science and Business Media Deutschland GmbH
T2 - 32nd International Workshop on Languages and Compilers for Parallel Computing, LCPC 2019
Y2 - 22 October 2019 through 24 October 2019
ER -