Energy Efficient Task Mapping and Resource Management on Multi-core Architectures
Licentiatavhandling, 2022
A common parallelization scheme to exploit CMPs is task parallelism, which can express a wide range of computations in the form of task directed acyclic graphs (DAGs). Existing studies that target energy efficient task scheduling have demonstrated the benefits of leveraging DVFS, particularly per-core DVFS. Their scheduling decisions are mainly based on heuristics, such as task criticality, task dependencies and workload sizes. To enable energy efficient task scheduling, we identify multiple crucial factors that influence energy consumption - varying task characteristics, exploitation of intra-task parallelism (task moldability), and task granularity - which we collectively refer to as task heterogeneity. Task heterogeneity and architecture asymmetry features together complicate the task scheduling problem, since the most energy efficient configuration of resource allocation and frequency setting varies with each task. Our analysis shows that leveraging task heterogeneity in conjunction with static and dynamic asymmetry provides significant opportunities for energy reduction.
This thesis contributes two scheduling techniques - ERASE and STEER - that target different scenarios. ERASE focuses on fine-grained tasking and in environments where DVFS is not under user control. It leverages the insights of task characteristics, task moldability, and instantaneous task parallelism detection for guiding scheduling decisions. ERASE comprises four modules: online performance modeling, power profiling, core activity tracing and a task scheduler. Online performance modeling and power profiling provide runtime with execution time and power predictions. Core activity tracing offers the instantaneous task parallelism and the task scheduler combines these information to enable the energy predictions and dynamically determine the best resource allocation for each task during runtime. STEER focuses on environments where DVFS is under user control and where the platform comprises multiple asymmetric cores grouped into clusters. STEER explores how much energy could be potentially saved by leveraging static asymmetry, dynamic asymmetry and task heterogeneity in conjunction. STEER comprises two predictive models for performance and power predictions, and a task scheduler that utilizes models for energy predictions and then identifies the best resource allocation and frequency settings for tasks. Moreover, it applies adaptive scheduling techniques based on task granularity to manage DVFS overheads, and coordinates the cluster frequency settings to reduce interference from concurrent running tasks on cluster-based architectures.
The evaluation on an NVIDIA Jetson TX2 shows that ERASE achieves 10% energy savings on average compared to the state-of-the-art DVFS-based schedulers and can adapt to external DVFS changes, and STEER consumes 38% less energy on average than both the state-of-the-art and ERASE.
Energy Consumption
Resource Management
Runtime
Dynamic Voltage-Frequency Scaling (DVFS)
Predictive Models
Task Scheduling
Författare
Jing Chen
Chalmers, Data- och informationsteknik, Datorteknik
Jing Chen, Madhavan Manivannan, Mustafa Abduljabbar, and Miquel Pericas. ERASE: Energy Efficient Task Mapping and Resource Management for Work Stealing Runtimes.
Jing Chen, Madhavan Manivannan, Bhavishya Goel, Mustafa Abduljabbar, and Miquel Pericas. STEER: Asymmetry-aware Energy Efficient Task Scheduler for Cluster-based Multicore Architectures.
Low-energy toolset for heterogeneous computing (LEGaTO)
Europeiska kommissionen (EU) (EC/H2020/780681), 2018-02-01 -- 2021-01-31.
European, extendable, energy-efficient, energetic, embedded, extensible, Processor Ecosystem (eProcessor)
Europeiska kommissionen (EU) (EC/H2020/956702), 2021-01-01 -- 2024-06-30.
Ämneskategorier
Datorteknik
Inbäddad systemteknik
Datorsystem
Utgivare
Chalmers
Room 8103, EDIT Building, Rännvägen 6, Chalmers University of Technology
Opponent: Martin Schulz, Technical University of Munich, Germany