Cargando…

Accelerating Real-Time Applications with Predictable Work-Stealing

Modern compute architectures often consist of multiple CPU cores to achieve their performance, as physical properties put a limit on the execution speed of a single processor. This trend is also visible in the embedded and real-time domain, where programmers are forced to parallelize their software...

Descripción completa

Detalles Bibliográficos
Autores principales: Fritz, Florian, Schmid, Michael, Mottok, Jürgen
Formato: Online Artículo Texto
Lenguaje:English
Publicado: 2020
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7343420/
http://dx.doi.org/10.1007/978-3-030-52794-5_18
_version_ 1783555753590652928
author Fritz, Florian
Schmid, Michael
Mottok, Jürgen
author_facet Fritz, Florian
Schmid, Michael
Mottok, Jürgen
author_sort Fritz, Florian
collection PubMed
description Modern compute architectures often consist of multiple CPU cores to achieve their performance, as physical properties put a limit on the execution speed of a single processor. This trend is also visible in the embedded and real-time domain, where programmers are forced to parallelize their software to keep deadlines. Additionally, embedded systems rely increasingly on modular applications, that can easily be adapted to different system loads and hardware configurations. To parallelize applications under these dynamic conditions, often dispatching frameworks like Threading Building Blocks (TBB) are used in the desktop and server segment. More recently, Embedded Multicore Building Blocks (EMB[Formula: see text]) was developed as a task-based programming solution designed with the constraints of embedded systems in mind. In this paper, we discuss how task-based programming fits such systems by analyzing scheduler implementation variants, with a focus on classic work-stealing and the libraries TBB and EMB[Formula: see text]. Based on the state of the art we introduce a novel resource-trading concept that allows static memory allocation in a work-stealing runtime holding strict space and time bounds. We conduct benchmarks between an early prototype of the concept, TBB and EMB[Formula: see text], showing that resource-trading does not introduce additional runtime overheads, while unfortunately also not improving on execution time variances.
format Online
Article
Text
id pubmed-7343420
institution National Center for Biotechnology Information
language English
publishDate 2020
record_format MEDLINE/PubMed
spelling pubmed-73434202020-07-09 Accelerating Real-Time Applications with Predictable Work-Stealing Fritz, Florian Schmid, Michael Mottok, Jürgen Architecture of Computing Systems – ARCS 2020 Article Modern compute architectures often consist of multiple CPU cores to achieve their performance, as physical properties put a limit on the execution speed of a single processor. This trend is also visible in the embedded and real-time domain, where programmers are forced to parallelize their software to keep deadlines. Additionally, embedded systems rely increasingly on modular applications, that can easily be adapted to different system loads and hardware configurations. To parallelize applications under these dynamic conditions, often dispatching frameworks like Threading Building Blocks (TBB) are used in the desktop and server segment. More recently, Embedded Multicore Building Blocks (EMB[Formula: see text]) was developed as a task-based programming solution designed with the constraints of embedded systems in mind. In this paper, we discuss how task-based programming fits such systems by analyzing scheduler implementation variants, with a focus on classic work-stealing and the libraries TBB and EMB[Formula: see text]. Based on the state of the art we introduce a novel resource-trading concept that allows static memory allocation in a work-stealing runtime holding strict space and time bounds. We conduct benchmarks between an early prototype of the concept, TBB and EMB[Formula: see text], showing that resource-trading does not introduce additional runtime overheads, while unfortunately also not improving on execution time variances. 2020-06-12 /pmc/articles/PMC7343420/ http://dx.doi.org/10.1007/978-3-030-52794-5_18 Text en © Springer Nature Switzerland AG 2020 This article is made available via the PMC Open Access Subset for unrestricted research re-use and secondary analysis in any form or by any means with acknowledgement of the original source. These permissions are granted for the duration of the World Health Organization (WHO) declaration of COVID-19 as a global pandemic.
spellingShingle Article
Fritz, Florian
Schmid, Michael
Mottok, Jürgen
Accelerating Real-Time Applications with Predictable Work-Stealing
title Accelerating Real-Time Applications with Predictable Work-Stealing
title_full Accelerating Real-Time Applications with Predictable Work-Stealing
title_fullStr Accelerating Real-Time Applications with Predictable Work-Stealing
title_full_unstemmed Accelerating Real-Time Applications with Predictable Work-Stealing
title_short Accelerating Real-Time Applications with Predictable Work-Stealing
title_sort accelerating real-time applications with predictable work-stealing
topic Article
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7343420/
http://dx.doi.org/10.1007/978-3-030-52794-5_18
work_keys_str_mv AT fritzflorian acceleratingrealtimeapplicationswithpredictableworkstealing
AT schmidmichael acceleratingrealtimeapplicationswithpredictableworkstealing
AT mottokjurgen acceleratingrealtimeapplicationswithpredictableworkstealing