This thesis presents Big-LITTLE Constant Bandwidth Server (BL-CBS), a dynamic partitioning approach to schedule real-time task sets in an energy-efficient way on multi-core platforms based on the ARM big.LITTLE architecture. BL-CBS is designed as an on-line and adaptive scheduler, supporting ''open'' systems and based on a push/pull architecture that is suitable to be incorporated in the current SCHED_DEADLINE code base in the Linux kernel. It employs a greedy heuristic to dynamically partition the real-time tasks among the big and LITTLE cores aiming to minimize the energy consumption and the migrations imposed on the running tasks. BL-CBS is then combined with the Task Decomposition technique already proposed in the literature to design a methodology to be used with any Directed Acyclic Graph (DAG) task for partitioning the real-time workload in a transparent way. The new approach is validated through the open-source RTSim simulator, which has been extended integrating an energy model of the ODROID-XU3 board, fitting tightly the power consumption profiles for the big and LITTLE cores of the board. An extensive set of simulations has been run with randomly generated real-time task sets, achieving 15% of energy saving in average with respect to the state of the art GRUB-PA when used with sequential tasks and reaching 10% of energy saving in average over all the performed experiments with respect to GRUB-PA when used with DAG tasks. When using BL-CBS in a real system, a key problem is the one of admitting real-time tasks only if the heuristic will be able to find on-line a suitable partitioning of all of the the admitted workload, so to provide the expected guarantees. Therefore, the related problem of admitting real-time tasks onto both a symmertric multi-processor (SMP) and an ARM big.LITTLE platform, where a partitioned EDF-based scheduler is used, is also explored. For the SMP case, it is proposed to combine a well-known utilization-based test for the first-fit partitioning strategy, with a simple heuristic based on the number of tasks and exact knowledge of the utilization of the first few biggest tasks, while for the ARM big.LITTLE case the approach is to combine different formulas for both the non-uniform platform (NUMP) and the SMP cases. This results in effective and efficient tests improving the state of the art in terms of admitted tasks, as shown by an extensive evaluation performed on randomly generated task sets.

Energy-aware Scheduling of Real-Time Tasks on ARM big.LITTLE Architectures

MASCITTI, AGOSTINO
2021

Abstract

This thesis presents Big-LITTLE Constant Bandwidth Server (BL-CBS), a dynamic partitioning approach to schedule real-time task sets in an energy-efficient way on multi-core platforms based on the ARM big.LITTLE architecture. BL-CBS is designed as an on-line and adaptive scheduler, supporting ''open'' systems and based on a push/pull architecture that is suitable to be incorporated in the current SCHED_DEADLINE code base in the Linux kernel. It employs a greedy heuristic to dynamically partition the real-time tasks among the big and LITTLE cores aiming to minimize the energy consumption and the migrations imposed on the running tasks. BL-CBS is then combined with the Task Decomposition technique already proposed in the literature to design a methodology to be used with any Directed Acyclic Graph (DAG) task for partitioning the real-time workload in a transparent way. The new approach is validated through the open-source RTSim simulator, which has been extended integrating an energy model of the ODROID-XU3 board, fitting tightly the power consumption profiles for the big and LITTLE cores of the board. An extensive set of simulations has been run with randomly generated real-time task sets, achieving 15% of energy saving in average with respect to the state of the art GRUB-PA when used with sequential tasks and reaching 10% of energy saving in average over all the performed experiments with respect to GRUB-PA when used with DAG tasks. When using BL-CBS in a real system, a key problem is the one of admitting real-time tasks only if the heuristic will be able to find on-line a suitable partitioning of all of the the admitted workload, so to provide the expected guarantees. Therefore, the related problem of admitting real-time tasks onto both a symmertric multi-processor (SMP) and an ARM big.LITTLE platform, where a partitioned EDF-based scheduler is used, is also explored. For the SMP case, it is proposed to combine a well-known utilization-based test for the first-fit partitioning strategy, with a simple heuristic based on the number of tasks and exact knowledge of the utilization of the first few biggest tasks, while for the ARM big.LITTLE case the approach is to combine different formulas for both the non-uniform platform (NUMP) and the SMP cases. This results in effective and efficient tests improving the state of the art in terms of admitted tasks, as shown by an extensive evaluation performed on randomly generated task sets.
20-dic-2021
Italiano
ARM big.LITTLE
EDF admission test
Energy-efficiency
Heterogeneous multicore processing
Real-time scheduling
CUCINOTTA, TOMMASO
LIPARI, GIUSEPPE
BEHNAM, MORIS
DI NATALE, MARCO
LO BELLO, LUCIA
File in questo prodotto:
File Dimensione Formato  
frontespizio_firmato_signed.pdf

non disponibili

Licenza: Tutti i diritti riservati
Dimensione 480.78 kB
Formato Adobe PDF
480.78 kB Adobe PDF
thesis_mascitti_consegnata_v3.pdf

accesso aperto

Licenza: Tutti i diritti riservati
Dimensione 2.25 MB
Formato Adobe PDF
2.25 MB Adobe PDF Visualizza/Apri

I documenti in UNITESI sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/20.500.14242/217304
Il codice NBN di questa tesi è URN:NBN:IT:SSSUP-217304