Timing prediction for service-based applications mapped on linux-based multi-core platforms

Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

1 Downloads (Pure)

Abstract

We develop a model-based approach to predict timing of service-based software applications on Linux-based multi-core platforms for alternative mappings (affinity and priority settings). Service-based applications consist of communicating sequential (Linux) processes. These processes execute functions (also called services), but can only execute them one at a time. Models are inferred automatically from execution traces to enable timing optimization of existing (legacy) systems. Our approach relies on a linear progress approximation of functions. We compute the expected share of each function based on the mapping (affinity and priority) parameters and the functions that are currently active. We validate our models by carrying out a controlled lab experiment consisting of a multi-process pipelined application mapped in different ways on a quadcore Intel i7 processor. A broad class of affinity and priority settings is fundamentally unpredictable due to Linux binding policies. We show that predictability can be achieved if the platform is partitioned in disjoint clusters of cores such that i) each process is bound to such a cluster, ii) processes with non real-time priorities are bound to singleton clusters, and iii) all processes bound to a non-singleton cluster have different real-time priorities. For mappings using singleton clusters with niceness priorities only, our model predicts execution latencies (for each pipeline iteration) with errors less than 5% relative to the measured execution times. For mappings using a non-singleton cluster (with different real-time priorities) relative errors of less than 2% are obtained. When real-time and niceness priorities are mixed, we predict with errors of 7%.

Original languageEnglish
Title of host publicationProceedings - 21st Euromicro Conference on Digital System Design, DSD 2018
EditorsNikos Konofaos, Martin Novotny, Amund Skavhaug
Place of PublicationPiscataway
PublisherInstitute of Electrical and Electronics Engineers
Pages130-139
Number of pages10
ISBN (Electronic)978-1-5386-7377-5
ISBN (Print)978-1-5386-7378-2
DOIs
Publication statusPublished - 12 Oct 2018
Event21st Euromicro Conference on Digital System Design, DSD 2018 - Prague, Czech Republic
Duration: 29 Aug 201831 Aug 2018
Conference number: 21
http://dsd-seaa2018.fit.cvut.cz/dsd/

Conference

Conference21st Euromicro Conference on Digital System Design, DSD 2018
Abbreviated titleDSD 2018
CountryCzech Republic
CityPrague
Period29/08/1831/08/18
Internet address

Fingerprint

Legacy systems
Application programs
Pipelines
Linux
Experiments

Keywords

  • Fair Share Scheduling
  • Linux multi-core platform
  • Software-Oriented Architecture
  • Y-chart model

Cite this

Jonk, R., Voeten, J., Geilen, M., Basten, T., & Schiffelers, R. (2018). Timing prediction for service-based applications mapped on linux-based multi-core platforms. In N. Konofaos, M. Novotny, & A. Skavhaug (Eds.), Proceedings - 21st Euromicro Conference on Digital System Design, DSD 2018 (pp. 130-139). [8491806] Piscataway: Institute of Electrical and Electronics Engineers. https://doi.org/10.1109/DSD.2018.00035
Jonk, Ruben ; Voeten, Jeroen ; Geilen, Marc ; Basten, Twan ; Schiffelers, Ramon. / Timing prediction for service-based applications mapped on linux-based multi-core platforms. Proceedings - 21st Euromicro Conference on Digital System Design, DSD 2018. editor / Nikos Konofaos ; Martin Novotny ; Amund Skavhaug. Piscataway : Institute of Electrical and Electronics Engineers, 2018. pp. 130-139
@inproceedings{5a36bf5d414f409dac56fee765cb493a,
title = "Timing prediction for service-based applications mapped on linux-based multi-core platforms",
abstract = "We develop a model-based approach to predict timing of service-based software applications on Linux-based multi-core platforms for alternative mappings (affinity and priority settings). Service-based applications consist of communicating sequential (Linux) processes. These processes execute functions (also called services), but can only execute them one at a time. Models are inferred automatically from execution traces to enable timing optimization of existing (legacy) systems. Our approach relies on a linear progress approximation of functions. We compute the expected share of each function based on the mapping (affinity and priority) parameters and the functions that are currently active. We validate our models by carrying out a controlled lab experiment consisting of a multi-process pipelined application mapped in different ways on a quadcore Intel i7 processor. A broad class of affinity and priority settings is fundamentally unpredictable due to Linux binding policies. We show that predictability can be achieved if the platform is partitioned in disjoint clusters of cores such that i) each process is bound to such a cluster, ii) processes with non real-time priorities are bound to singleton clusters, and iii) all processes bound to a non-singleton cluster have different real-time priorities. For mappings using singleton clusters with niceness priorities only, our model predicts execution latencies (for each pipeline iteration) with errors less than 5{\%} relative to the measured execution times. For mappings using a non-singleton cluster (with different real-time priorities) relative errors of less than 2{\%} are obtained. When real-time and niceness priorities are mixed, we predict with errors of 7{\%}.",
keywords = "Fair Share Scheduling, Linux multi-core platform, Software-Oriented Architecture, Y-chart model",
author = "Ruben Jonk and Jeroen Voeten and Marc Geilen and Twan Basten and Ramon Schiffelers",
year = "2018",
month = "10",
day = "12",
doi = "10.1109/DSD.2018.00035",
language = "English",
isbn = "978-1-5386-7378-2",
pages = "130--139",
editor = "Nikos Konofaos and Martin Novotny and Amund Skavhaug",
booktitle = "Proceedings - 21st Euromicro Conference on Digital System Design, DSD 2018",
publisher = "Institute of Electrical and Electronics Engineers",
address = "United States",

}

Jonk, R, Voeten, J, Geilen, M, Basten, T & Schiffelers, R 2018, Timing prediction for service-based applications mapped on linux-based multi-core platforms. in N Konofaos, M Novotny & A Skavhaug (eds), Proceedings - 21st Euromicro Conference on Digital System Design, DSD 2018., 8491806, Institute of Electrical and Electronics Engineers, Piscataway, pp. 130-139, 21st Euromicro Conference on Digital System Design, DSD 2018, Prague, Czech Republic, 29/08/18. https://doi.org/10.1109/DSD.2018.00035

Timing prediction for service-based applications mapped on linux-based multi-core platforms. / Jonk, Ruben; Voeten, Jeroen; Geilen, Marc; Basten, Twan; Schiffelers, Ramon.

Proceedings - 21st Euromicro Conference on Digital System Design, DSD 2018. ed. / Nikos Konofaos; Martin Novotny; Amund Skavhaug. Piscataway : Institute of Electrical and Electronics Engineers, 2018. p. 130-139 8491806.

Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

TY - GEN

T1 - Timing prediction for service-based applications mapped on linux-based multi-core platforms

AU - Jonk, Ruben

AU - Voeten, Jeroen

AU - Geilen, Marc

AU - Basten, Twan

AU - Schiffelers, Ramon

PY - 2018/10/12

Y1 - 2018/10/12

N2 - We develop a model-based approach to predict timing of service-based software applications on Linux-based multi-core platforms for alternative mappings (affinity and priority settings). Service-based applications consist of communicating sequential (Linux) processes. These processes execute functions (also called services), but can only execute them one at a time. Models are inferred automatically from execution traces to enable timing optimization of existing (legacy) systems. Our approach relies on a linear progress approximation of functions. We compute the expected share of each function based on the mapping (affinity and priority) parameters and the functions that are currently active. We validate our models by carrying out a controlled lab experiment consisting of a multi-process pipelined application mapped in different ways on a quadcore Intel i7 processor. A broad class of affinity and priority settings is fundamentally unpredictable due to Linux binding policies. We show that predictability can be achieved if the platform is partitioned in disjoint clusters of cores such that i) each process is bound to such a cluster, ii) processes with non real-time priorities are bound to singleton clusters, and iii) all processes bound to a non-singleton cluster have different real-time priorities. For mappings using singleton clusters with niceness priorities only, our model predicts execution latencies (for each pipeline iteration) with errors less than 5% relative to the measured execution times. For mappings using a non-singleton cluster (with different real-time priorities) relative errors of less than 2% are obtained. When real-time and niceness priorities are mixed, we predict with errors of 7%.

AB - We develop a model-based approach to predict timing of service-based software applications on Linux-based multi-core platforms for alternative mappings (affinity and priority settings). Service-based applications consist of communicating sequential (Linux) processes. These processes execute functions (also called services), but can only execute them one at a time. Models are inferred automatically from execution traces to enable timing optimization of existing (legacy) systems. Our approach relies on a linear progress approximation of functions. We compute the expected share of each function based on the mapping (affinity and priority) parameters and the functions that are currently active. We validate our models by carrying out a controlled lab experiment consisting of a multi-process pipelined application mapped in different ways on a quadcore Intel i7 processor. A broad class of affinity and priority settings is fundamentally unpredictable due to Linux binding policies. We show that predictability can be achieved if the platform is partitioned in disjoint clusters of cores such that i) each process is bound to such a cluster, ii) processes with non real-time priorities are bound to singleton clusters, and iii) all processes bound to a non-singleton cluster have different real-time priorities. For mappings using singleton clusters with niceness priorities only, our model predicts execution latencies (for each pipeline iteration) with errors less than 5% relative to the measured execution times. For mappings using a non-singleton cluster (with different real-time priorities) relative errors of less than 2% are obtained. When real-time and niceness priorities are mixed, we predict with errors of 7%.

KW - Fair Share Scheduling

KW - Linux multi-core platform

KW - Software-Oriented Architecture

KW - Y-chart model

UR - http://www.scopus.com/inward/record.url?scp=85056445114&partnerID=8YFLogxK

U2 - 10.1109/DSD.2018.00035

DO - 10.1109/DSD.2018.00035

M3 - Conference contribution

AN - SCOPUS:85056445114

SN - 978-1-5386-7378-2

SP - 130

EP - 139

BT - Proceedings - 21st Euromicro Conference on Digital System Design, DSD 2018

A2 - Konofaos, Nikos

A2 - Novotny, Martin

A2 - Skavhaug, Amund

PB - Institute of Electrical and Electronics Engineers

CY - Piscataway

ER -

Jonk R, Voeten J, Geilen M, Basten T, Schiffelers R. Timing prediction for service-based applications mapped on linux-based multi-core platforms. In Konofaos N, Novotny M, Skavhaug A, editors, Proceedings - 21st Euromicro Conference on Digital System Design, DSD 2018. Piscataway: Institute of Electrical and Electronics Engineers. 2018. p. 130-139. 8491806 https://doi.org/10.1109/DSD.2018.00035