minimizing cpu shortage risks in integrated embedded software
DESCRIPTION
ASE 2013 presentation - Research project with Delphi on embedded software integration and minimizing risk of CPU shortageTRANSCRIPT
![Page 1: Minimizing CPU Shortage Risks in Integrated Embedded Software](https://reader034.vdocuments.mx/reader034/viewer/2022052622/559258411a28ab20328b45fc/html5/thumbnails/1.jpg)
Minimizing CPU Time Shortage Risks in Integrated Embedded Software!
Shiva Nejati, Morayo Adedjouma, Lionel C. Briand!SnT Centre, University of Luxembourg!
!Jonathan Hellebaut, Julien Begey, and Yves Clement!
Delphi Automotive, Luxembourg!!
November 14, 2013!
![Page 2: Minimizing CPU Shortage Risks in Integrated Embedded Software](https://reader034.vdocuments.mx/reader034/viewer/2022052622/559258411a28ab20328b45fc/html5/thumbnails/2.jpg)
Today’s cars are developed in a distributed way
2
![Page 3: Minimizing CPU Shortage Risks in Integrated Embedded Software](https://reader034.vdocuments.mx/reader034/viewer/2022052622/559258411a28ab20328b45fc/html5/thumbnails/3.jpg)
Software integration is essential in distributed development
3
![Page 4: Minimizing CPU Shortage Risks in Integrated Embedded Software](https://reader034.vdocuments.mx/reader034/viewer/2022052622/559258411a28ab20328b45fc/html5/thumbnails/4.jpg)
Software integration involves multiple stakeholders
4
• Develop software optimized for their specific hardware
• Provide part suppliers with
runnables (exe)
• Integrate car makers software with their own platform
• Deploy final software on ECUs and send them to car makers
Car Makers Part Suppliers
![Page 5: Minimizing CPU Shortage Risks in Integrated Embedded Software](https://reader034.vdocuments.mx/reader034/viewer/2022052622/559258411a28ab20328b45fc/html5/thumbnails/5.jpg)
Stakeholders have different objectives
5
• Objective: Effective execution and synchronization of runnables
• Some runnables should execute simultaneously or in a certain order
• Objective: Effective usage of CPU time
• The CPU time used by all
the runnables should remain as low as possible over time
Car Makers Part Suppliers
![Page 6: Minimizing CPU Shortage Risks in Integrated Embedded Software](https://reader034.vdocuments.mx/reader034/viewer/2022052622/559258411a28ab20328b45fc/html5/thumbnails/6.jpg)
0ms 5ms 10ms 15ms 20ms 25ms 30ms
0ms 5ms 10ms 15ms 20ms 25ms 30ms
0ms 5ms 10ms 15ms 20ms 25ms 30ms
It is challenging to satisfy all objectives
6
4ms
3ms
2ms
✔
✗
Car Makers Part Suppliers r0 r1 r2 r3
Execute r0 to r2 together Minimize CPU time usage
![Page 7: Minimizing CPU Shortage Risks in Integrated Embedded Software](https://reader034.vdocuments.mx/reader034/viewer/2022052622/559258411a28ab20328b45fc/html5/thumbnails/7.jpg)
7
Our approach to minimization of CPU time usage
Optimization
while satisfying synchronization/temporal constraints
Explicit Time
Model for real-time embedded systems
Search
meta-heuristic single objective search algorithms
10^27
an industrial case study with a large search space
![Page 8: Minimizing CPU Shortage Risks in Integrated Embedded Software](https://reader034.vdocuments.mx/reader034/viewer/2022052622/559258411a28ab20328b45fc/html5/thumbnails/8.jpg)
8
Problem Formulation
![Page 9: Minimizing CPU Shortage Risks in Integrated Embedded Software](https://reader034.vdocuments.mx/reader034/viewer/2022052622/559258411a28ab20328b45fc/html5/thumbnails/9.jpg)
0ms 5ms 10ms 15ms 20ms 25ms 30ms
9
Scheduling mechanism in automotive systems
AUTOSAR scheduling also known as static cyclic scheduling
period = 5ms period = 10ms
![Page 10: Minimizing CPU Shortage Risks in Integrated Embedded Software](https://reader034.vdocuments.mx/reader034/viewer/2022052622/559258411a28ab20328b45fc/html5/thumbnails/10.jpg)
10
How to minimize CPU time usage?
4ms
3ms
By setting offsets (i.e., initial delays) for runnables
0ms 5ms 10ms 15ms 20ms 25ms 30ms
0ms 5ms 10ms 15ms 20ms 25ms 30ms
o0=0, o1=0, o2=0, o3=0
o0=0, o1=5, o2=5, o3=0
r0 r1 r2 r3
![Page 11: Minimizing CPU Shortage Risks in Integrated Embedded Software](https://reader034.vdocuments.mx/reader034/viewer/2022052622/559258411a28ab20328b45fc/html5/thumbnails/11.jpg)
0ms 5ms 10ms 15ms 20ms 25ms 30ms
11
How to satisfy synchronization constraints?
Runnables r0, r1, and r2 should run in the same time slot infinitely often
r0 r1 r2 r3o0=0, o1=5, o2=5, o3=0
oi ⌘ oj mod(gcd(periodi, periodj))for ri, rj 2 {r0, r1, r2}
0ms 5ms 10ms 15ms 20ms 25ms 30ms
o0=0, o1=5, o2=10, o3=0 ✗
Classical number theory (Chinese remainder theorem)
Runnables r0, r1, and r2 run in the same time slot infinitely often iff
![Page 12: Minimizing CPU Shortage Risks in Integrated Embedded Software](https://reader034.vdocuments.mx/reader034/viewer/2022052622/559258411a28ab20328b45fc/html5/thumbnails/12.jpg)
12
Solution Overview
![Page 13: Minimizing CPU Shortage Risks in Integrated Embedded Software](https://reader034.vdocuments.mx/reader034/viewer/2022052622/559258411a28ab20328b45fc/html5/thumbnails/13.jpg)
13
Single-objective Search algorithms hill Climbing and tabu Search and their variations
Solution Representation
a vector of offset values: o0=0, o1=5, o2=5, o3=0 Tweak operator
o0=0, o1=5, o2=5, o3=0 à o0=0, o1=5, o2=10, o3=0
Synchronization Constraints offset values are modified to satisfy constraints
Fitness Function max CPU time usage per time slot
![Page 14: Minimizing CPU Shortage Risks in Integrated Embedded Software](https://reader034.vdocuments.mx/reader034/viewer/2022052622/559258411a28ab20328b45fc/html5/thumbnails/14.jpg)
14
Case Study and Experiments
An automotive software project with 430 runnables
![Page 15: Minimizing CPU Shortage Risks in Integrated Embedded Software](https://reader034.vdocuments.mx/reader034/viewer/2022052622/559258411a28ab20328b45fc/html5/thumbnails/15.jpg)
15
5.34ms 5.34ms5 ms
Time
CPU
tim
e us
age
(ms)
CPU time usage exceeds the size of the slot (5ms)
Without optimization
![Page 16: Minimizing CPU Shortage Risks in Integrated Embedded Software](https://reader034.vdocuments.mx/reader034/viewer/2022052622/559258411a28ab20328b45fc/html5/thumbnails/16.jpg)
16
CPU time usage always remains less than 2.13ms, so more than half of each slot is guaranteed to be free
2.13ms
5 ms
Time
CPU
tim
e us
age
(ms)
After applying our work
![Page 17: Minimizing CPU Shortage Risks in Integrated Embedded Software](https://reader034.vdocuments.mx/reader034/viewer/2022052622/559258411a28ab20328b45fc/html5/thumbnails/17.jpg)
(ms)
(s)
Best CPU usage
Time to find Best CPU usage
17
Experiment Results (Sanity Check) Our algorithms were better than random search
Tabu C
PU ti
me
usag
e (m
s)
Only Tabu search was not better than random search
Random
Hill Climbing
![Page 18: Minimizing CPU Shortage Risks in Integrated Embedded Software](https://reader034.vdocuments.mx/reader034/viewer/2022052622/559258411a28ab20328b45fc/html5/thumbnails/18.jpg)
18
Experiment Results (Effectiveness) Hill Climbing performed best compared to other algorithms Running Hill Climbing for three times, it hits the best result with a probability of 87.5% Our results were better than some existing (deterministic) algorithms based on real-time scheduling theory
![Page 19: Minimizing CPU Shortage Risks in Integrated Embedded Software](https://reader034.vdocuments.mx/reader034/viewer/2022052622/559258411a28ab20328b45fc/html5/thumbnails/19.jpg)
• Feasibility analysis
– Schedulable or not? v We perform optimization by finding the best solutions among all
the feasible ones
• Logical models – Correct/incorrect?
v We provide an explicit time model enabling us to perform a quantitative analysis
• Symbolically represent the model and rely on model-checkers or
constraint solvers – State explosion problem
v We scale to very large search spaces: 10^27
Related Work
19
![Page 20: Minimizing CPU Shortage Risks in Integrated Embedded Software](https://reader034.vdocuments.mx/reader034/viewer/2022052622/559258411a28ab20328b45fc/html5/thumbnails/20.jpg)
20
Summary
Optimization
while satisfying synchronization/temporal constraints
Explicit Time
Model for real-time embedded systems
Search
meta-heuristic single objective search algorithms
10^27
an industrial case study with a large search space