SlideShare a Scribd company logo
1 of 15
Download to read offline
T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna
An Evaluation of Adaptive Partitioning
An Evaluation of Adaptive Partitioning
of Real-Time Workloads on Linux
of Real-Time Workloads on Linux
IEEE ISORC 2021
IEEE ISORC 2021
A. Stevanato, T. Cucinotta, L. Abeni
Real-Time Systems Laboratory
Scuola Superiore Sant’Anna
Pisa, Italy
D. B. de Oliveira
Red Hat, Inc.
Pisa, Italy
T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 2
Background and
Background and
motivations #1/2
motivations #1/2
Relentless growth of computing demand
●
satisfied for years by the “frequency-race”
●
up to the impossibility of handling heat dissipation
– Intel’s cancelled plans for 5GHz-10GHz CPUs in 2004
●
=> we’ve been living a “multi-core race” in the last decade
Multi-core/multi-processing pervasive
●
not only in High-Performance Computing (HPC)
●
but also in embedded and real-time systems
●
noteworthy modern use-cases:
high-performance embedded scenarios
– intelligent real-time driving assistants
– real-time video processing and object recognition
– real-time time-series forecasting
●
Need for a multitude of “acceleration” technologies:
– Multi-core, GP-GPU, FPGA
T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 3
Background and
Background and
motivations #2/2
motivations #2/2
●
Open real-time systems
– dynamic real-time task sets on multi-core platforms
●
new RT tasks may ask to be admitted at any time
●
running RT tasks may terminate and leave the system
– requirement of minimizing energy consumption
(mobile devices)
●
Frequent migration of RT tasks among cores
– when using utilization-based heuristics for task/core
assignment
T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 4
Focus of the paper
●
Adaptively Partitioned EDF (apEDF) on multi-cores
●
Originally appeared in
– “Adaptive Partitioning of Real-Time Tasks on Multiple Processors,” ACM SAC 2020
– “EDF scheduling of real-time tasks on multiple cores: adaptive partitioning vs. global
scheduling,” ACM SIGAPP Applied Computing Review, 2020
●
Contributions of this paper
– Prototype implementation in the Linux kernel (SCHED_DEADLINE)
– Experimental evaluation
apEDF
●
RT tasks scheduled using CBS/EDF reservations
– each task with parameters (WCET Ci, min inter-arrival period Ti)
has associated a dedicated reservation with (Qi, Pi)
●
normally Qi = Ci and Pi = Ti
– at any time tasks (and their reservations) are partitioned among cores
●
reservations {(Qi, Pi)}i deployed onto each core respect
●
CBS handles a current budget qi(t) and abs deadline di(t)C
Proposed Approach #1/2
Proposed Approach #1/2
T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 5
Proposed Approach #2/2
Proposed Approach #2/2
●
apEDF
– utilization-based heuristics for task/core assignment
– First-Fit
●
good: simple utilization-based overall test
●
bad: for energy-management
●
on DVFS frequencies scale up/down
=> would need to migrate tasks to restore FF invariant
– Worst-Fit
●
good: load spread across cores
– allows for keeping lower DVFS frequencies
●
bad: if a new big U arrives
=> would need to migrate tasks to make room
T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 6
Adaptively Partitioned EDF
Adaptively Partitioned EDF
●
apEDF
– placement logic called on
●
real-time task arrival
●
task wake-up
– placement algorithm for new task τi = (Ci, Pi)
1.if task on non-overloaded core => keep it where it is
2.find a core j that does not overload once accepting the task
– Uj + Ci/Pi <= Ulub
– using first-fit (FF)
3.if no such core exists, then fallback to global EDF
●
apEDF general properties
– no more migrations once a schedulable partitioning is found
– if a schedulable partitioning does not exist, or cannot be found by FF,
then fallback to global EDF (rule 3.)
– apEDF is not work-conserving
(cores may be idle with tasks ready to run)
T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 7
Adaptively Partitioned EDF
Adaptively Partitioned EDF
(variant with adaptive pull)
(variant with adaptive pull)
●
a2
pEDF
– when a core goes idle, pull the non-executing task from
overloaded cores with the most urgent deadline
●
a task is pulled only if its core j has Uj > Ulub
– a2
pEDF general properties
●
recovers a minimum of work-conserving property
(of all Linux schedulers when not under rt-throttling)
– but it may still leave cores idle with tasks ready to run
●
no more migrations once a schedulable partitioning is found
T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 8
apEDF
apEDF
Schedulability Analysis
Schedulability Analysis
●
apEDF schedulability can be analyzed applying
– Lopez et al., “Worst-case utilization bound for EDF scheduling on
real-time multiprocessor systems,” ECRTS 2000
●
given m tasks to be placed on n identical CPUs
●
worst-case of
●
However, the FF invariant is not guaranteed (e.g., task
death or change of scheduling policy)
T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 9
●
Original SCHED_DEADLINE (kernel 5.7.0)
Implementation #1/2
Implementation #1/2
sched/core.c
try_to_wakeup()
wake_up_new_task()
sched_exec()
sched/deadline.c
select_task_rq()
__schedule()
schedule_tail()
__sched_setscheduler()
select_task_rq_dl()
balance_callback()
push_dl_tasks() push_dl_task()
activate_task()
enqueue_task_dl()
enqueue_task()
dequeue_task()
deactivate_task()
dequeue_task_dl()
select_task_rq_dl()
cpudl_find()
pick_next_task() put_prev_balance() balance_dl() pull_dl_task()
find_later_rq()
T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 10
Implementation #2/2
Implementation #2/2
●
SCHED_DEADLINE+apEDF (kernel 5.7.0)
sched/deadline.c
push_dl_task()
find_xf_suitable_rq() first_fit_cpu_find()
worst_fit_cpu_find()
find_later_rq() cpudl_find()
select_task_rq_dl()
push_dl_task_gedf()
push_dl_task_xf()
Scheduler sysctl/proc tunables
/proc/sys/kernel/sched_dl_policy
/proc/sys/kernel/sched_dl_xf_pull
/proc/sys/kernel/sched_dl_fallback_to_gedf
pull_dl_task() pick_earliest_pushable_dl_task()
pull_dl_task_gedf()
pull_dl_task_ff()
pull_dl_task_wf()
T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 11
Experimental Evaluation
Experimental Evaluation
vs Simulations (SAC’20)
vs Simulations (SAC’20)
Simulations from
SAC’20
Experiments on Linux
(patched rt-app)
Note: total utilization
beyond maximum
theoretical value
(5/2=2.5)
T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 12
Experimental Evaluation
Experimental Evaluation
vs Simulations (SAC’20)
vs Simulations (SAC’20)
T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 13
Conclusions & Future Work
Conclusions & Future Work
●
Proposed Linux implementation of apEDF/a2
pEDF
●
Presented experimental results
– 4 cores (up to 3.8 U and 15 tasks)
– 8 core s (up to 7.4 U and 25 tasks)
●
Obtained results
– deadline misses not too different from global EDF
– deadline misses better with a2
pEDF at high utilizations
– migrations tremendously better than global EDF
●
Future Work
– improve patch-set
– experiment with data-intensive workload
– integrate with Energy Aware Scheduling (EAS)
– deeper comparison between FF and WF with DVFS
– evaluate effectiveness on ARM big.LITTLE / DynamIQ
T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 14
Our related publications
Our related publications
Journals
●
A. Mascitti, T. Cucinotta, M. Marinoni, L. Abeni. "Dynamic Partitioned Scheduling of Real-Time Tasks on ARM big.LITTLE
Architectures," Elsevier Journal of Systems and Software (JSS), Vol. 173, March 2021
●
D. B. De Oliveira, R. S. De Oliveira, T. Cucinotta. "A thread synchronization model for the PREEMPT_RT Linux kernel,"
Elsevier Journal of Systems Architecture (JSA), Vol. 107, August 2020
●
L. Abeni, T. Cucinotta. "EDF scheduling of real-time tasks on multiple cores: adaptive partitioning vs. global scheduling,"
ACM SIGAPP Applied Computing Review, Vol. 20, Issue 2 (June 2020), pp. 5-18, July 2020
●
A. Balsini, T. Cucinotta, L. Abeni, J. Fernandes, P. Burk, P. Bellasi, M. Rasmussen. "Energy-Efficient Low-latency Audio on
Android," Elsevier Journal of Systems and Software (JSS), Vol. 152, pp. 182-195, June 2019
●
Improving Responsiveness of Time-Sensitive Applications by Exploiting Dynamic Task Dependencies, Software: Practice
and Experience, April 2018
Conferences
●
T. Cucinotta, L. Abeni. "Migrating Constant Bandwidth Servers on Multi-Cores," 29th International Conference on Real-Time
Networks and Systems (RTNS 2021), April 7-9, 2021, Nantes, France
●
A. Mascitti, T. Cucinotta. "Dynamic Partitioned Scheduling of Real-Time DAG Tasks on ARM big.LITTLE Architectures,"
29th International Conference on Real-Time Networks and Systems (RTNS 2021), April 7-9, 2021, Nantes, France.
●
D. B. de Oliveira, D. Casini, R. S. de Oliveira, T. Cucinotta. "Demystifying the Real-Time Linux Scheduling Latency,"
32nd Euromicro Conference on Real-Time Systems (ECRTS 2020), July 7-10, 2020, Modena, Italy.
●
E. Quiñones, S. Royuela, C. Scordino, L. M. Pinho, T. Cucinotta, B. Forsberg, A. Hamann, D. Ziegenbein, P. Gai, A. Biondi, L.
Benini, J. Rollo, H. Saoud, R. Soulat, G. Mando, L. Rucher, L. Nogueira. "The AMPERE Project: A Model-driven development
framework for highly Parallel and EneRgy-Efficient computation supporting multi-criteria optimization,"
23rd IEEE International Symposium on Real-Time Distributed Computing (IEEE ISORC 2020), May 19-21, 2020, Nashville,
Tennessee, USA.
●
A. Mascitti, T. Cucinotta, L. Abeni. "Heuristic partitioning of real-time tasks on multi-processors," 23rd IEEE International
Symposium on Real-Time Distributed Computing (IEEE ISORC 2020), May 19-21, 2020, Nashville, Tennessee, USA.
●
G. Serra, G. Ara, P. Fara, T. Cucinotta. "An Architecture for Declarative Real-Time Scheduling on Linux," 23rd IEEE
International Symposium on Real-Time Distributed Computing (IEEE ISORC 2020), May 19-21, 2020, Nashville, Tennessee, USA.
T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 15
Questions ?
tommaso.cucinotta@santannapisa.it
http://retis.santannapisa.it/~tommaso
Thanks!
Thanks!

More Related Content

What's hot

Implementation and evaluation of novel scheduler of UC/OS (RTOS)
Implementation and evaluation of novel scheduler of UC/OS (RTOS)Implementation and evaluation of novel scheduler of UC/OS (RTOS)
Implementation and evaluation of novel scheduler of UC/OS (RTOS)Editor Jacotech
 
Programming Existing Quantum Computers
Programming Existing Quantum ComputersProgramming Existing Quantum Computers
Programming Existing Quantum ComputersAnton Karazeev
 
Hpc Cloud project Overview
Hpc Cloud project OverviewHpc Cloud project Overview
Hpc Cloud project OverviewFloris Sluiter
 
20190314 cern register v3
20190314 cern register v320190314 cern register v3
20190314 cern register v3Tim Bell
 
Hpc, grid and cloud computing - the past, present, and future challenge
Hpc, grid and cloud computing - the past, present, and future challengeHpc, grid and cloud computing - the past, present, and future challenge
Hpc, grid and cloud computing - the past, present, and future challengeJason Shih
 
Cognitive Engine: Boosting Scientific Discovery
Cognitive Engine:  Boosting Scientific DiscoveryCognitive Engine:  Boosting Scientific Discovery
Cognitive Engine: Boosting Scientific Discoverydiannepatricia
 
Real Time Operating Systems
Real Time Operating SystemsReal Time Operating Systems
Real Time Operating SystemsPawandeep Kaur
 
Real Time Operating System Concepts
Real Time Operating System ConceptsReal Time Operating System Concepts
Real Time Operating System ConceptsSanjiv Malik
 
Quantum computation: past-now-future - 2021-06-19
Quantum computation: past-now-future - 2021-06-19Quantum computation: past-now-future - 2021-06-19
Quantum computation: past-now-future - 2021-06-19Aritra Sarkar
 
Atomate: a high-level interface to generate, execute, and analyze computation...
Atomate: a high-level interface to generate, execute, and analyze computation...Atomate: a high-level interface to generate, execute, and analyze computation...
Atomate: a high-level interface to generate, execute, and analyze computation...Anubhav Jain
 
Sara Afshar: Scheduling and Resource Sharing in Multiprocessor Real-Time Systems
Sara Afshar: Scheduling and Resource Sharing in Multiprocessor Real-Time SystemsSara Afshar: Scheduling and Resource Sharing in Multiprocessor Real-Time Systems
Sara Afshar: Scheduling and Resource Sharing in Multiprocessor Real-Time Systemsknowdiff
 
Real time scheduling - basic concepts
Real time scheduling - basic conceptsReal time scheduling - basic concepts
Real time scheduling - basic conceptsStudent
 
Unit7 & 8 Performance and optimization
Unit7 & 8 Performance and optimization Unit7 & 8 Performance and optimization
Unit7 & 8 Performance and optimization leenachandra
 

What's hot (20)

2017 10 17_quantum_program_v2
2017 10 17_quantum_program_v22017 10 17_quantum_program_v2
2017 10 17_quantum_program_v2
 
2017 07 04_cmmse_quantum_programming_v1
2017 07 04_cmmse_quantum_programming_v12017 07 04_cmmse_quantum_programming_v1
2017 07 04_cmmse_quantum_programming_v1
 
Implementation and evaluation of novel scheduler of UC/OS (RTOS)
Implementation and evaluation of novel scheduler of UC/OS (RTOS)Implementation and evaluation of novel scheduler of UC/OS (RTOS)
Implementation and evaluation of novel scheduler of UC/OS (RTOS)
 
ECP Application Development
ECP Application DevelopmentECP Application Development
ECP Application Development
 
Programming Existing Quantum Computers
Programming Existing Quantum ComputersProgramming Existing Quantum Computers
Programming Existing Quantum Computers
 
Hpc Cloud project Overview
Hpc Cloud project OverviewHpc Cloud project Overview
Hpc Cloud project Overview
 
Quantum computing
Quantum computingQuantum computing
Quantum computing
 
Coca1
Coca1Coca1
Coca1
 
20190314 cern register v3
20190314 cern register v320190314 cern register v3
20190314 cern register v3
 
Hpc, grid and cloud computing - the past, present, and future challenge
Hpc, grid and cloud computing - the past, present, and future challengeHpc, grid and cloud computing - the past, present, and future challenge
Hpc, grid and cloud computing - the past, present, and future challenge
 
Cognitive Engine: Boosting Scientific Discovery
Cognitive Engine:  Boosting Scientific DiscoveryCognitive Engine:  Boosting Scientific Discovery
Cognitive Engine: Boosting Scientific Discovery
 
Real Time Operating Systems
Real Time Operating SystemsReal Time Operating Systems
Real Time Operating Systems
 
Real Time Operating System Concepts
Real Time Operating System ConceptsReal Time Operating System Concepts
Real Time Operating System Concepts
 
Quantum computation: past-now-future - 2021-06-19
Quantum computation: past-now-future - 2021-06-19Quantum computation: past-now-future - 2021-06-19
Quantum computation: past-now-future - 2021-06-19
 
Atomate: a high-level interface to generate, execute, and analyze computation...
Atomate: a high-level interface to generate, execute, and analyze computation...Atomate: a high-level interface to generate, execute, and analyze computation...
Atomate: a high-level interface to generate, execute, and analyze computation...
 
Sara Afshar: Scheduling and Resource Sharing in Multiprocessor Real-Time Systems
Sara Afshar: Scheduling and Resource Sharing in Multiprocessor Real-Time SystemsSara Afshar: Scheduling and Resource Sharing in Multiprocessor Real-Time Systems
Sara Afshar: Scheduling and Resource Sharing in Multiprocessor Real-Time Systems
 
Real time scheduling - basic concepts
Real time scheduling - basic conceptsReal time scheduling - basic concepts
Real time scheduling - basic concepts
 
Unit7 & 8 Performance and optimization
Unit7 & 8 Performance and optimization Unit7 & 8 Performance and optimization
Unit7 & 8 Performance and optimization
 
Lxcloud
LxcloudLxcloud
Lxcloud
 
Real time-embedded-system-lec-02
Real time-embedded-system-lec-02Real time-embedded-system-lec-02
Real time-embedded-system-lec-02
 

Similar to An Evaluation of Adaptive Partitioning of Real-Time Workloads on Linux

High Performance & High Throughput Computing - EUDAT Summer School (Giuseppe ...
High Performance & High Throughput Computing - EUDAT Summer School (Giuseppe ...High Performance & High Throughput Computing - EUDAT Summer School (Giuseppe ...
High Performance & High Throughput Computing - EUDAT Summer School (Giuseppe ...EUDAT
 
Multiprocessor scheduling of dependent tasks to minimize makespan and reliabi...
Multiprocessor scheduling of dependent tasks to minimize makespan and reliabi...Multiprocessor scheduling of dependent tasks to minimize makespan and reliabi...
Multiprocessor scheduling of dependent tasks to minimize makespan and reliabi...ijfcstjournal
 
[EWiLi2016] Towards a performance-aware power capping orchestrator for the Xe...
[EWiLi2016] Towards a performance-aware power capping orchestrator for the Xe...[EWiLi2016] Towards a performance-aware power capping orchestrator for the Xe...
[EWiLi2016] Towards a performance-aware power capping orchestrator for the Xe...Matteo Ferroni
 
Accessible hpc for everyone with docker and containers
Accessible hpc for everyone with docker and containersAccessible hpc for everyone with docker and containers
Accessible hpc for everyone with docker and containersDocker, Inc.
 
Tommaso Cucinotta - Low-latency and power-efficient audio applications on Linux
Tommaso Cucinotta - Low-latency and power-efficient audio applications on LinuxTommaso Cucinotta - Low-latency and power-efficient audio applications on Linux
Tommaso Cucinotta - Low-latency and power-efficient audio applications on Linuxlinuxlab_conf
 
Java Thread and Process Performance for Parallel Machine Learning on Multicor...
Java Thread and Process Performance for Parallel Machine Learning on Multicor...Java Thread and Process Performance for Parallel Machine Learning on Multicor...
Java Thread and Process Performance for Parallel Machine Learning on Multicor...Saliya Ekanayake
 
OpenMP tasking model: from the standard to the classroom
OpenMP tasking model: from the standard to the classroomOpenMP tasking model: from the standard to the classroom
OpenMP tasking model: from the standard to the classroomFacultad de Informática UCM
 
byteLAKE's expertise across NVIDIA architectures and configurations
byteLAKE's expertise across NVIDIA architectures and configurationsbyteLAKE's expertise across NVIDIA architectures and configurations
byteLAKE's expertise across NVIDIA architectures and configurationsbyteLAKE
 
How to Achieve High-Performance, Scalable and Distributed DNN Training on Mod...
How to Achieve High-Performance, Scalable and Distributed DNN Training on Mod...How to Achieve High-Performance, Scalable and Distributed DNN Training on Mod...
How to Achieve High-Performance, Scalable and Distributed DNN Training on Mod...inside-BigData.com
 
Abstractions and Directives for Adapting Wavefront Algorithms to Future Archi...
Abstractions and Directives for Adapting Wavefront Algorithms to Future Archi...Abstractions and Directives for Adapting Wavefront Algorithms to Future Archi...
Abstractions and Directives for Adapting Wavefront Algorithms to Future Archi...inside-BigData.com
 
ASSESSING THE PERFORMANCE AND ENERGY USAGE OF MULTI-CPUS, MULTI-CORE AND MANY...
ASSESSING THE PERFORMANCE AND ENERGY USAGE OF MULTI-CPUS, MULTI-CORE AND MANY...ASSESSING THE PERFORMANCE AND ENERGY USAGE OF MULTI-CPUS, MULTI-CORE AND MANY...
ASSESSING THE PERFORMANCE AND ENERGY USAGE OF MULTI-CPUS, MULTI-CORE AND MANY...ijdpsjournal
 
ASSESSING THE PERFORMANCE AND ENERGY USAGE OF MULTI-CPUS, MULTI-CORE AND MANY...
ASSESSING THE PERFORMANCE AND ENERGY USAGE OF MULTI-CPUS, MULTI-CORE AND MANY...ASSESSING THE PERFORMANCE AND ENERGY USAGE OF MULTI-CPUS, MULTI-CORE AND MANY...
ASSESSING THE PERFORMANCE AND ENERGY USAGE OF MULTI-CPUS, MULTI-CORE AND MANY...ijdpsjournal
 
Designing HPC & Deep Learning Middleware for Exascale Systems
Designing HPC & Deep Learning Middleware for Exascale SystemsDesigning HPC & Deep Learning Middleware for Exascale Systems
Designing HPC & Deep Learning Middleware for Exascale Systemsinside-BigData.com
 
Opportunities of ML-based data analytics in ABCI
Opportunities of ML-based data analytics in ABCIOpportunities of ML-based data analytics in ABCI
Opportunities of ML-based data analytics in ABCIRyousei Takano
 
A Library for Emerging High-Performance Computing Clusters
A Library for Emerging High-Performance Computing ClustersA Library for Emerging High-Performance Computing Clusters
A Library for Emerging High-Performance Computing ClustersIntel® Software
 

Similar to An Evaluation of Adaptive Partitioning of Real-Time Workloads on Linux (20)

High Performance & High Throughput Computing - EUDAT Summer School (Giuseppe ...
High Performance & High Throughput Computing - EUDAT Summer School (Giuseppe ...High Performance & High Throughput Computing - EUDAT Summer School (Giuseppe ...
High Performance & High Throughput Computing - EUDAT Summer School (Giuseppe ...
 
Multiprocessor scheduling of dependent tasks to minimize makespan and reliabi...
Multiprocessor scheduling of dependent tasks to minimize makespan and reliabi...Multiprocessor scheduling of dependent tasks to minimize makespan and reliabi...
Multiprocessor scheduling of dependent tasks to minimize makespan and reliabi...
 
Mastering Real-time Linux
Mastering Real-time LinuxMastering Real-time Linux
Mastering Real-time Linux
 
[EWiLi2016] Towards a performance-aware power capping orchestrator for the Xe...
[EWiLi2016] Towards a performance-aware power capping orchestrator for the Xe...[EWiLi2016] Towards a performance-aware power capping orchestrator for the Xe...
[EWiLi2016] Towards a performance-aware power capping orchestrator for the Xe...
 
Accessible hpc for everyone with docker and containers
Accessible hpc for everyone with docker and containersAccessible hpc for everyone with docker and containers
Accessible hpc for everyone with docker and containers
 
Rtos 8051
Rtos 8051Rtos 8051
Rtos 8051
 
A Novel Approach in Scheduling Of the Real- Time Tasks In Heterogeneous Multi...
A Novel Approach in Scheduling Of the Real- Time Tasks In Heterogeneous Multi...A Novel Approach in Scheduling Of the Real- Time Tasks In Heterogeneous Multi...
A Novel Approach in Scheduling Of the Real- Time Tasks In Heterogeneous Multi...
 
Tommaso Cucinotta - Low-latency and power-efficient audio applications on Linux
Tommaso Cucinotta - Low-latency and power-efficient audio applications on LinuxTommaso Cucinotta - Low-latency and power-efficient audio applications on Linux
Tommaso Cucinotta - Low-latency and power-efficient audio applications on Linux
 
Java Thread and Process Performance for Parallel Machine Learning on Multicor...
Java Thread and Process Performance for Parallel Machine Learning on Multicor...Java Thread and Process Performance for Parallel Machine Learning on Multicor...
Java Thread and Process Performance for Parallel Machine Learning on Multicor...
 
OpenMP tasking model: from the standard to the classroom
OpenMP tasking model: from the standard to the classroomOpenMP tasking model: from the standard to the classroom
OpenMP tasking model: from the standard to the classroom
 
byteLAKE's expertise across NVIDIA architectures and configurations
byteLAKE's expertise across NVIDIA architectures and configurationsbyteLAKE's expertise across NVIDIA architectures and configurations
byteLAKE's expertise across NVIDIA architectures and configurations
 
Japan's post K Computer
Japan's post K ComputerJapan's post K Computer
Japan's post K Computer
 
How to Achieve High-Performance, Scalable and Distributed DNN Training on Mod...
How to Achieve High-Performance, Scalable and Distributed DNN Training on Mod...How to Achieve High-Performance, Scalable and Distributed DNN Training on Mod...
How to Achieve High-Performance, Scalable and Distributed DNN Training on Mod...
 
Abstractions and Directives for Adapting Wavefront Algorithms to Future Archi...
Abstractions and Directives for Adapting Wavefront Algorithms to Future Archi...Abstractions and Directives for Adapting Wavefront Algorithms to Future Archi...
Abstractions and Directives for Adapting Wavefront Algorithms to Future Archi...
 
Afanasov14flynet slides
Afanasov14flynet slidesAfanasov14flynet slides
Afanasov14flynet slides
 
ASSESSING THE PERFORMANCE AND ENERGY USAGE OF MULTI-CPUS, MULTI-CORE AND MANY...
ASSESSING THE PERFORMANCE AND ENERGY USAGE OF MULTI-CPUS, MULTI-CORE AND MANY...ASSESSING THE PERFORMANCE AND ENERGY USAGE OF MULTI-CPUS, MULTI-CORE AND MANY...
ASSESSING THE PERFORMANCE AND ENERGY USAGE OF MULTI-CPUS, MULTI-CORE AND MANY...
 
ASSESSING THE PERFORMANCE AND ENERGY USAGE OF MULTI-CPUS, MULTI-CORE AND MANY...
ASSESSING THE PERFORMANCE AND ENERGY USAGE OF MULTI-CPUS, MULTI-CORE AND MANY...ASSESSING THE PERFORMANCE AND ENERGY USAGE OF MULTI-CPUS, MULTI-CORE AND MANY...
ASSESSING THE PERFORMANCE AND ENERGY USAGE OF MULTI-CPUS, MULTI-CORE AND MANY...
 
Designing HPC & Deep Learning Middleware for Exascale Systems
Designing HPC & Deep Learning Middleware for Exascale SystemsDesigning HPC & Deep Learning Middleware for Exascale Systems
Designing HPC & Deep Learning Middleware for Exascale Systems
 
Opportunities of ML-based data analytics in ABCI
Opportunities of ML-based data analytics in ABCIOpportunities of ML-based data analytics in ABCI
Opportunities of ML-based data analytics in ABCI
 
A Library for Emerging High-Performance Computing Clusters
A Library for Emerging High-Performance Computing ClustersA Library for Emerging High-Performance Computing Clusters
A Library for Emerging High-Performance Computing Clusters
 

More from tcucinotta

Optimum Scalability Point for Parallelisable Real-Time Components
Optimum Scalability Point for Parallelisable Real-Time ComponentsOptimum Scalability Point for Parallelisable Real-Time Components
Optimum Scalability Point for Parallelisable Real-Time Componentstcucinotta
 
SLAs in Virtualized Cloud Computing Infrastructures with QoS Assurance
SLAs in Virtualized Cloud Computing Infrastructures with QoS AssuranceSLAs in Virtualized Cloud Computing Infrastructures with QoS Assurance
SLAs in Virtualized Cloud Computing Infrastructures with QoS Assurancetcucinotta
 
Improving Responsiveness for Virtualized Networking Under Intensive Computing...
Improving Responsiveness for Virtualized Networking Under Intensive Computing...Improving Responsiveness for Virtualized Networking Under Intensive Computing...
Improving Responsiveness for Virtualized Networking Under Intensive Computing...tcucinotta
 
Low-Latency Audio on Linux by Means of Real-Time Scheduling
Low-Latency Audio on Linux by Means of Real-Time SchedulingLow-Latency Audio on Linux by Means of Real-Time Scheduling
Low-Latency Audio on Linux by Means of Real-Time Schedulingtcucinotta
 
Virtualised e-Learning with Real-Time Guarantees on the IRMOS Platform
Virtualised e-Learning with Real-Time Guarantees on the IRMOS PlatformVirtualised e-Learning with Real-Time Guarantees on the IRMOS Platform
Virtualised e-Learning with Real-Time Guarantees on the IRMOS Platformtcucinotta
 
Providing Performance Guarantees to Virtual Machines using Real-Time Scheduling
Providing Performance Guarantees to Virtual Machines using Real-Time SchedulingProviding Performance Guarantees to Virtual Machines using Real-Time Scheduling
Providing Performance Guarantees to Virtual Machines using Real-Time Schedulingtcucinotta
 
The IRMOS Real-Time Scheduler
The IRMOS Real-Time SchedulerThe IRMOS Real-Time Scheduler
The IRMOS Real-Time Schedulertcucinotta
 
An Exception Based Approach to Timing Constraints Violations in Real-Time and...
An Exception Based Approach to Timing Constraints Violations in Real-Time and...An Exception Based Approach to Timing Constraints Violations in Real-Time and...
An Exception Based Approach to Timing Constraints Violations in Real-Time and...tcucinotta
 
Research in Soft Real-Time and Virtualized Applications on Linux
Research in Soft Real-Time and Virtualized Applications on LinuxResearch in Soft Real-Time and Virtualized Applications on Linux
Research in Soft Real-Time and Virtualized Applications on Linuxtcucinotta
 
Self-tuning Schedulers for Legacy Real-Time Applications
Self-tuning Schedulers for Legacy Real-Time ApplicationsSelf-tuning Schedulers for Legacy Real-Time Applications
Self-tuning Schedulers for Legacy Real-Time Applicationstcucinotta
 
The Wizard of OS: a Heartbeat for Legacy Multimedia Applications
The Wizard of OS: a Heartbeat for Legacy Multimedia ApplicationsThe Wizard of OS: a Heartbeat for Legacy Multimedia Applications
The Wizard of OS: a Heartbeat for Legacy Multimedia Applicationstcucinotta
 

More from tcucinotta (11)

Optimum Scalability Point for Parallelisable Real-Time Components
Optimum Scalability Point for Parallelisable Real-Time ComponentsOptimum Scalability Point for Parallelisable Real-Time Components
Optimum Scalability Point for Parallelisable Real-Time Components
 
SLAs in Virtualized Cloud Computing Infrastructures with QoS Assurance
SLAs in Virtualized Cloud Computing Infrastructures with QoS AssuranceSLAs in Virtualized Cloud Computing Infrastructures with QoS Assurance
SLAs in Virtualized Cloud Computing Infrastructures with QoS Assurance
 
Improving Responsiveness for Virtualized Networking Under Intensive Computing...
Improving Responsiveness for Virtualized Networking Under Intensive Computing...Improving Responsiveness for Virtualized Networking Under Intensive Computing...
Improving Responsiveness for Virtualized Networking Under Intensive Computing...
 
Low-Latency Audio on Linux by Means of Real-Time Scheduling
Low-Latency Audio on Linux by Means of Real-Time SchedulingLow-Latency Audio on Linux by Means of Real-Time Scheduling
Low-Latency Audio on Linux by Means of Real-Time Scheduling
 
Virtualised e-Learning with Real-Time Guarantees on the IRMOS Platform
Virtualised e-Learning with Real-Time Guarantees on the IRMOS PlatformVirtualised e-Learning with Real-Time Guarantees on the IRMOS Platform
Virtualised e-Learning with Real-Time Guarantees on the IRMOS Platform
 
Providing Performance Guarantees to Virtual Machines using Real-Time Scheduling
Providing Performance Guarantees to Virtual Machines using Real-Time SchedulingProviding Performance Guarantees to Virtual Machines using Real-Time Scheduling
Providing Performance Guarantees to Virtual Machines using Real-Time Scheduling
 
The IRMOS Real-Time Scheduler
The IRMOS Real-Time SchedulerThe IRMOS Real-Time Scheduler
The IRMOS Real-Time Scheduler
 
An Exception Based Approach to Timing Constraints Violations in Real-Time and...
An Exception Based Approach to Timing Constraints Violations in Real-Time and...An Exception Based Approach to Timing Constraints Violations in Real-Time and...
An Exception Based Approach to Timing Constraints Violations in Real-Time and...
 
Research in Soft Real-Time and Virtualized Applications on Linux
Research in Soft Real-Time and Virtualized Applications on LinuxResearch in Soft Real-Time and Virtualized Applications on Linux
Research in Soft Real-Time and Virtualized Applications on Linux
 
Self-tuning Schedulers for Legacy Real-Time Applications
Self-tuning Schedulers for Legacy Real-Time ApplicationsSelf-tuning Schedulers for Legacy Real-Time Applications
Self-tuning Schedulers for Legacy Real-Time Applications
 
The Wizard of OS: a Heartbeat for Legacy Multimedia Applications
The Wizard of OS: a Heartbeat for Legacy Multimedia ApplicationsThe Wizard of OS: a Heartbeat for Legacy Multimedia Applications
The Wizard of OS: a Heartbeat for Legacy Multimedia Applications
 

Recently uploaded

The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is insideshinachiaurasa2
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesVictorSzoltysek
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...SelfMade bd
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfkalichargn70th171
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Hararemasabamasaba
 
Harnessing ChatGPT - Elevating Productivity in Today's Agile Environment
Harnessing ChatGPT  - Elevating Productivity in Today's Agile EnvironmentHarnessing ChatGPT  - Elevating Productivity in Today's Agile Environment
Harnessing ChatGPT - Elevating Productivity in Today's Agile EnvironmentVictorSzoltysek
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfonteinmasabamasaba
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastPapp Krisztián
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...Jittipong Loespradit
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in sowetomasabamasaba
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfonteinmasabamasaba
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 

Recently uploaded (20)

The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
Harnessing ChatGPT - Elevating Productivity in Today's Agile Environment
Harnessing ChatGPT  - Elevating Productivity in Today's Agile EnvironmentHarnessing ChatGPT  - Elevating Productivity in Today's Agile Environment
Harnessing ChatGPT - Elevating Productivity in Today's Agile Environment
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 

An Evaluation of Adaptive Partitioning of Real-Time Workloads on Linux

  • 1. T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna An Evaluation of Adaptive Partitioning An Evaluation of Adaptive Partitioning of Real-Time Workloads on Linux of Real-Time Workloads on Linux IEEE ISORC 2021 IEEE ISORC 2021 A. Stevanato, T. Cucinotta, L. Abeni Real-Time Systems Laboratory Scuola Superiore Sant’Anna Pisa, Italy D. B. de Oliveira Red Hat, Inc. Pisa, Italy
  • 2. T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 2 Background and Background and motivations #1/2 motivations #1/2 Relentless growth of computing demand ● satisfied for years by the “frequency-race” ● up to the impossibility of handling heat dissipation – Intel’s cancelled plans for 5GHz-10GHz CPUs in 2004 ● => we’ve been living a “multi-core race” in the last decade Multi-core/multi-processing pervasive ● not only in High-Performance Computing (HPC) ● but also in embedded and real-time systems ● noteworthy modern use-cases: high-performance embedded scenarios – intelligent real-time driving assistants – real-time video processing and object recognition – real-time time-series forecasting ● Need for a multitude of “acceleration” technologies: – Multi-core, GP-GPU, FPGA
  • 3. T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 3 Background and Background and motivations #2/2 motivations #2/2 ● Open real-time systems – dynamic real-time task sets on multi-core platforms ● new RT tasks may ask to be admitted at any time ● running RT tasks may terminate and leave the system – requirement of minimizing energy consumption (mobile devices) ● Frequent migration of RT tasks among cores – when using utilization-based heuristics for task/core assignment
  • 4. T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 4 Focus of the paper ● Adaptively Partitioned EDF (apEDF) on multi-cores ● Originally appeared in – “Adaptive Partitioning of Real-Time Tasks on Multiple Processors,” ACM SAC 2020 – “EDF scheduling of real-time tasks on multiple cores: adaptive partitioning vs. global scheduling,” ACM SIGAPP Applied Computing Review, 2020 ● Contributions of this paper – Prototype implementation in the Linux kernel (SCHED_DEADLINE) – Experimental evaluation apEDF ● RT tasks scheduled using CBS/EDF reservations – each task with parameters (WCET Ci, min inter-arrival period Ti) has associated a dedicated reservation with (Qi, Pi) ● normally Qi = Ci and Pi = Ti – at any time tasks (and their reservations) are partitioned among cores ● reservations {(Qi, Pi)}i deployed onto each core respect ● CBS handles a current budget qi(t) and abs deadline di(t)C Proposed Approach #1/2 Proposed Approach #1/2
  • 5. T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 5 Proposed Approach #2/2 Proposed Approach #2/2 ● apEDF – utilization-based heuristics for task/core assignment – First-Fit ● good: simple utilization-based overall test ● bad: for energy-management ● on DVFS frequencies scale up/down => would need to migrate tasks to restore FF invariant – Worst-Fit ● good: load spread across cores – allows for keeping lower DVFS frequencies ● bad: if a new big U arrives => would need to migrate tasks to make room
  • 6. T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 6 Adaptively Partitioned EDF Adaptively Partitioned EDF ● apEDF – placement logic called on ● real-time task arrival ● task wake-up – placement algorithm for new task τi = (Ci, Pi) 1.if task on non-overloaded core => keep it where it is 2.find a core j that does not overload once accepting the task – Uj + Ci/Pi <= Ulub – using first-fit (FF) 3.if no such core exists, then fallback to global EDF ● apEDF general properties – no more migrations once a schedulable partitioning is found – if a schedulable partitioning does not exist, or cannot be found by FF, then fallback to global EDF (rule 3.) – apEDF is not work-conserving (cores may be idle with tasks ready to run)
  • 7. T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 7 Adaptively Partitioned EDF Adaptively Partitioned EDF (variant with adaptive pull) (variant with adaptive pull) ● a2 pEDF – when a core goes idle, pull the non-executing task from overloaded cores with the most urgent deadline ● a task is pulled only if its core j has Uj > Ulub – a2 pEDF general properties ● recovers a minimum of work-conserving property (of all Linux schedulers when not under rt-throttling) – but it may still leave cores idle with tasks ready to run ● no more migrations once a schedulable partitioning is found
  • 8. T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 8 apEDF apEDF Schedulability Analysis Schedulability Analysis ● apEDF schedulability can be analyzed applying – Lopez et al., “Worst-case utilization bound for EDF scheduling on real-time multiprocessor systems,” ECRTS 2000 ● given m tasks to be placed on n identical CPUs ● worst-case of ● However, the FF invariant is not guaranteed (e.g., task death or change of scheduling policy)
  • 9. T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 9 ● Original SCHED_DEADLINE (kernel 5.7.0) Implementation #1/2 Implementation #1/2 sched/core.c try_to_wakeup() wake_up_new_task() sched_exec() sched/deadline.c select_task_rq() __schedule() schedule_tail() __sched_setscheduler() select_task_rq_dl() balance_callback() push_dl_tasks() push_dl_task() activate_task() enqueue_task_dl() enqueue_task() dequeue_task() deactivate_task() dequeue_task_dl() select_task_rq_dl() cpudl_find() pick_next_task() put_prev_balance() balance_dl() pull_dl_task() find_later_rq()
  • 10. T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 10 Implementation #2/2 Implementation #2/2 ● SCHED_DEADLINE+apEDF (kernel 5.7.0) sched/deadline.c push_dl_task() find_xf_suitable_rq() first_fit_cpu_find() worst_fit_cpu_find() find_later_rq() cpudl_find() select_task_rq_dl() push_dl_task_gedf() push_dl_task_xf() Scheduler sysctl/proc tunables /proc/sys/kernel/sched_dl_policy /proc/sys/kernel/sched_dl_xf_pull /proc/sys/kernel/sched_dl_fallback_to_gedf pull_dl_task() pick_earliest_pushable_dl_task() pull_dl_task_gedf() pull_dl_task_ff() pull_dl_task_wf()
  • 11. T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 11 Experimental Evaluation Experimental Evaluation vs Simulations (SAC’20) vs Simulations (SAC’20) Simulations from SAC’20 Experiments on Linux (patched rt-app) Note: total utilization beyond maximum theoretical value (5/2=2.5)
  • 12. T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 12 Experimental Evaluation Experimental Evaluation vs Simulations (SAC’20) vs Simulations (SAC’20)
  • 13. T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 13 Conclusions & Future Work Conclusions & Future Work ● Proposed Linux implementation of apEDF/a2 pEDF ● Presented experimental results – 4 cores (up to 3.8 U and 15 tasks) – 8 core s (up to 7.4 U and 25 tasks) ● Obtained results – deadline misses not too different from global EDF – deadline misses better with a2 pEDF at high utilizations – migrations tremendously better than global EDF ● Future Work – improve patch-set – experiment with data-intensive workload – integrate with Energy Aware Scheduling (EAS) – deeper comparison between FF and WF with DVFS – evaluate effectiveness on ARM big.LITTLE / DynamIQ
  • 14. T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 14 Our related publications Our related publications Journals ● A. Mascitti, T. Cucinotta, M. Marinoni, L. Abeni. "Dynamic Partitioned Scheduling of Real-Time Tasks on ARM big.LITTLE Architectures," Elsevier Journal of Systems and Software (JSS), Vol. 173, March 2021 ● D. B. De Oliveira, R. S. De Oliveira, T. Cucinotta. "A thread synchronization model for the PREEMPT_RT Linux kernel," Elsevier Journal of Systems Architecture (JSA), Vol. 107, August 2020 ● L. Abeni, T. Cucinotta. "EDF scheduling of real-time tasks on multiple cores: adaptive partitioning vs. global scheduling," ACM SIGAPP Applied Computing Review, Vol. 20, Issue 2 (June 2020), pp. 5-18, July 2020 ● A. Balsini, T. Cucinotta, L. Abeni, J. Fernandes, P. Burk, P. Bellasi, M. Rasmussen. "Energy-Efficient Low-latency Audio on Android," Elsevier Journal of Systems and Software (JSS), Vol. 152, pp. 182-195, June 2019 ● Improving Responsiveness of Time-Sensitive Applications by Exploiting Dynamic Task Dependencies, Software: Practice and Experience, April 2018 Conferences ● T. Cucinotta, L. Abeni. "Migrating Constant Bandwidth Servers on Multi-Cores," 29th International Conference on Real-Time Networks and Systems (RTNS 2021), April 7-9, 2021, Nantes, France ● A. Mascitti, T. Cucinotta. "Dynamic Partitioned Scheduling of Real-Time DAG Tasks on ARM big.LITTLE Architectures," 29th International Conference on Real-Time Networks and Systems (RTNS 2021), April 7-9, 2021, Nantes, France. ● D. B. de Oliveira, D. Casini, R. S. de Oliveira, T. Cucinotta. "Demystifying the Real-Time Linux Scheduling Latency," 32nd Euromicro Conference on Real-Time Systems (ECRTS 2020), July 7-10, 2020, Modena, Italy. ● E. Quiñones, S. Royuela, C. Scordino, L. M. Pinho, T. Cucinotta, B. Forsberg, A. Hamann, D. Ziegenbein, P. Gai, A. Biondi, L. Benini, J. Rollo, H. Saoud, R. Soulat, G. Mando, L. Rucher, L. Nogueira. "The AMPERE Project: A Model-driven development framework for highly Parallel and EneRgy-Efficient computation supporting multi-criteria optimization," 23rd IEEE International Symposium on Real-Time Distributed Computing (IEEE ISORC 2020), May 19-21, 2020, Nashville, Tennessee, USA. ● A. Mascitti, T. Cucinotta, L. Abeni. "Heuristic partitioning of real-time tasks on multi-processors," 23rd IEEE International Symposium on Real-Time Distributed Computing (IEEE ISORC 2020), May 19-21, 2020, Nashville, Tennessee, USA. ● G. Serra, G. Ara, P. Fara, T. Cucinotta. "An Architecture for Declarative Real-Time Scheduling on Linux," 23rd IEEE International Symposium on Real-Time Distributed Computing (IEEE ISORC 2020), May 19-21, 2020, Nashville, Tennessee, USA.
  • 15. T. Cucinotta – Real-Time Systems Laboratory (ReTiS) – Scuola Superiore Sant’Anna 15 Questions ? tommaso.cucinotta@santannapisa.it http://retis.santannapisa.it/~tommaso Thanks! Thanks!