Many multiprocessor real-time operating systems offer the possibility to restrict the migrations of any task to a specified subset of processors by setting affinity masks. A notion of &x0022;strong arbitrary processor affinity scheduling&x0022; (strong APA scheduling) has been proposed, this notion avoids schedulability losses due to overly simple implementations of processor affinities. Due to potential overheads, strong APA has not been implemented so far in a real-time operating system. We show that, in the special but highly relevant case of hierarchical processor affinities (HPA), strong APA scheduling can be implemented with a vastly improved runtime complexity. In particular, we present a strong HPA scheduler with a runtime complexity of O(m) per task arrival and O(log n + m2) per task departure, where m is the number of processors and n is the number of tasks, thus improving on the previous bounds of O(m2) and O(m n). The improved runtime algorithms allowed us to implement support for strong hierarchical processor affinities in LITMUS^RT. We benchmarked this implementation on a 24-core platform and observed non-negligible, but still viable runtime overheads. Additionally, in the case of a bilevel affinity hierarchy and when job priorities are based on deadlines, we argue that the performance of our strong HPA scheduler, HPA-EDF, can be related to system optimality in the following way: any collection of jobs that is schedulable (under any policy) on m unit-speed processors subject to hierarchical affinity constraints is correctly scheduled by HPA-EDF on m processors of speed 2.415.

Multiprocessor Real-Time Scheduling with Hierarchical Processor Affinities

Bonifaci Vincenzo;
2016

Abstract

Many multiprocessor real-time operating systems offer the possibility to restrict the migrations of any task to a specified subset of processors by setting affinity masks. A notion of &x0022;strong arbitrary processor affinity scheduling&x0022; (strong APA scheduling) has been proposed, this notion avoids schedulability losses due to overly simple implementations of processor affinities. Due to potential overheads, strong APA has not been implemented so far in a real-time operating system. We show that, in the special but highly relevant case of hierarchical processor affinities (HPA), strong APA scheduling can be implemented with a vastly improved runtime complexity. In particular, we present a strong HPA scheduler with a runtime complexity of O(m) per task arrival and O(log n + m2) per task departure, where m is the number of processors and n is the number of tasks, thus improving on the previous bounds of O(m2) and O(m n). The improved runtime algorithms allowed us to implement support for strong hierarchical processor affinities in LITMUS^RT. We benchmarked this implementation on a 24-core platform and observed non-negligible, but still viable runtime overheads. Additionally, in the case of a bilevel affinity hierarchy and when job priorities are based on deadlines, we argue that the performance of our strong HPA scheduler, HPA-EDF, can be related to system optimality in the following way: any collection of jobs that is schedulable (under any policy) on m unit-speed processors subject to hierarchical affinity constraints is correctly scheduled by HPA-EDF on m processors of speed 2.415.
2016
Istituto di Analisi dei Sistemi ed Informatica ''Antonio Ruberti'' - IASI
affinity mask
arbitrary processor affinity
hierarchical structure
migration
RTOS
File in questo prodotto:
Non ci sono file associati a questo prodotto.

I documenti in IRIS 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.14243/357441
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 13
  • ???jsp.display-item.citation.isi??? 7
social impact