SlideShare a Scribd company logo
1 of 13
Download to read offline
The Interplay of Compile-time
& Run-time Options for Performance Prediction
Luc Lesoil, Mathieu Acher, Xhevahire Tërnava, Arnaud Blouin and Jean-Marc Jézéquel
The Systems and Software Product Line Conference 2021
06-09 september, Leicester, UK
Run-time configurations matter
Threads = ’auto-detect’
Tile size = 64 pixels
Progressive refine = True
Thread(s) = 1
Tile size = 12 pixels
Progressive refine = False
Rendering a 3D scene
1
2
~ 3 seconds
~ 3 minutes
Performances
Run-time
configurations
Input data
What about
compile-time
configurations?
2
git clone https://github.com/mirror/x264
./x264 --me tesa
Com
Dow d
Run
Use
./configure [--enable-asm] …
make
./configure --disable-asm …
make
./x264 --me umh ./x264 --me tesa ./x264 --me umh
10.6 seconds 3.4 seconds 81.5 seconds 25.9 seconds
What about compile-time options? An example with
A B
1 1
2 2
3
This paper investigates how compile-time options can affect software
performances and how compile-time options interact with run-time options
4
Motivations
Outperform the run-time performance of the default compile-time configuration
- Linux packages (fixed values)
- Manual compilation (default values)
5
Understand the interplay between the compile-time and the run-time levels
Are performance models only valid for default compile-time configuration ?
Research questions
RQ2 - How to tune software performances at the compile-time level?
RQ1 - Do compile-time options change the performance distributions of configurable systems?
6
RQ1.1. Do the run-time performances of configurable systems vary with compile-time options?
RQ1.2. How many performance can we gain/lose when changing the default compile-time configuration?
RQ2.1. Do compile-time options interact with the run-time options?
RQ2.2. How to use these interactions to find a set of good compile-time options and tune the configurable system?
Gathering data to answer research questions
7
1
2 3
4
5
6
RQ1.1. Do the run-time performances of configurable systems vary with compile-time options?
RQ1 - Do compile-time options change the performance distributions?
8
Fixed run-time config.
Different compile-time config.
Results:
- Size => stable
- xz => stable
- x264 => vary with run-time
- nodeJS => vary
RQ1.2. How many performance can we gain/lose when changing the default compile-time configuration?
RQ1 - Do compile-time options change the performance distributions?
9
Performance Ratio (r, c) =
performance of the run-time configuration r for the compile-time configuration c
performance of the run-time configuration r for the default compile-time configuration
Results:
- Size => no gain
- xz and poppler => negligible
- Good default performance
- Can vary with input data
RQ2.1. Do compile-time options interact with the run-time options?
10
RQ2 - How to tune software performances at the compile-time level?
Spearman correlations (3a)
Random Forest importances (3b)
Results (nodeJS):
- Compile-time options alter perf. rankings
-> Interplay
- Both compile- and run-time are useful
-> Interplay
RQ2.2. How to use these interactions to find a set of good compile-time options and tune the configurable system?
11
RQ2 - How to tune software performances at the compile-time level?
Predict the best compile-time configuration
Vary the training size : 1%, 5% and 10% of measurements
Depict the performance ratio per input and per training size in Table 3
Results (nodeJS):
Do not need too much data - 5% is enough to get close to the oracle
Up to 50 % improvement of performance
12
Conclusion
Compile-time configurations matter
Future work : Automate the tuning of software systems at compile-time ?
THANKS!
Any questions?
13
Feel free to contact us if you want to discuss this topic.

More Related Content

What's hot

Lab3 advanced port scanning 30 oct 21
Lab3 advanced port scanning 30 oct 21Lab3 advanced port scanning 30 oct 21
Lab3 advanced port scanning 30 oct 21
Hussain111321
 
Identifying Optimal Trade-Offs between CPU Time Usage and Temporal Constraints
Identifying Optimal Trade-Offs between CPU Time Usage and Temporal ConstraintsIdentifying Optimal Trade-Offs between CPU Time Usage and Temporal Constraints
Identifying Optimal Trade-Offs between CPU Time Usage and Temporal Constraints
Lionel Briand
 
High performance parallel prefix adders with fast carry chain logic
High performance parallel prefix adders with fast carry chain logicHigh performance parallel prefix adders with fast carry chain logic
High performance parallel prefix adders with fast carry chain logic
iaemedu
 

What's hot (20)

Mcs 041 assignment solution (2020-21)
Mcs 041 assignment solution (2020-21)Mcs 041 assignment solution (2020-21)
Mcs 041 assignment solution (2020-21)
 
High-Performance Physics Solver Design for Next Generation Consoles
High-Performance Physics Solver Design for Next Generation ConsolesHigh-Performance Physics Solver Design for Next Generation Consoles
High-Performance Physics Solver Design for Next Generation Consoles
 
Architectural Optimizations for High Performance and Energy Efficient Smith-W...
Architectural Optimizations for High Performance and Energy Efficient Smith-W...Architectural Optimizations for High Performance and Energy Efficient Smith-W...
Architectural Optimizations for High Performance and Energy Efficient Smith-W...
 
HC-4012, Complex Network Clustering Using GPU-based Parallel Non-negative Mat...
HC-4012, Complex Network Clustering Using GPU-based Parallel Non-negative Mat...HC-4012, Complex Network Clustering Using GPU-based Parallel Non-negative Mat...
HC-4012, Complex Network Clustering Using GPU-based Parallel Non-negative Mat...
 
vkFX: Effect(ive) approach for Vulkan API
vkFX: Effect(ive) approach for Vulkan APIvkFX: Effect(ive) approach for Vulkan API
vkFX: Effect(ive) approach for Vulkan API
 
Faster R-CNN - PR012
Faster R-CNN - PR012Faster R-CNN - PR012
Faster R-CNN - PR012
 
Lab3 advanced port scanning 30 oct 21
Lab3 advanced port scanning 30 oct 21Lab3 advanced port scanning 30 oct 21
Lab3 advanced port scanning 30 oct 21
 
SDAccel Design Contest: SDAccel and F1 Instances
SDAccel Design Contest: SDAccel and F1 InstancesSDAccel Design Contest: SDAccel and F1 Instances
SDAccel Design Contest: SDAccel and F1 Instances
 
Generalized Pipeline Parallelism for DNN Training
Generalized Pipeline Parallelism for DNN TrainingGeneralized Pipeline Parallelism for DNN Training
Generalized Pipeline Parallelism for DNN Training
 
Direct3D12 and the Future of Graphics APIs by Dave Oldcorn
Direct3D12 and the Future of Graphics APIs by Dave OldcornDirect3D12 and the Future of Graphics APIs by Dave Oldcorn
Direct3D12 and the Future of Graphics APIs by Dave Oldcorn
 
Opml 19-presentation-pdf
Opml 19-presentation-pdfOpml 19-presentation-pdf
Opml 19-presentation-pdf
 
A Highly Parallel Semi-Dataflow FPGA Architecture for Large-Scale N-Body Simu...
A Highly Parallel Semi-Dataflow FPGA Architecture for Large-Scale N-Body Simu...A Highly Parallel Semi-Dataflow FPGA Architecture for Large-Scale N-Body Simu...
A Highly Parallel Semi-Dataflow FPGA Architecture for Large-Scale N-Body Simu...
 
PeNeLoop: Parallelizing Federated SPARQL queries in presence of replicated fr...
PeNeLoop: Parallelizing Federated SPARQL queries in presence of replicated fr...PeNeLoop: Parallelizing Federated SPARQL queries in presence of replicated fr...
PeNeLoop: Parallelizing Federated SPARQL queries in presence of replicated fr...
 
Cloud Foundry Container Runtime (CFCR) & Production Kubernetes
Cloud Foundry Container Runtime (CFCR) & Production KubernetesCloud Foundry Container Runtime (CFCR) & Production Kubernetes
Cloud Foundry Container Runtime (CFCR) & Production Kubernetes
 
Design of 32 bit Parallel Prefix Adders
Design of 32 bit Parallel Prefix Adders Design of 32 bit Parallel Prefix Adders
Design of 32 bit Parallel Prefix Adders
 
XeMPUPiL: Towards Performance-aware Power Capping Orchestrator for the Xen Hy...
XeMPUPiL: Towards Performance-aware Power Capping Orchestrator for the Xen Hy...XeMPUPiL: Towards Performance-aware Power Capping Orchestrator for the Xen Hy...
XeMPUPiL: Towards Performance-aware Power Capping Orchestrator for the Xen Hy...
 
Enhance! Real-time webcam video super-resolution
Enhance! Real-time webcam video super-resolutionEnhance! Real-time webcam video super-resolution
Enhance! Real-time webcam video super-resolution
 
GCF
GCFGCF
GCF
 
Identifying Optimal Trade-Offs between CPU Time Usage and Temporal Constraints
Identifying Optimal Trade-Offs between CPU Time Usage and Temporal ConstraintsIdentifying Optimal Trade-Offs between CPU Time Usage and Temporal Constraints
Identifying Optimal Trade-Offs between CPU Time Usage and Temporal Constraints
 
High performance parallel prefix adders with fast carry chain logic
High performance parallel prefix adders with fast carry chain logicHigh performance parallel prefix adders with fast carry chain logic
High performance parallel prefix adders with fast carry chain logic
 

Similar to SPLC 2021 - The Interplay of Compile-time and Run-time Options for Performance Prediction

May2010 hex-core-opt
May2010 hex-core-optMay2010 hex-core-opt
May2010 hex-core-opt
Jeff Larkin
 

Similar to SPLC 2021 - The Interplay of Compile-time and Run-time Options for Performance Prediction (20)

Alex Smola, Professor in the Machine Learning Department, Carnegie Mellon Uni...
Alex Smola, Professor in the Machine Learning Department, Carnegie Mellon Uni...Alex Smola, Professor in the Machine Learning Department, Carnegie Mellon Uni...
Alex Smola, Professor in the Machine Learning Department, Carnegie Mellon Uni...
 
Understand and Harness the Capabilities of Intel® Xeon Phi™ Processors
Understand and Harness the Capabilities of Intel® Xeon Phi™ ProcessorsUnderstand and Harness the Capabilities of Intel® Xeon Phi™ Processors
Understand and Harness the Capabilities of Intel® Xeon Phi™ Processors
 
AWS re:Invent 2016: Deep Dive on Amazon EC2 Instances, Featuring Performance ...
AWS re:Invent 2016: Deep Dive on Amazon EC2 Instances, Featuring Performance ...AWS re:Invent 2016: Deep Dive on Amazon EC2 Instances, Featuring Performance ...
AWS re:Invent 2016: Deep Dive on Amazon EC2 Instances, Featuring Performance ...
 
Eco-friendly Linux kernel development
Eco-friendly Linux kernel developmentEco-friendly Linux kernel development
Eco-friendly Linux kernel development
 
AWS re:Invent 2016: [JK REPEAT] Deep Dive on Amazon EC2 Instances, Featuring ...
AWS re:Invent 2016: [JK REPEAT] Deep Dive on Amazon EC2 Instances, Featuring ...AWS re:Invent 2016: [JK REPEAT] Deep Dive on Amazon EC2 Instances, Featuring ...
AWS re:Invent 2016: [JK REPEAT] Deep Dive on Amazon EC2 Instances, Featuring ...
 
Machine-Learning-based Performance Heuristics for Runtime CPU/GPU Selection
Machine-Learning-based Performance Heuristics for Runtime CPU/GPU SelectionMachine-Learning-based Performance Heuristics for Runtime CPU/GPU Selection
Machine-Learning-based Performance Heuristics for Runtime CPU/GPU Selection
 
Deep Dive on Amazon EC2 instances
Deep Dive on Amazon EC2 instancesDeep Dive on Amazon EC2 instances
Deep Dive on Amazon EC2 instances
 
DevoxxUK: Optimizating Application Performance on Kubernetes
DevoxxUK: Optimizating Application Performance on KubernetesDevoxxUK: Optimizating Application Performance on Kubernetes
DevoxxUK: Optimizating Application Performance on Kubernetes
 
SRV402 Deep Dive on Amazon EC2 Instances, Featuring Performance Optimization ...
SRV402 Deep Dive on Amazon EC2 Instances, Featuring Performance Optimization ...SRV402 Deep Dive on Amazon EC2 Instances, Featuring Performance Optimization ...
SRV402 Deep Dive on Amazon EC2 Instances, Featuring Performance Optimization ...
 
Parallelism in a NumPy-based program
Parallelism in a NumPy-based programParallelism in a NumPy-based program
Parallelism in a NumPy-based program
 
Cheap HPC
Cheap HPCCheap HPC
Cheap HPC
 
SRV402 Deep Dive on Amazon EC2 Instances, Featuring Performance Optimization ...
SRV402 Deep Dive on Amazon EC2 Instances, Featuring Performance Optimization ...SRV402 Deep Dive on Amazon EC2 Instances, Featuring Performance Optimization ...
SRV402 Deep Dive on Amazon EC2 Instances, Featuring Performance Optimization ...
 
TestUpload
TestUploadTestUpload
TestUpload
 
Apache Beam: A unified model for batch and stream processing data
Apache Beam: A unified model for batch and stream processing dataApache Beam: A unified model for batch and stream processing data
Apache Beam: A unified model for batch and stream processing data
 
Deep Dive on Amazon EC2 Instances (March 2017)
Deep Dive on Amazon EC2 Instances (March 2017)Deep Dive on Amazon EC2 Instances (March 2017)
Deep Dive on Amazon EC2 Instances (March 2017)
 
.NET Fest 2019. Николай Балакин. Микрооптимизации в мире .NET
.NET Fest 2019. Николай Балакин. Микрооптимизации в мире .NET.NET Fest 2019. Николай Балакин. Микрооптимизации в мире .NET
.NET Fest 2019. Николай Балакин. Микрооптимизации в мире .NET
 
From Hours to Minutes: The Journey of Optimizing Mask-RCNN and BERT Using MXNet
From Hours to Minutes: The Journey of Optimizing Mask-RCNN and BERT Using MXNetFrom Hours to Minutes: The Journey of Optimizing Mask-RCNN and BERT Using MXNet
From Hours to Minutes: The Journey of Optimizing Mask-RCNN and BERT Using MXNet
 
Playing BBR with a userspace network stack
Playing BBR with a userspace network stackPlaying BBR with a userspace network stack
Playing BBR with a userspace network stack
 
May2010 hex-core-opt
May2010 hex-core-optMay2010 hex-core-opt
May2010 hex-core-opt
 
Comparison of Open Source Virtualization Technology
Comparison of Open Source Virtualization TechnologyComparison of Open Source Virtualization Technology
Comparison of Open Source Virtualization Technology
 

Recently uploaded

Conjugation, transduction and transformation
Conjugation, transduction and transformationConjugation, transduction and transformation
Conjugation, transduction and transformation
Areesha Ahmad
 
development of diagnostic enzyme assay to detect leuser virus
development of diagnostic enzyme assay to detect leuser virusdevelopment of diagnostic enzyme assay to detect leuser virus
development of diagnostic enzyme assay to detect leuser virus
NazaninKarimi6
 
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune WaterworldsBiogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Sérgio Sacani
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Pests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdfPests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdf
PirithiRaju
 
Pests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdfPests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdf
PirithiRaju
 
Digital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptxDigital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptx
MohamedFarag457087
 

Recently uploaded (20)

GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)
 
Vip profile Call Girls In Lonavala 9748763073 For Genuine Sex Service At Just...
Vip profile Call Girls In Lonavala 9748763073 For Genuine Sex Service At Just...Vip profile Call Girls In Lonavala 9748763073 For Genuine Sex Service At Just...
Vip profile Call Girls In Lonavala 9748763073 For Genuine Sex Service At Just...
 
Conjugation, transduction and transformation
Conjugation, transduction and transformationConjugation, transduction and transformation
Conjugation, transduction and transformation
 
development of diagnostic enzyme assay to detect leuser virus
development of diagnostic enzyme assay to detect leuser virusdevelopment of diagnostic enzyme assay to detect leuser virus
development of diagnostic enzyme assay to detect leuser virus
 
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune WaterworldsBiogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Proteomics: types, protein profiling steps etc.
Proteomics: types, protein profiling steps etc.Proteomics: types, protein profiling steps etc.
Proteomics: types, protein profiling steps etc.
 
GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)
 
FAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
FAIRSpectra - Enabling the FAIRification of Spectroscopy and SpectrometryFAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
FAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
 
Kochi ❤CALL GIRL 84099*07087 ❤CALL GIRLS IN Kochi ESCORT SERVICE❤CALL GIRL
Kochi ❤CALL GIRL 84099*07087 ❤CALL GIRLS IN Kochi ESCORT SERVICE❤CALL GIRLKochi ❤CALL GIRL 84099*07087 ❤CALL GIRLS IN Kochi ESCORT SERVICE❤CALL GIRL
Kochi ❤CALL GIRL 84099*07087 ❤CALL GIRLS IN Kochi ESCORT SERVICE❤CALL GIRL
 
FAIRSpectra - Enabling the FAIRification of Analytical Science
FAIRSpectra - Enabling the FAIRification of Analytical ScienceFAIRSpectra - Enabling the FAIRification of Analytical Science
FAIRSpectra - Enabling the FAIRification of Analytical Science
 
Pests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdfPests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdf
 
Pulmonary drug delivery system M.pharm -2nd sem P'ceutics
Pulmonary drug delivery system M.pharm -2nd sem P'ceuticsPulmonary drug delivery system M.pharm -2nd sem P'ceutics
Pulmonary drug delivery system M.pharm -2nd sem P'ceutics
 
GBSN - Microbiology (Unit 3)
GBSN - Microbiology (Unit 3)GBSN - Microbiology (Unit 3)
GBSN - Microbiology (Unit 3)
 
Pests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdfPests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdf
 
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
❤Jammu Kashmir Call Girls 8617697112 Personal Whatsapp Number 💦✅.
 
COST ESTIMATION FOR A RESEARCH PROJECT.pptx
COST ESTIMATION FOR A RESEARCH PROJECT.pptxCOST ESTIMATION FOR A RESEARCH PROJECT.pptx
COST ESTIMATION FOR A RESEARCH PROJECT.pptx
 
Forensic Biology & Its biological significance.pdf
Forensic Biology & Its biological significance.pdfForensic Biology & Its biological significance.pdf
Forensic Biology & Its biological significance.pdf
 
Call Girls Ahmedabad +917728919243 call me Independent Escort Service
Call Girls Ahmedabad +917728919243 call me Independent Escort ServiceCall Girls Ahmedabad +917728919243 call me Independent Escort Service
Call Girls Ahmedabad +917728919243 call me Independent Escort Service
 
Digital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptxDigital Dentistry.Digital Dentistryvv.pptx
Digital Dentistry.Digital Dentistryvv.pptx
 

SPLC 2021 - The Interplay of Compile-time and Run-time Options for Performance Prediction

  • 1. The Interplay of Compile-time & Run-time Options for Performance Prediction Luc Lesoil, Mathieu Acher, Xhevahire Tërnava, Arnaud Blouin and Jean-Marc Jézéquel The Systems and Software Product Line Conference 2021 06-09 september, Leicester, UK
  • 2. Run-time configurations matter Threads = ’auto-detect’ Tile size = 64 pixels Progressive refine = True Thread(s) = 1 Tile size = 12 pixels Progressive refine = False Rendering a 3D scene 1 2 ~ 3 seconds ~ 3 minutes Performances Run-time configurations Input data What about compile-time configurations? 2
  • 3. git clone https://github.com/mirror/x264 ./x264 --me tesa Com Dow d Run Use ./configure [--enable-asm] … make ./configure --disable-asm … make ./x264 --me umh ./x264 --me tesa ./x264 --me umh 10.6 seconds 3.4 seconds 81.5 seconds 25.9 seconds What about compile-time options? An example with A B 1 1 2 2 3
  • 4. This paper investigates how compile-time options can affect software performances and how compile-time options interact with run-time options 4
  • 5. Motivations Outperform the run-time performance of the default compile-time configuration - Linux packages (fixed values) - Manual compilation (default values) 5 Understand the interplay between the compile-time and the run-time levels Are performance models only valid for default compile-time configuration ?
  • 6. Research questions RQ2 - How to tune software performances at the compile-time level? RQ1 - Do compile-time options change the performance distributions of configurable systems? 6 RQ1.1. Do the run-time performances of configurable systems vary with compile-time options? RQ1.2. How many performance can we gain/lose when changing the default compile-time configuration? RQ2.1. Do compile-time options interact with the run-time options? RQ2.2. How to use these interactions to find a set of good compile-time options and tune the configurable system?
  • 7. Gathering data to answer research questions 7 1 2 3 4 5 6
  • 8. RQ1.1. Do the run-time performances of configurable systems vary with compile-time options? RQ1 - Do compile-time options change the performance distributions? 8 Fixed run-time config. Different compile-time config. Results: - Size => stable - xz => stable - x264 => vary with run-time - nodeJS => vary
  • 9. RQ1.2. How many performance can we gain/lose when changing the default compile-time configuration? RQ1 - Do compile-time options change the performance distributions? 9 Performance Ratio (r, c) = performance of the run-time configuration r for the compile-time configuration c performance of the run-time configuration r for the default compile-time configuration Results: - Size => no gain - xz and poppler => negligible - Good default performance - Can vary with input data
  • 10. RQ2.1. Do compile-time options interact with the run-time options? 10 RQ2 - How to tune software performances at the compile-time level? Spearman correlations (3a) Random Forest importances (3b) Results (nodeJS): - Compile-time options alter perf. rankings -> Interplay - Both compile- and run-time are useful -> Interplay
  • 11. RQ2.2. How to use these interactions to find a set of good compile-time options and tune the configurable system? 11 RQ2 - How to tune software performances at the compile-time level? Predict the best compile-time configuration Vary the training size : 1%, 5% and 10% of measurements Depict the performance ratio per input and per training size in Table 3 Results (nodeJS): Do not need too much data - 5% is enough to get close to the oracle Up to 50 % improvement of performance
  • 12. 12 Conclusion Compile-time configurations matter Future work : Automate the tuning of software systems at compile-time ?
  • 13. THANKS! Any questions? 13 Feel free to contact us if you want to discuss this topic.