Hardware platforms are evolving towards parallel and heterogeneous architectures to overcome the increasing necessity of more performance in the real-time domain. Parallel programming models are fundamental to exploit the performance capabilities of these architectures. This paper proposes a novel response time analysis (RTA) for verifying the schedulability of DAG tasks supporting heterogeneous computing. It analyzes the impact of executing part of the DAG in the accelerator device. As a result, the response time upper bound of the system is more precise than the one provided by currently existing RTA targeting homogeneous architectures.
INTRODUCTIONParallel and heterogeneous hardware architectures become mainstream in the embedded domain to cope the increasing performance requirements. These architectures integrate low power generalpurpose multi-cores (known as host) with dedicated accelerator devices like DSP fabrics, GPUs or FPGAs. Some examples are the NVIDIA Tegra X1 [14], TI Keystone II [20] or Xilinx UltraScale [11].Parallel programming models are fundamental to effectively exploit the huge performance capabilities of these architectures. As an example, OpenMP [15] is increasingly being adopted in architectures targeting embedded systems. As a matter of fact, all parallel architectures presented above support OpenMP in their software development kit. Moreover, OpenMP incorporates a host-centric acceleration model to efficiently offload code and data to devices.Functional and non-functional verification is fundamental when designing real-time embedded systems. However, the use of parallel programming models like OpenMP involves many challenges to assure that software satisfies both functional and non-functional requirements. This paper addresses the latter, focusing on the worstcase response time analysis of OpenMP programs. It is worth mentioning however that recent works have addressed functional verification of OpenMP programs [16], demonstrating the benefits of using OpenMP in real-time embedded systems.Regarding timing verification, the sporadic DAG task model [6] analyzes the response time of systems composed of parallel tasks modeled with direct acyclic graphs (DAGs) [4,9,12]. Interestingly,