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

Onderzoeksoutput: Hoofdstuk in Boek/Rapport/CongresprocedureConferentiebijdrageAcademicpeer review

Uittreksel

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%.

TaalEngels
TitelProceedings - 21st Euromicro Conference on Digital System Design, DSD 2018
RedacteurenNikos Konofaos, Martin Novotny, Amund Skavhaug
Plaats van productiePiscataway
UitgeverijInstitute of Electrical and Electronics Engineers
Pagina's130-139
Aantal pagina's10
ISBN van elektronische versie978-1-5386-7377-5
ISBN van geprinte versie978-1-5386-7378-2
DOI's
StatusGepubliceerd - 12 okt 2018
Evenement21st Euromicro Conference on Digital System Design, DSD 2018 - Prague, Tsjechië
Duur: 29 aug 201831 aug 2018
Congresnummer: 21
http://dsd-seaa2018.fit.cvut.cz/dsd/

Congres

Congres21st Euromicro Conference on Digital System Design, DSD 2018
Verkorte titelDSD 2018
LandTsjechië
StadPrague
Periode29/08/1831/08/18
Internet adres

Vingerafdruk

Legacy systems
Application programs
Pipelines
Linux
Experiments

Trefwoorden

    Citeer dit

    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 (editors), Proceedings - 21st Euromicro Conference on Digital System Design, DSD 2018 (blz. 130-139). [8491806] Piscataway: Institute of Electrical and Electronics Engineers. DOI: 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. redacteur / Nikos Konofaos ; Martin Novotny ; Amund Skavhaug. Piscataway : Institute of Electrical and Electronics Engineers, 2018. blz. 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 (redactie), Proceedings - 21st Euromicro Conference on Digital System Design, DSD 2018., 8491806, Institute of Electrical and Electronics Engineers, Piscataway, blz. 130-139, Prague, Tsjechië, 29/08/18. DOI: 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. redactie / Nikos Konofaos; Martin Novotny; Amund Skavhaug. Piscataway : Institute of Electrical and Electronics Engineers, 2018. blz. 130-139 8491806.

    Onderzoeksoutput: Hoofdstuk in Boek/Rapport/CongresprocedureConferentiebijdrageAcademicpeer 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

    SN - 978-1-5386-7378-2

    SP - 130

    EP - 139

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

    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, redacteurs, Proceedings - 21st Euromicro Conference on Digital System Design, DSD 2018. Piscataway: Institute of Electrical and Electronics Engineers. 2018. blz. 130-139. 8491806. Beschikbaar vanaf, DOI: 10.1109/DSD.2018.00035