SlideShare a Scribd company logo
Identifying Optimal Trade-Offs between CPU 
Time Usage and Temporal Constraints 
Using Search" 
Shiva Nejati, Lionel C. Briand" 
SnT Centre, University of Luxembourg" 
" 
"
Today’s cars are developed in a distributed way 
2
Integration of software from different sources is 
essential in most embedded software industries 
3
Software integration involves multiple stakeholders 
4 
Car Makers 
Software 
Part Suppliers 
Software 
Integrator
Software integrators have to fulfill conflicting 
objectives 
5 
Car Makers Part Suppliers 
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
It is challenging to satisfy all objectives 
Car Makers r0 r1 r2 r3 Part Suppliers 
Minimize CPU time usage 
Execute r0 to r3 close to one another. 
0ms 5ms 10ms 15ms 20ms 25ms 30ms 
0ms 5ms 10ms 15ms 20ms 25ms 30ms 
0ms 5ms 10ms 15ms 20ms 25ms 30ms 
6 
4ms 
3ms 
2ms 
1 slot 
2 slots 
3 slots
7 
An multi-objective decision support approach 
# of slots 
2ms 3ms 4ms 
CPU time usage 
3 
2 
1 
Pareto Front Solutions/ 
Tradeoff Solutions 
Car Makers 
Part Suppliers
Constrained Optimization Problem (COP) 
8 
Objective Function(s): 
Minimizing CPU time usage 
Minimizing # of time slots 
Constraint model: 
Tasks and their timing properties 
Scheduling policy 
Search Space: 
Vectors of Task Offsets
• Tasks and their timing properties 
• Static Cyclic Scheduling 
0ms 5ms 10ms 15ms 20ms 25ms 30ms 
9 
Constraint model 
period = 5ms period = 10ms
10 
4ms 
3ms 
Search Space 
Vectors of task offsets (initial delays) 
r0 r1 r2 r3 
o0=0, o1=0, o2=0, o3=0 
0ms 5ms 10ms 15ms 20ms 25ms 30ms 
o0=0, o1=5, o2=5, o3=0 
0ms 5ms 10ms 15ms 20ms 25ms 30ms
(1) CPU time usage 
0ms 5ms 10ms 15ms 20ms 25ms 30ms 
11 
Objective Functions 
(2) Number of Time slots 
0ms 5ms 10ms 15ms 20ms 25ms 30ms 
Runnables r0, r1, r2, and r3 run in within at most two 
consecutive time slots infinitely often iff 
for every ri, rj 2 {r0, r1, r2, r3}, for some l < 2 
oi ⌘ oj + l ⇥ 5 mod(gcd(periodi, periodj)) 
3ms
12 
Solution Overview
13 
Multi-Objective Search algorithm 
Non-dominated Sorting Genetic Algorithm version 2 
(NSGA-II) 
Solution Representation 
a vector of offset values: o0=0, o1=5, o2=5, o3=0 
Search operators 
Selection: Binary tournament selection with replacement 
Crossover: uniform cross over 
Mutation: 
o0=0, o1=5, o2=5, o3=0 à o0=0, o1=5, o2=10, o3=0 
Fitness Functions 
max CPU time usage per time slot, and 
number of time slots during which the tasks run
14 
Case Study and Experiments 
An automotive software project with 430 
tasks. 
These 430 tasks can be scheduled in almost 
10^320 different ways.
15 
Naïve execution of the runnables 
5.34ms 5.34ms 
5 ms 
Time 
CPU time usage (ms) 
CPU time usage exceeds the size of the slot (5ms)
16 
After applying our work 
5 ms 
ms) 
(usage [2.04ms … 1.45ms] 
time CPU Time Depending on the number of slots, CPU time usage is 
between 2.04ms to 1.45ms. So, around 60% to 70% of 
each time slot is guaranteed to be free.
17 
Research Questions 
RQ1 Sanity Check 
Do we do better than a trivial (random search) 
solution? 
RQ2 Effectiveness 
Are we able to find solutions that are close to 
known lower bounds? 
RQ3 Performance 
How long does it take to compute solutions? 
RQ4 Usefulness 
Are we able to find useful trade-off solutions?
18 
RQ2: Effectiveness 
most relaxed temporal constraint 
(# of time slots = ∞) 
most restricted temporal constraint 
(# of time slots for each group = 1) 
1.43 ms 
2.03 ms 
most relaxed temporal constraint 
(# of time slots = ∞) 
1.45 ms 
most restricted temporal constraint 
(# of time slots for each group = 1) 
2.04 ms 
Our Results Ideal CPU usage
19 
RQ3: Performance 
Our approach generates optimal results in about 
5 min 
90 80 
min) 
(Time 70 
60 
50 
40 
NSGA-II(25,000) Random(25,000) 
Time (min) 
8 
7 
6 
5 
4 
NSGA-II(250,000) Random(250,000)
20 
RQ4: Usefulness 
# of slots 
1.452.04 
CPU time usage (ms) 
21 
14 
12 
1.56 
1 
2 
3 
Boundary Trade Offs 
Interesting 
Solutions
Related Work 
• 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^320 
21
Our Contributions 
22 
Casting a schedulability analysis problem as a 
multi-objective constrained optimization problem 
Objective Functions 
Constraint models 
Search Space 
Scaling to a very large industry case study 
Search Space of 10^320 
Our approach is applicable to similar CPU 
utilization problems if 
Tasks timing properties are known although tasks may 
come from third parties 
A constraint model capturing the scheduling policy can 
be defined

More Related Content

PDF
A Language Support for Exhaustive Fault-Injection in Message-Passing System M...
PPT
Parallel computing chapter 3
PPTX
Aca11 bk2 ch9
PDF
Dynamic programing 2
PPT
Tridiagonal solver in gpu
PPTX
Time space trade off
PPTX
Lotstreaming
DOCX
Matrix Multiplication Report
A Language Support for Exhaustive Fault-Injection in Message-Passing System M...
Parallel computing chapter 3
Aca11 bk2 ch9
Dynamic programing 2
Tridiagonal solver in gpu
Time space trade off
Lotstreaming
Matrix Multiplication Report

What's hot (20)

PPT
Lecture1
PPTX
Performance analysis(Time & Space Complexity)
PPT
Analytical Models of Parallel Programs
PPTX
Thesis Presentation
PPT
Chap4 slides
PPTX
Seminar on Parallel and Concurrent Programming
PPTX
Matrix multiplication
PPT
ODP
Parallel Programming on the ANDC cluster
PPT
Complexity Analysis
PPT
Chap5 slides
PPTX
Data Structures - Lecture 1 [introduction]
PPT
Chap6 slides
PDF
Cost optimal algorithm
PDF
Presentation_Parallel GRASP algorithm for job shop scheduling
PPT
Chap7 slides
PDF
Framework for Inter-Model Analysis of Cyber-Physical Systems
PPT
Chap2 slides
Lecture1
Performance analysis(Time & Space Complexity)
Analytical Models of Parallel Programs
Thesis Presentation
Chap4 slides
Seminar on Parallel and Concurrent Programming
Matrix multiplication
Parallel Programming on the ANDC cluster
Complexity Analysis
Chap5 slides
Data Structures - Lecture 1 [introduction]
Chap6 slides
Cost optimal algorithm
Presentation_Parallel GRASP algorithm for job shop scheduling
Chap7 slides
Framework for Inter-Model Analysis of Cyber-Physical Systems
Chap2 slides
Ad

Viewers also liked (20)

PDF
Testing Dynamic Behavior in Executable Software Models - Making Cyber-physica...
PDF
Behind an Application Firewall, Are we Safe from SQL Injection Attacks?
PDF
Generating Complex and Faulty Test Data Through Model-Based Mutation Analysis
PDF
Keynote SBST 2014 - Search-Based Testing
PDF
A Model-Based Framework for Probabilistic Simulation of Legal Policies
PDF
Worst-Case Scheduling of Software Tasks
PDF
Automated detection and resolution of legal cross references
PDF
Model Based Test Validation and Oracles for Data Acquisition Systems
PDF
A Scalable Approach for Malware Detec2on through Bounded Feature Space Behavi...
PDF
MiL Testing of Highly Configurable Continuous Controllers
PDF
Minimizing CPU Shortage Risks in Integrated Embedded Software
PDF
Automated Testing for SQL Injection Vulnerabilities: An Input Mutation Approach
PDF
Combining genetic algoriths and constraint programming to support stress test...
PDF
Using UML for Modeling Procedural Legal Rules
PDF
Improving Requirements Glossary Construction via Clustering
PDF
Software Engineering Research: Leading a Double-Agent Life.
PDF
OCLR: A More Expressive, Pattern-Based Temporal Extension of OCL
PDF
Research-Based Innovation with Industry: Project Experience and Lessons Learned
PDF
Traceability Beyond Source Code: An Elusive Target?
PDF
Documented Requirements are not Useless After All!
Testing Dynamic Behavior in Executable Software Models - Making Cyber-physica...
Behind an Application Firewall, Are we Safe from SQL Injection Attacks?
Generating Complex and Faulty Test Data Through Model-Based Mutation Analysis
Keynote SBST 2014 - Search-Based Testing
A Model-Based Framework for Probabilistic Simulation of Legal Policies
Worst-Case Scheduling of Software Tasks
Automated detection and resolution of legal cross references
Model Based Test Validation and Oracles for Data Acquisition Systems
A Scalable Approach for Malware Detec2on through Bounded Feature Space Behavi...
MiL Testing of Highly Configurable Continuous Controllers
Minimizing CPU Shortage Risks in Integrated Embedded Software
Automated Testing for SQL Injection Vulnerabilities: An Input Mutation Approach
Combining genetic algoriths and constraint programming to support stress test...
Using UML for Modeling Procedural Legal Rules
Improving Requirements Glossary Construction via Clustering
Software Engineering Research: Leading a Double-Agent Life.
OCLR: A More Expressive, Pattern-Based Temporal Extension of OCL
Research-Based Innovation with Industry: Project Experience and Lessons Learned
Traceability Beyond Source Code: An Elusive Target?
Documented Requirements are not Useless After All!
Ad

Similar to Identifying Optimal Trade-Offs between CPU Time Usage and Temporal Constraints (20)

PPTX
Ruby3x3: How are we going to measure 3x
PDF
What’s eating python performance
PDF
Javantura v4 - Java and lambdas and streams - are they better than for loops ...
PPTX
Crash course on data streaming (with examples using Apache Flink)
PDF
.NET Fest 2019. Николай Балакин. Микрооптимизации в мире .NET
PDF
04 performance
PDF
03 performance
PDF
Accelerating the Development of Efficient CP Optimizer Models
PDF
Parallel Computing - Lec 6
PDF
Chronix Poster for the Poster Session FAST 2017
PPTX
2. Module_1_Computer Performance, Metrics, Measurement, & Evaluation (1).pptx
PDF
Altair slideshare nanofluidx summary 2017
PPT
computer architecture.
PPT
Optimization_model_of the propsed kiiraEV assembly lineprstn
PPTX
Værktøjer udviklet på AAU til analyse af SCJ programmer
PDF
Cloud Computing in the Cloud (Hadoop.tw Meetup @ 2015/11/23)
PDF
Automated Parameterization of Performance Models from Measurements
PPTX
QRS16: NOTICE: A Framework for Non-functional Testing of Compilers
PDF
Runtime Performance Optimizations for an OpenFOAM Simulation
PPTX
Protecting Your API with Redis by Jane Paek - Redis Day Seattle 2020
Ruby3x3: How are we going to measure 3x
What’s eating python performance
Javantura v4 - Java and lambdas and streams - are they better than for loops ...
Crash course on data streaming (with examples using Apache Flink)
.NET Fest 2019. Николай Балакин. Микрооптимизации в мире .NET
04 performance
03 performance
Accelerating the Development of Efficient CP Optimizer Models
Parallel Computing - Lec 6
Chronix Poster for the Poster Session FAST 2017
2. Module_1_Computer Performance, Metrics, Measurement, & Evaluation (1).pptx
Altair slideshare nanofluidx summary 2017
computer architecture.
Optimization_model_of the propsed kiiraEV assembly lineprstn
Værktøjer udviklet på AAU til analyse af SCJ programmer
Cloud Computing in the Cloud (Hadoop.tw Meetup @ 2015/11/23)
Automated Parameterization of Performance Models from Measurements
QRS16: NOTICE: A Framework for Non-functional Testing of Compilers
Runtime Performance Optimizations for an OpenFOAM Simulation
Protecting Your API with Redis by Jane Paek - Redis Day Seattle 2020

More from Lionel Briand (20)

PDF
LTM: Scalable and Black-box Similarity-based Test Suite Minimization based on...
PDF
TEASMA: A Practical Methodology for Test Adequacy Assessment of Deep Neural N...
PDF
Automated Test Case Repair Using Language Models
PDF
Automated Testing and Safety Analysis of Deep Neural Networks
PDF
FlakyFix: Using Large Language Models for Predicting Flaky Test Fix Categorie...
PDF
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
PDF
Precise and Complete Requirements? An Elusive Goal
PDF
Large Language Models for Test Case Evolution and Repair
PDF
Metamorphic Testing for Web System Security
PDF
Simulator-based Explanation and Debugging of Hazard-triggering Events in DNN-...
PDF
Fuzzing for CPS Mutation Testing
PDF
Data-driven Mutation Analysis for Cyber-Physical Systems
PDF
Many-Objective Reinforcement Learning for Online Testing of DNN-Enabled Systems
PDF
ATM: Black-box Test Case Minimization based on Test Code Similarity and Evolu...
PDF
Black-box Safety Analysis and Retraining of DNNs based on Feature Extraction ...
PDF
PRINS: Scalable Model Inference for Component-based System Logs
PDF
Revisiting the Notion of Diversity in Software Testing
PDF
Applications of Search-based Software Testing to Trustworthy Artificial Intel...
PDF
Autonomous Systems: How to Address the Dilemma between Autonomy and Safety
PDF
Mathematicians, Social Scientists, or Engineers? The Split Minds of Software ...
LTM: Scalable and Black-box Similarity-based Test Suite Minimization based on...
TEASMA: A Practical Methodology for Test Adequacy Assessment of Deep Neural N...
Automated Test Case Repair Using Language Models
Automated Testing and Safety Analysis of Deep Neural Networks
FlakyFix: Using Large Language Models for Predicting Flaky Test Fix Categorie...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Precise and Complete Requirements? An Elusive Goal
Large Language Models for Test Case Evolution and Repair
Metamorphic Testing for Web System Security
Simulator-based Explanation and Debugging of Hazard-triggering Events in DNN-...
Fuzzing for CPS Mutation Testing
Data-driven Mutation Analysis for Cyber-Physical Systems
Many-Objective Reinforcement Learning for Online Testing of DNN-Enabled Systems
ATM: Black-box Test Case Minimization based on Test Code Similarity and Evolu...
Black-box Safety Analysis and Retraining of DNNs based on Feature Extraction ...
PRINS: Scalable Model Inference for Component-based System Logs
Revisiting the Notion of Diversity in Software Testing
Applications of Search-based Software Testing to Trustworthy Artificial Intel...
Autonomous Systems: How to Address the Dilemma between Autonomy and Safety
Mathematicians, Social Scientists, or Engineers? The Split Minds of Software ...

Recently uploaded (20)

PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PPTX
L1 - Introduction to python Backend.pptx
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PDF
Designing Intelligence for the Shop Floor.pdf
PDF
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PDF
CCleaner Pro 6.38.11537 Crack Final Latest Version 2025
PDF
Complete Guide to Website Development in Malaysia for SMEs
PPTX
Operating system designcfffgfgggggggvggggggggg
PPTX
Computer Software and OS of computer science of grade 11.pptx
PPTX
Monitoring Stack: Grafana, Loki & Promtail
PPTX
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
PPTX
AMADEUS TRAVEL AGENT SOFTWARE | AMADEUS TICKETING SYSTEM
PPTX
Transform Your Business with a Software ERP System
PDF
Digital Systems & Binary Numbers (comprehensive )
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
PDF
iTop VPN 6.5.0 Crack + License Key 2025 (Premium Version)
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
Internet Downloader Manager (IDM) Crack 6.42 Build 41
L1 - Introduction to python Backend.pptx
CHAPTER 2 - PM Management and IT Context
How to Choose the Right IT Partner for Your Business in Malaysia
Designing Intelligence for the Shop Floor.pdf
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
Wondershare Filmora 15 Crack With Activation Key [2025
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
CCleaner Pro 6.38.11537 Crack Final Latest Version 2025
Complete Guide to Website Development in Malaysia for SMEs
Operating system designcfffgfgggggggvggggggggg
Computer Software and OS of computer science of grade 11.pptx
Monitoring Stack: Grafana, Loki & Promtail
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
AMADEUS TRAVEL AGENT SOFTWARE | AMADEUS TICKETING SYSTEM
Transform Your Business with a Software ERP System
Digital Systems & Binary Numbers (comprehensive )
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
iTop VPN 6.5.0 Crack + License Key 2025 (Premium Version)

Identifying Optimal Trade-Offs between CPU Time Usage and Temporal Constraints

  • 1. Identifying Optimal Trade-Offs between CPU Time Usage and Temporal Constraints Using Search" Shiva Nejati, Lionel C. Briand" SnT Centre, University of Luxembourg" " "
  • 2. Today’s cars are developed in a distributed way 2
  • 3. Integration of software from different sources is essential in most embedded software industries 3
  • 4. Software integration involves multiple stakeholders 4 Car Makers Software Part Suppliers Software Integrator
  • 5. Software integrators have to fulfill conflicting objectives 5 Car Makers Part Suppliers 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
  • 6. It is challenging to satisfy all objectives Car Makers r0 r1 r2 r3 Part Suppliers Minimize CPU time usage Execute r0 to r3 close to one another. 0ms 5ms 10ms 15ms 20ms 25ms 30ms 0ms 5ms 10ms 15ms 20ms 25ms 30ms 0ms 5ms 10ms 15ms 20ms 25ms 30ms 6 4ms 3ms 2ms 1 slot 2 slots 3 slots
  • 7. 7 An multi-objective decision support approach # of slots 2ms 3ms 4ms CPU time usage 3 2 1 Pareto Front Solutions/ Tradeoff Solutions Car Makers Part Suppliers
  • 8. Constrained Optimization Problem (COP) 8 Objective Function(s): Minimizing CPU time usage Minimizing # of time slots Constraint model: Tasks and their timing properties Scheduling policy Search Space: Vectors of Task Offsets
  • 9. • Tasks and their timing properties • Static Cyclic Scheduling 0ms 5ms 10ms 15ms 20ms 25ms 30ms 9 Constraint model period = 5ms period = 10ms
  • 10. 10 4ms 3ms Search Space Vectors of task offsets (initial delays) r0 r1 r2 r3 o0=0, o1=0, o2=0, o3=0 0ms 5ms 10ms 15ms 20ms 25ms 30ms o0=0, o1=5, o2=5, o3=0 0ms 5ms 10ms 15ms 20ms 25ms 30ms
  • 11. (1) CPU time usage 0ms 5ms 10ms 15ms 20ms 25ms 30ms 11 Objective Functions (2) Number of Time slots 0ms 5ms 10ms 15ms 20ms 25ms 30ms Runnables r0, r1, r2, and r3 run in within at most two consecutive time slots infinitely often iff for every ri, rj 2 {r0, r1, r2, r3}, for some l < 2 oi ⌘ oj + l ⇥ 5 mod(gcd(periodi, periodj)) 3ms
  • 13. 13 Multi-Objective Search algorithm Non-dominated Sorting Genetic Algorithm version 2 (NSGA-II) Solution Representation a vector of offset values: o0=0, o1=5, o2=5, o3=0 Search operators Selection: Binary tournament selection with replacement Crossover: uniform cross over Mutation: o0=0, o1=5, o2=5, o3=0 à o0=0, o1=5, o2=10, o3=0 Fitness Functions max CPU time usage per time slot, and number of time slots during which the tasks run
  • 14. 14 Case Study and Experiments An automotive software project with 430 tasks. These 430 tasks can be scheduled in almost 10^320 different ways.
  • 15. 15 Naïve execution of the runnables 5.34ms 5.34ms 5 ms Time CPU time usage (ms) CPU time usage exceeds the size of the slot (5ms)
  • 16. 16 After applying our work 5 ms ms) (usage [2.04ms … 1.45ms] time CPU Time Depending on the number of slots, CPU time usage is between 2.04ms to 1.45ms. So, around 60% to 70% of each time slot is guaranteed to be free.
  • 17. 17 Research Questions RQ1 Sanity Check Do we do better than a trivial (random search) solution? RQ2 Effectiveness Are we able to find solutions that are close to known lower bounds? RQ3 Performance How long does it take to compute solutions? RQ4 Usefulness Are we able to find useful trade-off solutions?
  • 18. 18 RQ2: Effectiveness most relaxed temporal constraint (# of time slots = ∞) most restricted temporal constraint (# of time slots for each group = 1) 1.43 ms 2.03 ms most relaxed temporal constraint (# of time slots = ∞) 1.45 ms most restricted temporal constraint (# of time slots for each group = 1) 2.04 ms Our Results Ideal CPU usage
  • 19. 19 RQ3: Performance Our approach generates optimal results in about 5 min 90 80 min) (Time 70 60 50 40 NSGA-II(25,000) Random(25,000) Time (min) 8 7 6 5 4 NSGA-II(250,000) Random(250,000)
  • 20. 20 RQ4: Usefulness # of slots 1.452.04 CPU time usage (ms) 21 14 12 1.56 1 2 3 Boundary Trade Offs Interesting Solutions
  • 21. Related Work • 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^320 21
  • 22. Our Contributions 22 Casting a schedulability analysis problem as a multi-objective constrained optimization problem Objective Functions Constraint models Search Space Scaling to a very large industry case study Search Space of 10^320 Our approach is applicable to similar CPU utilization problems if Tasks timing properties are known although tasks may come from third parties A constraint model capturing the scheduling policy can be defined