1
Constant Bandwidth Servers with Constrained Deadlines
Daniel Casini, Luca Abeni, Alessandro Biondi, Tommaso Cucinotta, and Giorgio Buttazzo Scuola Superiore Sant’Anna – ReTiS Laboratory Pisa, Italy
with Constrained Deadlines Daniel Casini , Luca Abeni, Alessandro - - PowerPoint PPT Presentation
Constant Bandwidth Servers with Constrained Deadlines Daniel Casini , Luca Abeni, Alessandro Biondi, Tommaso Cucinotta, and Giorgio Buttazzo Scuola Superiore SantAnna ReTiS Laboratory Pisa, Italy 1 This talk in a nutshell Challanges in
1
Daniel Casini, Luca Abeni, Alessandro Biondi, Tommaso Cucinotta, and Giorgio Buttazzo Scuola Superiore Sant’Anna – ReTiS Laboratory Pisa, Italy
2
3
“Global Scheduling Not Required” by Brandenburg and Gul for static workloads (RTSS 2016) “Semi-Partitioned Scheduling of Dynamic Real- Time Workload” by Casini et al. for dynamic workloads (ECRTS 2017)
4
“Global Scheduling Not Required” by Brandenburg and Gul for static workloads (RTSS 2016) “Semi-Partitioned Scheduling of Dynamic Real- Time Workload” by Casini et al. for dynamic workloads (ECRTS 2017)
Both requires constrained-deadline (C=D) reservations!
5
6
A bandwidth 𝛽 = 𝑅
𝑄
A bounded maximum service-delay ∆= 2(𝑄 − 𝑅)
P 2P
∆= 2(𝑄 − 𝑅)
Q Worst-case scenario for the service delay
7
P 2P
∆
𝑢 sbf(𝑢)
Case of implicit-deadlines
8
q, d = ቊ (𝑟, 𝑒) (𝑅, 𝑢 + 𝑄) 𝑗𝑔 𝑢 < 𝑒 − 𝑟/𝛽 𝑝𝑢ℎ𝑓𝑠𝑥𝑗𝑡𝑓"
This rule has been derived by EDF schedulability theory for implicit-deadline tasks (utilization- based), which indeed cannot be re-used to ensure schedulability with constrained deadlines!
9
P 2P
∆= P + (D − Q)
Q 𝜗 D P+D
CPU
100%
10
How to modify the server rules for providing a given bandwidth and a better maximum- service delay, without sacrificing schedulability? How to achieve a maximum service delay equal to ∆ = 𝐸 + 𝑄 − 2𝑅?
P 2P
∆= D + P −2Q
D P+D Q
11
for soft real-time systems
12
𝑰-𝑫𝑪𝑻𝑬-𝑿 leverages the results proposed by Biondi et al. for real-time self-suspending tasks According to their approach, whenever a server should execute according to EDF scheduling, it consumes its budget independently whether it is self-suspended or not
Alessandro Biondi, Alessio Balsini, and Mauro Marinoni, “Resource reservation for real-time self-suspending tasks: theory and practice” (RTNS 2015)
13
A similar approach can be adopted when a reservation goes idle:
Server goes idle
𝑇1 consumes its budget even if it is idle
t t t t
𝑟2 𝑟1
14
Room for improvement in terms of average-case performance and soft real-time metrics
15
16
Leveraging also the knowledge of
t 𝑒𝑐𝑔(𝑢)
17
t 𝑠𝑒𝑔
𝑗(𝑢, 𝑢∗, 𝑟𝑗,𝑒𝑗)
𝑟𝑗 𝑅𝑗 𝑄
𝑗
𝑢∗ 𝑒𝑗 − 𝑢∗ 𝑒𝑗
Time in which the schedulability test is performed (at run-time)
18
re-use (𝑟, 𝑒) q=Q with d=t+D
19
P 2P
∆= D + P −2Q
D P+D Q
20
21
22
23
First, we generated reservation bandwidths with the Emberson et al. Task-set generator, with:
Periods distributed in [5000; 500000] us Budget obtained as 𝑅𝑗 = 𝛽𝑗𝑄
𝑗
Relative deadline generated with uniform distribution in [𝑅𝑗 + 𝛾(𝑄𝑗 − 𝑅𝑗), 𝑄
𝑗 ]
The workload running into each reservation consist of a single sporadic task
Reservation-set with results to be unschedulable according to the approximated schedulability test have been discarded 100 different reservation-set have been tested
24
Each job running into a reservation (i.e. its computation and inter-arrival time) is controlled by: 𝐷𝑠 =
ഥ 𝑑𝑗 𝑅𝑗
𝑏 =
𝑣𝑗 𝛽𝑗, with 𝛽𝑗 = 𝑅𝑗 𝑄𝑗, and ഥ
𝑣𝑗 =
ഥ 𝑑𝑗 𝑞𝑗
Variance of execution (sc) and inter-arrival times (sp)
The execution time of each job is uniformely distributed in [ഥ 𝑑𝑗 −
𝑡𝑑(sz) 2
, ഥ 𝑑𝑗 +
𝑡𝑑(sz) 2
] The inter-arrival time of each job is uniformely distributed in [ഥ 𝑞𝑗 −
𝑡𝑞(𝑡𝑨) 2
, ഥ 𝑞𝑗 +
𝑡𝑞(𝑡𝑨) 2
]
25
Each job running into a reservation (i.e. its computation and inter-arrival time) is controlled by: 𝐷𝑠 =
ഥ 𝑑𝑗 𝑅𝑗
𝑏 =
𝑣𝑗 𝛽𝑗, with 𝛽𝑗 = 𝑅𝑗 𝑄𝑗, and ഥ
𝑣𝑗 =
ഥ 𝑑𝑗 𝑞𝑗
Variance of execution (sc) and inter-arrival times (sp)
The execution time of each job is uniformely distributed in [ഥ 𝑑𝑗 −
𝑡𝑑(sz) 2
, ഥ 𝑑𝑗 +
𝑡𝑑(sz) 2
] The inter-arrival time of each job is uniformely distributed in [ഥ 𝑞𝑗 −
𝑡𝑞(𝑡𝑨) 2
, ഥ 𝑞𝑗 +
𝑡𝑞(𝑡𝑨) 2
] Ratio between the average ET and the server budget
26
Each job running into a reservation (i.e. its computation and inter-arrival time) is controlled by: 𝐷𝑠 =
ഥ 𝑑𝑗 𝑅𝑗
𝑏 =
𝑣𝑗 𝛽𝑗, with 𝛽𝑗 = 𝑅𝑗 𝑄𝑗, and ഥ
𝑣𝑗 =
ഥ 𝑑𝑗 𝑞𝑗
Variance of execution (sc) and inter-arrival times (sp)
The execution time of each job is uniformely distributed in [ഥ 𝑑𝑗 −
𝑡𝑑(sz) 2
, ഥ 𝑑𝑗 +
𝑡𝑑(sz) 2
] The inter-arrival time of each job is uniformely distributed in [ഥ 𝑞𝑗 −
𝑡𝑞(𝑡𝑨) 2
, ഥ 𝑞𝑗 +
𝑡𝑞(𝑡𝑨) 2
] Ratio between the average task utilization and the server bandwidth
27
Each job running into a reservation (i.e. its computation and inter-arrival time) is controlled by: 𝐷𝑠 =
ഥ 𝑑𝑗 𝑅𝑗
𝑏 =
𝑣𝑗 𝛽𝑗, with 𝛽𝑗 = 𝑅𝑗 𝑄𝑗, and ഥ
𝑣𝑗 =
ഥ 𝑑𝑗 𝑞𝑗
Variance of execution (sc) and inter-arrival times (sp)
The execution time of each job is uniformely distributed in [ഥ 𝑑𝑗 −
𝑡𝑑(sz) 2
, ഥ 𝑑𝑗 +
𝑡𝑑(sz) 2
] The inter-arrival time of each job is uniformely distributed in [ഥ 𝑞𝑗 −
𝑡𝑞(𝑡𝑨) 2
, ഥ 𝑞𝑗 +
𝑡𝑞(𝑡𝑨) 2
] Variances are function of the sz generation parameter
28
The higher the better Relative server workload
29
The higher the better Relative server workload 𝐼−𝐷𝐶𝑇𝐸−𝑆 has up to 60% of improvement over 𝐼−𝐷𝐶𝑇𝐸−𝑋
30
The higher the better Relative server workload 𝐼−𝐷𝐶𝑇𝐸−𝑆 has up to 60% of improvement over 𝐼−𝐷𝐶𝑇𝐸−𝑋 𝐼−𝐷𝐶𝑇𝐸−𝑆 has up to 25% of improvement over 𝐼 − 𝐷𝐶𝑇𝐸
31
The higher the better
32
33
34
35
Guarantees a given bandwidth Bounded delay ∆= D + T −2Q Wake-up budget can be computed in constant time Independent from the schedulability test Compatible also with global scheduling Requires an additional queue for suspended servers Consumes budget also without actually executing
Guarantees a given bandwidth Bounded delay ∆= D + T −2Q Improves soft-real time metrics Wake-up budget can be computed in linear time Not compatible with global scheduling Penalties in terms of schedulability (sufficient test)
36
We proposed three different reservations servers supporting constrained-deadlines All of them allow to provide a given bandwidth and a bounded delay 𝐼−𝐷𝐶𝑇𝐸−𝑋 is independent from the schedulability test Suitable for hard real-time systems 𝐼−𝐷𝐶𝑇𝐸and 𝐼−𝐷𝐶𝑇𝐸−R leverages a specific schedulability test to improve soft real-time metrics The performance of the proposed algorithms has been experimented by means of simulations
37
38
Daniel Casini daniel.casini@sssup.it