Artigo Revisado por pares

Real-Time Scheduling and Analysis of OpenMP DAG Tasks Supporting Nested Parallelism

2020; Institute of Electrical and Electronics Engineers; Volume: 69; Issue: 9 Linguagem: Inglês

10.1109/tc.2020.2972385

ISSN

2326-3814

Autores

Jinghao Sun, Nan Guan, Feng Li, Huimin Gao, Shi Chang, Wang Yi,

Tópico(s)

Distributed systems and fault tolerance

Resumo

OpenMP is a promising framework to develop parallel real-time software on multi-cores. Although similar to the DAG task model, OpenMP task systems are significantly more difficult to analyze due to constraints posed by OpenMP specifications. One of the most interesting features in OpenMP is the support for nested parallelism, enjoying benefits in enhancing performance transparency of parallel libraries and promoting reuse of black-box code. Previous researches on DAG task scheduling mainly restrict to only one level of parallelism. The problem whether OpenMP tasks with multiple levels of parallelism are suitable to real-time systems remains open. In this paper, we study the real-time scheduling and analysis of OpenMP task systems supporting nested parallelism. First, we show that under existing scheduling algorithms in OpenMP implementations, nested parallelism indeed may lead to extremely bad timing behaviors where the parallel workload is sequentially executed completely. To solve this problem, we propose a new scheduling algorithm and develop two sound response time bounds by considering the trade-off between simplicity and analysis precision. Experiments demonstrate the efficiency of our methods.

Referência(s)
Altmetric
PlumX