Litcius/Paper detail

The HPC-DAG Task Model for Heterogeneous Real-Time Systems

Zahaf Houssam-Eddine, Nicola Capodieci, Roberto Cavicchioli, Giuseppe Lipari, Marko Bertogna

2020IEEE Transactions on Computers41 citationsDOIOpen Access PDF

Abstract

Recent commercial hardware platforms for embedded real-time systems feature heterogeneous processing units and computing accelerators on the same System-on-Chip. When designing complex real-time applications for such architectures, the designer is exposed to a number of difficult choices, like deciding on which compute engine to execute a certain task, or what degree of parallelism to adopt for a given function. To help the designer exploring the wide space of design choices and tune the scheduling parameters, we propose a novel real-time application model, called HPC-DAG ( <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">Heterogeneous Parallel Condition Directed Acyclic Graph Model</i> ), specifically conceived for heterogeneous platforms. An HPC-DAG allows the system designer to specify alternative implementations of a software component for different processing engines, as well as conditional branches to model <italic xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">if-then-else</i> statements. We also propose a schedulability analysis for the HPC-DAG model and a set of heuristic allocation algorithms aimed at improving schedulability for latency sensitive applications. Our analysis takes into account the cost of preempting a task, which can be non-negligible on certain processors. We show the use of our approach on a realistic case study, and we demonstrate its effectiveness by comparing it with state-of-the-art algorithms previously proposed in literature.

Topics & Concepts

Computer scienceDirected acyclic graphScheduling (production processes)Parallel computingImplementationLatency (audio)Set (abstract data type)Theoretical computer scienceProgramming languageAlgorithmTelecommunicationsEconomicsOperations managementReal-Time Systems SchedulingEmbedded Systems Design TechniquesParallel Computing and Optimization Techniques