PAX
Power-Aware Critical Sections
(Third Party Funds Single)
Project leader: ,
Project members: , , ,
Start date: 1. January 2015
End date: 30. September 2022
Acronym: PAX
Funding source: DFG-Einzelförderung / Sachbeihilfe (EIN-SBH)
Abstract:
Race conditions of concurrent processes within a computing system may cause partly inexplicable phenomena or even defective run-time behaviour. Reason are critical sections in non-sequential programs. Solutions for the protection of critical sections generally are facing a multi-dimensional problem space: (1) processor-local interrupts, (2) shared-memory multi/many-core multiprocessors with (2a) coherent or (2b) incoherent caches, (3) distributed-memory systems with global address space, (4) interference with process management of the operating system. Thereby, the protection method makes pessimistic or optimistic assumptions regarding the occurrence of access contention.The number of contending processes depends on the use case and has a large impact on the effectiveness of their coordination at all levels of a computing system. Overhead, scalability, and dedication of the protective function thereby constitute decisive performance-affecting factors. This influencing quantity not only accounts for varying process run-times but also different energy uses. The former results in noise or jitter in the program flow: non-functional properties that are especially problematic for highly parallel or real-time dependent processes. In contrast, the later has economical importance as well as ecological consequences on the one hand and is tangent to the boundary of scalability of many-core processors (dark silicon) on the other hand.Subject to the structural complexity of a critical section and its sensitivity to contention, a trade-off becomes apparent that shall be tackled in the project by means of analytical and constructive measures. Objects of investigation are own special-purpose operating systems, which were designed primarily for the support of parallel and partly also real-time dependent data processing, and Linux. Goal is the provision (a) of a software infrastructure for load-dependent and---by the program sections---self-organized change of protection against crucial race condition of concurrent processes as well as (b) of tools for preparation, characterisation, and capturing of those sections. Hotspots caused by increased process activity and becoming manifested in energy-use and temperature rise shall be avoided or attenuated on demand or anticipatory by a section-specific dispatch policy. The overhead induced by the particular dispatch policy slips in the weighting to dynamic reconfiguration of a critical section for undertaking a change only in case that real practical gain compared to the original solution can be expected. Before-after comparisons based on the investigated operating systems shall demonstrate the effectivity of the approach developed.Race conditions of concurrent processes within a computing system may cause partly inexplicable phenomena or even defective run-time behaviour. Reason are critical sections in non-sequential programs. Solutions for the protection of critical sections generally are facing a multi-dimensional problem space: (1) processor-local interrupts, (2) shared-memory multi/many-core multiprocessors with (2a) coherent or (2b) incoherent caches, (3) distributed-memory systems with global address space, (4) interference with process management of the operating system. Thereby, the protection method makes pessimistic or optimistic assumptions regarding the occurrence of access contention.The number of contending processes depends on the use case and has a large impact on the effectiveness of their coordination at all levels of a computing system. Overhead, scalability, and dedication of the protective function thereby constitute decisive performance-affecting factors. This influencing quantity not only accounts for varying process run-times but also different energy uses. The former results in noise or jitter in the program flow: non-functional properties that are especially problematic for highly parallel or real-time dependent processes. In contrast, the later has economical importance as well as ecological consequences on the one hand and is tangent to the boundary of scalability of many-core processors (dark silicon) on the other hand.Subject to the structural complexity of a critical section and its sensitivity to contention, a trade-off becomes apparent that shall be tackled in the project by means of analytical and constructive measures. Objects of investigation are own special-purpose operating systems, which were designed primarily for the support of parallel and partly also real-time dependent data processing, and Linux. Goal is the provision (a) of a software infrastructure for load-dependent and---by the program sections---self-organized change of protection against crucial race condition of concurrent processes as well as (b) of tools for preparation, characterisation, and capturing of those sections. Hotspots caused by increased process activity and becoming manifested in energy-use and temperature rise shall be avoided or attenuated on demand or anticipatory by a section-specific dispatch policy. The overhead induced by the particular dispatch policy slips in the weighting to dynamic reconfiguration of a critical section for undertaking a change only in case that real practical gain compared to the original solution can be expected. Before-after comparisons based on the investigated operating systems shall demonstrate the effectivity of the approach developed.
Publications:
An End-To-End Toolchain: From Automated Cost Modeling to Static WCET and WCEC Analysis
20th International Symposium on Real-Time Distributed Computing (ISORC 2017) (Toronto, Canada, 16. May 2017 - 18. May 2017)
In: Proceedings of the 20th International Symposium on Real-Time Distributed Computing (ISORC 2017) 2017
DOI: 10.1109/ISORC.2017.10
URL: https://www4.cs.fau.de/Publications/2017/sieh_17_isorc.pdf , , , , , , :
Operating Energy-Neutral Real-Time Systems
In: ACM Transactions on Embedded Computing Systems 17 (2017), p. 11:1-11:25
ISSN: 1539-9087
DOI: 10.1145/3078631
URL: https://www4.cs.fau.de/Publications/2017/waegemann_17_tecs.pdf , , , , , :
Benchmark Generation for Timing Analysis
23rd Real-Time and Embedded Technology and Applications Symposium (RTAS '17) (Pittsburgh, USA, 18. April 2017 - 20. April 2017)
In: Proceedings of the 23rd Real-Time and Embedded Technology and Applications Symposium (RTAS '17) 2017
DOI: 10.1109/RTAS.2017.6
URL: https://www4.cs.fau.de/Publications/2017/waegemann_17_rtas.pdf , , , :
Demo Abstract: Tooling Support for Benchmarking Timing Analysis
23rd Real-Time and Embedded Technology and Applications Symposium, Demo Session (RTAS Demo '17) (Pittsburgh, USA, 18. April 2017 - 20. April 2017)
In: Proceedings of the 23rd Real-Time and Embedded Technology and Applications Symposium, Demo Session (RTAS Demo '17) 2017
DOI: 10.1109/RTAS.2017.20
URL: https://www4.cs.fau.de/Publications/2017/eichler_17_rtas-demo.pdf , , , :
SysWCET: Whole-System Response-Time Analysis for Fixed-Priority Real-Time Systems (Outstanding Paper)
Real-Time and Embedded Technology and Applications Symposium (Pittsburgh, PA, USA, 17. April 2017 - 21. April 2017)
In: Davis, Rob; Parmer, Gabriel (ed.): Proceedings of the 23rd Real-Time and Embedded Technology and Applications Symposium (RTAS '17), Los Alamitos, CA: 2017
DOI: 10.1109/RTAS.2017.37
URL: https://www4.cs.fau.de/Publications/2017/dietrich_17_rtas.pdf , , , :