Modern embedded systems execute applications, which interact with the operating system and hardware differently depending on the type of workload. These cross-layer interactions result in wide variations of the chip-wide thermal profile. In this article, a reinforcement learning-based runtime manager is proposed that guarantees application-specific performance requirements and controls the POSIX thread allocation and voltage/frequency scaling for energy-efficient thermal management. This controls three thermal aspects: peak temperature, average temperature, and thermal cycling. Contrary to existing learning-based runtime approaches that optimize energy and temperature individually, the proposed runtime manager is the first approach to combine the two objectives, simultaneously addressing all three thermal aspects. However, determining thread allocation and core frequencies to optimize energy and temperature is an NP-hard problem. This leads to exponential growth in the learning table (significant memory overhead) and a corresponding increase in the exploration time to learn the most appropriate thread allocation and core frequency for a particular application workload. To confine the learning space and to minimize the learning cost, the proposed runtime manager is implemented in a two-stage hierarchy: a heuristic-based thread allocation at a longer time interval to improve thermal cycling, followed by a learning-based hardware frequency selection at a much finer interval to improve average temperature, peak temperature, and energy consumption. This enables finer control on temperature in an energy-efficient manner while simultaneously addressing scalability, which is a crucial aspect for multi-/many-core embedded systems. The proposed hierarchical runtime manager is implemented for Linux running on nVidia's Tegra SoC, featuring four ARM Cortex-A15 cores. Experiments conducted with a range of embedded and cpu-intensive applications demonstrate that the proposed runtime manager not only reduces energy consumption by an average 15% with respect to Linux but also improves all the thermal aspects-average temperature by 14 degrees C, peak temperature by 16 degrees C, and thermal cycling by 54%.
Adaptive and Hierarchical Runtime Manager for Energy-Aware Thermal Management of Embedded Systems
Creators
Anup Das - University of Southampton
Bashir M. Al-Hashimi - University of Southampton
Geoff V. Merrett - University of Southampton
Publication Details
ACM transactions on embedded computing systems, v 15(2), pp 1-25
Publisher
Assoc Computing Machinery
Number of pages
25
Grant note
EP/K034448/1 / Engineering and Physical Sciences Research Council; UK Research & Innovation (UKRI); Engineering & Physical Sciences Research Council (EPSRC)
EP/L000563/1 / EPSRC; UK Research & Innovation (UKRI); Engineering & Physical Sciences Research Council (EPSRC)
EP/K034448/1 / Engineering and Physical Sciences Research Council (EPSRC) Programme Grant; UK Research & Innovation (UKRI); Engineering & Physical Sciences Research Council (EPSRC)
Resource Type
Journal article
Language
English
Academic Unit
Electrical and Computer Engineering
Web of Science ID
WOS:000381427500005
Scopus ID
2-s2.0-84957058268
Other Identifier
991019295193004721
InCites Highlights
Data related to this publication, from InCites Benchmarking & Analytics tool: