SlideShare una empresa de Scribd logo
1 de 15
Descargar para leer sin conexión
Decision OptimizationDecision Optimization
Concurrent Root Cut Loops
to Exploit Random
Performance Variability
Andrea Tramontani
CPLEX Optimization, IBM
Joint work with
Matteo Fischetti (University of Padova, Italy)
Andrea Lodi (University of Bologna, Italy)
Michele Monaci (University of Padova, Italy)
Domenico Salvagnin (University of Padova, Italy)
INFORMS Fall Conference 2013
2 © 2013 IBM Corporation
Decision OptimizationDecision Optimization
Disclaimer
IBM’s statements regarding its plans, directions, and intent are subject to
change or withdrawal without notice at IBM’s sole discretion. Information
regarding potential future products is intended to outline our general product
direction and it should not be relied on in making a purchasing decision. The
information mentioned regarding potential future products is not a
commitment, promise, or legal obligation to deliver any material, code or
functionality. Information about potential future products may not be
incorporated into any contract. The development, release, and timing of any
future features or functionality described for our products remains at our sole
discretion.
Performance is based on measurements and projections using standard IBM®
benchmarks in a controlled environment. The actual throughput or
performance that any user will experience will vary depending upon many
factors, including considerations such as the amount of multiprogramming in
the user's job stream, the I/O configuration, the storage configuration, and the
workload processed. Therefore, no assurance can be given that an individual
user will achieve results similar to those stated here.
3 © 2013 IBM Corporation
Decision OptimizationDecision Optimization
Outline
Performance variability
Exploiting performance variability for performance improvement
Concurrent root cut loops
– External Implementation with CPLEX 12.5.0
– Internal Implementation and Performance Impact in CPLEX 12.5.1
4 © 2013 IBM Corporation
Decision OptimizationDecision Optimization
Performance Variability
Performance variability is a well known issue intrinsic to MIP:
– Danna (MIP Workshop, 2008)
– Koch et al. (Math. Prog. Comp., 2011)
– Achterberg and Wunderling (Facets of Comb. Optimization, 2013)
– Lodi and T. (INFORMS 2013, Tutorial Section TA49)
MIP Solvers contain various ingredients:
– Heuristics
– Cutting planes
– Criteria for branching variable selection
– ...
Seemingly performance neutral changes (in the code, in the platform, or in the
parameter setting) may have a big impact
– on all those ingredients (separated cuts, heuristic solution found, picked variable
to branch on)
– and therefore on the whole solution process
5 © 2013 IBM Corporation
Decision OptimizationDecision Optimization
Performance Variability (Cont.d)
A natural source of performance variability is the choice of the initial LP basis
Equivalent (but different) optimal solution/bases of the first LP relaxation may lead
to different
– cutting planes
– heuristic solutions
– ...
Reoptimizing with different cutting planes amplifies the diversification
The final root node could be very different in terms of
– Fractional solution
– Dual and primal bounds
– Cuts active in the LP
Branching rules will take different decisions
6 © 2013 IBM Corporation
Decision OptimizationDecision Optimization
Exploiting Performance Variability for Performance Improvement
Fischetti and Monaci (Op. Res., to appear):
– Run CPLEX k times, each time rooted at a different initial LP basis, for few nodes
– Bet the winner and let it run up to completion
Carvajal, Ahmed, Nemhauser, Furman, Goel, Shao (Opt. Online, 2013):
– Run k single threaded branch-and-cuts with different parameter setting instead
of one single branch-and-cut with k threads
– Different strategies to share information are tested
Fischetti, Lodi, Monaci, Salvagnin, T. (submitted):
– Concurrent root cut loops
All ideas available in CPLEX
7 © 2013 IBM Corporation
Decision OptimizationDecision Optimization
Distributed Concurrent Optimization and Distributed Parallel MIP
CPLEX 12.5.0 (2012): CPLEX Remote Object Interface
– Interface to develop distributed parallel algorithms
– “parmipopt“ shipped example: solve the same problem on different machines
with different parameter settings on each machine
CPLEX 12.6.0 (upcoming): Deterministic Distributed Parallel MIP
– Similar to Yuji Shinano et. al. (ParaSCIP and ParaCPLEX), but deterministic
– One master process coordinates k workers on a deterministic basis
– Racing ramp-up phase
• all workers solve model, each with different parameter configuration
• regular synchronization based on deterministic time (report status and share
primal bounds)
• automatic stop criterion selects winner
– Distributed parallel branch-and-cut phase
• Distribute some nodes from ramp-up winner to other workers
• Run the winner up to completion
– By default, we do infinite ramp-up: Deterministic Distributed Concurrent
Optimization
– User can decide to do rampup + distributed branch-and-cut or distributed
branch-and-cut only
8 © 2013 IBM Corporation
Decision OptimizationDecision Optimization
Concurrent Root Cut Loops
More classical context: one single machine with multi cores (shared memory)
Exploit multi-threading and performance variability at root node:
– Run k concurrent root cut loops in a parallel fashion, each one rooted at a
different LP basis
– Along the process, share cuts and feasible solutions among the k cut loops
Then do regular parallel branch-and-cut
Preprocessing + LP solve
Cut Loop #1 Cut Loop #2 Cut Loop #k...
Parellel Branch-and-cut
9 © 2013 IBM Corporation
Decision OptimizationDecision Optimization
External implementation: CPLEX 12.5.0 with callbacks
Preprocess all the instances once, then run all the code with 1 thread only and
presolver disabled.
Sampling phase:
For h = 1, ..., k-1
– Solve the root node using random seed h
– store cuts and incumbent solution available at the end of the root node in a pool
Final run using random seed k: compare
– CPXDEF: CPLEX with an empty usercut callback installed
– KSAMPLE: CPLEX with
• Usercut callback that separate cuts from the pool only once at the end of
root node
• Heuristic callback that installs the incumbent only once at the end or root
node.
10 © 2013 IBM Corporation
Decision OptimizationDecision Optimization
External Implementation: test set and fake assumption
Sampling phase is done with k = 10
Final run (CPXDEF vs. KSAMPLE) is done with 5 different random seeds
Test set made of publicy available MIP models: MIPLIB2010 benchmark and primal
test sets
Fake assumption:
– We assume multi-threading is for free and we do not include the time for the
sampling phase in KSAMPLE
– 23 models solved in the sampling phase are removed from the test set:
We are left with 94 models
11 © 2013 IBM Corporation
Decision OptimizationDecision Optimization
The results indicate the idea has some potential, but
– Disregarding the time for the sampling phase is a big bias against CPXDEF
– CPXDEF is far away from CPLEX default
– 94 models only can just give some insights (speed up varies from 1.56x to 1.00x
depending on the random seed)
External Implementation: computational results
1.00
0.79
1.00
0.77
1.00
1.00
1.00
0.77
1.00
0.64
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
seed 1 seed 2 seed 3 seed 4 seed 5
CPXDEF
KSAMPLE
94 models
(MIPLIB2010)
1.56x1.56x1.30x1.30x1.00x1.00x1.30x1.30x1.27x1.27x
12 © 2013 IBM Corporation
Decision OptimizationDecision Optimization
Internal Implementation in CPLEX 12.5.1
Forget about large K (we just made it with K = 2)
– Multi-threading is not for free
– We also want to apply other methods at the root node
– More cuts typically means better dual bound,
better dual bound does not mean less time to solve
Create diversification in the parallel cut loop by changing
– The basis
– The random seed
– Other parameters
Be conservative with the cuts:
– share cuts between the two cut loops,
– but be clever when selecting the cuts to be shared
13 © 2013 IBM Corporation
Decision OptimizationDecision Optimization
Shake
Internal Implementation in CPLEX 12.5.1 (Cont.d)
Preprocessing + LP solve
Cut Loop #1 Cut Loop #2
Parellel Branch-and-cut
14 © 2013 IBM Corporation
Decision OptimizationDecision Optimization
0.98
0.98
0.95
0.99
0.98
0.97
0.96
0.92
0.98
0.98
0.95
0.94
0.86
0.97
0.98
0
0.2
0.4
0.6
0.8
1
>1s >10s >100s
seed 1
seed 2
seed 3
seed 4
seed 5
Concurrent Root Cut Loops: Performance Impact in CPLEX 12.5.1
All ModelsAll Models
≈≈18641864
modelsmodels
≈≈ 10891089
modelsmodels
≈≈ 565565
modelsmodels
1.02x1.02x 1.04x1.04x 1.05x1.05x
Date: 23 May 2013
Testset: 3243 models
Machine: Intel X5650 @ 2.67GHz, 24 GB RAM, 12 threads
Timelimit: 10,000 sec
15 © 2013 IBM Corporation
Decision OptimizationDecision Optimization
0.98
0.98
0.95
0.99
0.98
0.97
0.96
0.92
0.98
0.98
0.95
0.94
0.86
0.97
0.98
0
0.2
0.4
0.6
0.8
1
>1s >10s >100s
seed 1
seed 2
seed 3
seed 4
seed 5
Concurrent Root Cut Loops: Performance Impact in CPLEX 12.5.1
0.97
0.96
0.91
0.97
0.97
0.96
0.94
0.88
0.97
0.96
0.92
0.91
0.80
0.95
0.96
0
0.2
0.4
0.6
0.8
1
>1s >10s >100s
seed 1
seed 2
seed 3
seed 4
seed 5
All ModelsAll Models
Affected ModelsAffected Models
≈≈18641864
modelsmodels
≈≈ 10891089
modelsmodels
≈≈ 565565
modelsmodels
≈≈ 1100 (59%)1100 (59%)
modelsmodels
≈≈ 686 (63%)686 (63%)
modelsmodels
≈≈ 372 (66%)372 (66%)
modelsmodels
Date: 23 May 2013
Testset: 3243 models
Machine: Intel X5650 @ 2.67GHz, 24 GB RAM, 12 threads
Timelimit: 10,000 sec
1.04x1.04x 1.06x1.06x 1.09x1.09x
1.02x1.02x 1.04x1.04x 1.05x1.05x

Más contenido relacionado

La actualidad más candente

CPLEX 12.5.1 remote object - June 2013
CPLEX 12.5.1 remote object - June 2013CPLEX 12.5.1 remote object - June 2013
CPLEX 12.5.1 remote object - June 2013Roland Wunderling
 
2009 : Solving linear optimization problems with MOSEK
2009 : Solving linear optimization problems with MOSEK2009 : Solving linear optimization problems with MOSEK
2009 : Solving linear optimization problems with MOSEKjensenbo
 
Accelerating the Development of Efficient CP Optimizer Models
Accelerating the Development of Efficient CP Optimizer ModelsAccelerating the Development of Efficient CP Optimizer Models
Accelerating the Development of Efficient CP Optimizer ModelsPhilippe Laborie
 
CP Optimizer Walkthrough
CP Optimizer WalkthroughCP Optimizer Walkthrough
CP Optimizer WalkthroughPaulShawIBM
 
An introduction to CP Optimizer
An introduction to CP OptimizerAn introduction to CP Optimizer
An introduction to CP OptimizerPhilippe Laborie
 
Modeling and Solving Resource-Constrained Project Scheduling Problems with IB...
Modeling and Solving Resource-Constrained Project Scheduling Problems with IB...Modeling and Solving Resource-Constrained Project Scheduling Problems with IB...
Modeling and Solving Resource-Constrained Project Scheduling Problems with IB...Philippe Laborie
 
Conditional interval variables: A powerful concept for modeling and solving c...
Conditional interval variables: A powerful concept for modeling and solving c...Conditional interval variables: A powerful concept for modeling and solving c...
Conditional interval variables: A powerful concept for modeling and solving c...Philippe Laborie
 
Image Compression using DPCM with LMS Algorithm
Image Compression using DPCM with LMS AlgorithmImage Compression using DPCM with LMS Algorithm
Image Compression using DPCM with LMS AlgorithmIRJET Journal
 
Multimedia image compression standards
Multimedia image compression standardsMultimedia image compression standards
Multimedia image compression standardsMazin Alwaaly
 
FPGA Implementation of 2-D DCT & DWT Engines for Vision Based Tracking of Dyn...
FPGA Implementation of 2-D DCT & DWT Engines for Vision Based Tracking of Dyn...FPGA Implementation of 2-D DCT & DWT Engines for Vision Based Tracking of Dyn...
FPGA Implementation of 2-D DCT & DWT Engines for Vision Based Tracking of Dyn...IJERA Editor
 
Multimedia communication jpeg
Multimedia communication jpegMultimedia communication jpeg
Multimedia communication jpegDr. Kapil Gupta
 

La actualidad más candente (12)

CPLEX 12.5.1 remote object - June 2013
CPLEX 12.5.1 remote object - June 2013CPLEX 12.5.1 remote object - June 2013
CPLEX 12.5.1 remote object - June 2013
 
2009 : Solving linear optimization problems with MOSEK
2009 : Solving linear optimization problems with MOSEK2009 : Solving linear optimization problems with MOSEK
2009 : Solving linear optimization problems with MOSEK
 
Accelerating the Development of Efficient CP Optimizer Models
Accelerating the Development of Efficient CP Optimizer ModelsAccelerating the Development of Efficient CP Optimizer Models
Accelerating the Development of Efficient CP Optimizer Models
 
CP Optimizer Walkthrough
CP Optimizer WalkthroughCP Optimizer Walkthrough
CP Optimizer Walkthrough
 
An introduction to CP Optimizer
An introduction to CP OptimizerAn introduction to CP Optimizer
An introduction to CP Optimizer
 
Modeling and Solving Resource-Constrained Project Scheduling Problems with IB...
Modeling and Solving Resource-Constrained Project Scheduling Problems with IB...Modeling and Solving Resource-Constrained Project Scheduling Problems with IB...
Modeling and Solving Resource-Constrained Project Scheduling Problems with IB...
 
Conditional interval variables: A powerful concept for modeling and solving c...
Conditional interval variables: A powerful concept for modeling and solving c...Conditional interval variables: A powerful concept for modeling and solving c...
Conditional interval variables: A powerful concept for modeling and solving c...
 
Image Compression using DPCM with LMS Algorithm
Image Compression using DPCM with LMS AlgorithmImage Compression using DPCM with LMS Algorithm
Image Compression using DPCM with LMS Algorithm
 
Multimedia image compression standards
Multimedia image compression standardsMultimedia image compression standards
Multimedia image compression standards
 
FPGA Implementation of 2-D DCT & DWT Engines for Vision Based Tracking of Dyn...
FPGA Implementation of 2-D DCT & DWT Engines for Vision Based Tracking of Dyn...FPGA Implementation of 2-D DCT & DWT Engines for Vision Based Tracking of Dyn...
FPGA Implementation of 2-D DCT & DWT Engines for Vision Based Tracking of Dyn...
 
Image compression Algorithms
Image compression AlgorithmsImage compression Algorithms
Image compression Algorithms
 
Multimedia communication jpeg
Multimedia communication jpegMultimedia communication jpeg
Multimedia communication jpeg
 

Destacado

Дмитрий Кузьмин - Капитализация научных коммуникаций (11 00)
Дмитрий Кузьмин - Капитализация научных коммуникаций (11 00) Дмитрий Кузьмин - Капитализация научных коммуникаций (11 00)
Дмитрий Кузьмин - Капитализация научных коммуникаций (11 00) Коммуникационная Лаборатория
 
Patrocinadores 120
Patrocinadores 120Patrocinadores 120
Patrocinadores 120ImagenBaul
 
8 Pieces of Career Advice From The Movies
8 Pieces of Career Advice From The Movies8 Pieces of Career Advice From The Movies
8 Pieces of Career Advice From The MoviesChowlyn Ng
 
Edmodo module 2 -creating a group-
Edmodo  module 2 -creating a group-Edmodo  module 2 -creating a group-
Edmodo module 2 -creating a group-jwhayesjr
 
Media presentation
Media presentationMedia presentation
Media presentationChickenboi8
 
Vlg book 2014
Vlg book 2014Vlg book 2014
Vlg book 2014rmanias
 
Irmi Seidl - Hooked on economic growth: how to get rid of? - Colloqui di Mart...
Irmi Seidl - Hooked on economic growth: how to get rid of? - Colloqui di Mart...Irmi Seidl - Hooked on economic growth: how to get rid of? - Colloqui di Mart...
Irmi Seidl - Hooked on economic growth: how to get rid of? - Colloqui di Mart...Colloqui di Martina Franca Lopez
 
Ugo Bardi - Effetto Risorse: La Strategia del Seminatore - Colloqui di Martin...
Ugo Bardi - Effetto Risorse: La Strategia del Seminatore - Colloqui di Martin...Ugo Bardi - Effetto Risorse: La Strategia del Seminatore - Colloqui di Martin...
Ugo Bardi - Effetto Risorse: La Strategia del Seminatore - Colloqui di Martin...Colloqui di Martina Franca Lopez
 
Daniel Dahm - The intrinsic tie between economy and ecology - Colloqui di Mar...
Daniel Dahm - The intrinsic tie between economy and ecology - Colloqui di Mar...Daniel Dahm - The intrinsic tie between economy and ecology - Colloqui di Mar...
Daniel Dahm - The intrinsic tie between economy and ecology - Colloqui di Mar...Colloqui di Martina Franca Lopez
 
Daniel Dahm - Strategic transformations towards sustainability - Colloqui di ...
Daniel Dahm - Strategic transformations towards sustainability - Colloqui di ...Daniel Dahm - Strategic transformations towards sustainability - Colloqui di ...
Daniel Dahm - Strategic transformations towards sustainability - Colloqui di ...Colloqui di Martina Franca Lopez
 
Squared-Data-Media-Industry-Report-2015
Squared-Data-Media-Industry-Report-2015Squared-Data-Media-Industry-Report-2015
Squared-Data-Media-Industry-Report-2015Vicnan Pannirselvam
 
Artful learning
Artful learningArtful learning
Artful learningFmerenda90
 
Елена Рухлова - Коммуникации в российской научно-образовательной сфере: лучши...
Елена Рухлова - Коммуникации в российской научно-образовательной сфере: лучши...Елена Рухлова - Коммуникации в российской научно-образовательной сфере: лучши...
Елена Рухлова - Коммуникации в российской научно-образовательной сфере: лучши...Коммуникационная Лаборатория
 

Destacado (18)

Recent progress in CPLEX 12.6.2
Recent progress in CPLEX 12.6.2Recent progress in CPLEX 12.6.2
Recent progress in CPLEX 12.6.2
 
Дмитрий Кузьмин - Капитализация научных коммуникаций (11 00)
Дмитрий Кузьмин - Капитализация научных коммуникаций (11 00) Дмитрий Кузьмин - Капитализация научных коммуникаций (11 00)
Дмитрий Кузьмин - Капитализация научных коммуникаций (11 00)
 
Patrocinadores 120
Patrocinadores 120Patrocinadores 120
Patrocinadores 120
 
8 Pieces of Career Advice From The Movies
8 Pieces of Career Advice From The Movies8 Pieces of Career Advice From The Movies
8 Pieces of Career Advice From The Movies
 
Edmodo module 2 -creating a group-
Edmodo  module 2 -creating a group-Edmodo  module 2 -creating a group-
Edmodo module 2 -creating a group-
 
Media presentation
Media presentationMedia presentation
Media presentation
 
Michael Ambjorn - Lessons from International practice of reputation managemen...
Michael Ambjorn - Lessons from International practice of reputation managemen...Michael Ambjorn - Lessons from International practice of reputation managemen...
Michael Ambjorn - Lessons from International practice of reputation managemen...
 
Vlg book 2014
Vlg book 2014Vlg book 2014
Vlg book 2014
 
Irmi Seidl - Hooked on economic growth: how to get rid of? - Colloqui di Mart...
Irmi Seidl - Hooked on economic growth: how to get rid of? - Colloqui di Mart...Irmi Seidl - Hooked on economic growth: how to get rid of? - Colloqui di Mart...
Irmi Seidl - Hooked on economic growth: how to get rid of? - Colloqui di Mart...
 
About me
About meAbout me
About me
 
Ugo Bardi - Effetto Risorse: La Strategia del Seminatore - Colloqui di Martin...
Ugo Bardi - Effetto Risorse: La Strategia del Seminatore - Colloqui di Martin...Ugo Bardi - Effetto Risorse: La Strategia del Seminatore - Colloqui di Martin...
Ugo Bardi - Effetto Risorse: La Strategia del Seminatore - Colloqui di Martin...
 
TOC demo
TOC demoTOC demo
TOC demo
 
Daniel Dahm - The intrinsic tie between economy and ecology - Colloqui di Mar...
Daniel Dahm - The intrinsic tie between economy and ecology - Colloqui di Mar...Daniel Dahm - The intrinsic tie between economy and ecology - Colloqui di Mar...
Daniel Dahm - The intrinsic tie between economy and ecology - Colloqui di Mar...
 
Daniel Dahm - Strategic transformations towards sustainability - Colloqui di ...
Daniel Dahm - Strategic transformations towards sustainability - Colloqui di ...Daniel Dahm - Strategic transformations towards sustainability - Colloqui di ...
Daniel Dahm - Strategic transformations towards sustainability - Colloqui di ...
 
Squared-Data-Media-Industry-Report-2015
Squared-Data-Media-Industry-Report-2015Squared-Data-Media-Industry-Report-2015
Squared-Data-Media-Industry-Report-2015
 
Poema mesa
Poema mesaPoema mesa
Poema mesa
 
Artful learning
Artful learningArtful learning
Artful learning
 
Елена Рухлова - Коммуникации в российской научно-образовательной сфере: лучши...
Елена Рухлова - Коммуникации в российской научно-образовательной сфере: лучши...Елена Рухлова - Коммуникации в российской научно-образовательной сфере: лучши...
Елена Рухлова - Коммуникации в российской научно-образовательной сфере: лучши...
 

Similar a Concurrent Root Cut Loops to Exploit Random Performance Variability

Constraint Programming - An Alternative Approach to Heuristics in Scheduling
Constraint Programming - An Alternative Approach to Heuristics in SchedulingConstraint Programming - An Alternative Approach to Heuristics in Scheduling
Constraint Programming - An Alternative Approach to Heuristics in SchedulingEray Cakici
 
Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)
Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)
Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)Benoit Combemale
 
The Impact of Compiler Auto-Optimisation on Arm-based HPC Microarchitectures
The Impact of Compiler Auto-Optimisation on Arm-based HPC MicroarchitecturesThe Impact of Compiler Auto-Optimisation on Arm-based HPC Microarchitectures
The Impact of Compiler Auto-Optimisation on Arm-based HPC MicroarchitecturesNECST Lab @ Politecnico di Milano
 
Oleksii Moskalenko "Continuous Delivery of ML Pipelines to Production"
Oleksii Moskalenko "Continuous Delivery of ML Pipelines to Production"Oleksii Moskalenko "Continuous Delivery of ML Pipelines to Production"
Oleksii Moskalenko "Continuous Delivery of ML Pipelines to Production"Fwdays
 
Accelerating Deep Learning Inference 
on Mobile Systems
Accelerating Deep Learning Inference 
on Mobile SystemsAccelerating Deep Learning Inference 
on Mobile Systems
Accelerating Deep Learning Inference 
on Mobile SystemsDarian Frajberg
 
Trends in Systems and How to Get Efficient Performance
Trends in Systems and How to Get Efficient PerformanceTrends in Systems and How to Get Efficient Performance
Trends in Systems and How to Get Efficient Performanceinside-BigData.com
 
Agile performance engineering with cloud 2016
Agile performance engineering with cloud   2016Agile performance engineering with cloud   2016
Agile performance engineering with cloud 2016Ken Chan
 
Decision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTX
Decision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTXDecision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTX
Decision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTXSanjayKPrasad2
 
Cse viii-advanced-computer-architectures-06cs81-solution
Cse viii-advanced-computer-architectures-06cs81-solutionCse viii-advanced-computer-architectures-06cs81-solution
Cse viii-advanced-computer-architectures-06cs81-solutionShobha Kumar
 
TenYearsCPOptimizer
TenYearsCPOptimizerTenYearsCPOptimizer
TenYearsCPOptimizerPaulShawIBM
 
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.Wolfgang Grieskamp
 
UK ATC 2015: Automated Post Processing of Multimodel Optimisation Data
UK ATC 2015: Automated Post Processing of Multimodel Optimisation DataUK ATC 2015: Automated Post Processing of Multimodel Optimisation Data
UK ATC 2015: Automated Post Processing of Multimodel Optimisation DataAltair
 
Mike Bartley - Innovations for Testing Parallel Software - EuroSTAR 2012
Mike Bartley - Innovations for Testing Parallel Software - EuroSTAR 2012Mike Bartley - Innovations for Testing Parallel Software - EuroSTAR 2012
Mike Bartley - Innovations for Testing Parallel Software - EuroSTAR 2012TEST Huddle
 
Large Model support and Distribute deep learning
Large Model support and Distribute deep learningLarge Model support and Distribute deep learning
Large Model support and Distribute deep learningGanesan Narayanasamy
 
PyMADlib - A Python wrapper for MADlib : in-database, parallel, machine learn...
PyMADlib - A Python wrapper for MADlib : in-database, parallel, machine learn...PyMADlib - A Python wrapper for MADlib : in-database, parallel, machine learn...
PyMADlib - A Python wrapper for MADlib : in-database, parallel, machine learn...Srivatsan Ramanujam
 
Model-Based User Interface Optimization: Part IV: ADVANCED TOPICS - At SICSA ...
Model-Based User Interface Optimization: Part IV: ADVANCED TOPICS - At SICSA ...Model-Based User Interface Optimization: Part IV: ADVANCED TOPICS - At SICSA ...
Model-Based User Interface Optimization: Part IV: ADVANCED TOPICS - At SICSA ...Aalto University
 
In Depth Constructive Cost Modeling related slides
In Depth Constructive Cost Modeling related slidesIn Depth Constructive Cost Modeling related slides
In Depth Constructive Cost Modeling related slidesChobodiDamsaraniPadm
 
Cs 568 Spring 10 Lecture 5 Estimation
Cs 568 Spring 10  Lecture 5 EstimationCs 568 Spring 10  Lecture 5 Estimation
Cs 568 Spring 10 Lecture 5 EstimationLawrence Bernstein
 
[DSC Europe 23] Matteo Molteni - Implementing a Robust CI Workflow with dbt f...
[DSC Europe 23] Matteo Molteni - Implementing a Robust CI Workflow with dbt f...[DSC Europe 23] Matteo Molteni - Implementing a Robust CI Workflow with dbt f...
[DSC Europe 23] Matteo Molteni - Implementing a Robust CI Workflow with dbt f...DataScienceConferenc1
 

Similar a Concurrent Root Cut Loops to Exploit Random Performance Variability (20)

Constraint Programming - An Alternative Approach to Heuristics in Scheduling
Constraint Programming - An Alternative Approach to Heuristics in SchedulingConstraint Programming - An Alternative Approach to Heuristics in Scheduling
Constraint Programming - An Alternative Approach to Heuristics in Scheduling
 
Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)
Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)
Efficient and Advanced Omniscient Debugging for xDSMLs (SLE 2015)
 
The Impact of Compiler Auto-Optimisation on Arm-based HPC Microarchitectures
The Impact of Compiler Auto-Optimisation on Arm-based HPC MicroarchitecturesThe Impact of Compiler Auto-Optimisation on Arm-based HPC Microarchitectures
The Impact of Compiler Auto-Optimisation on Arm-based HPC Microarchitectures
 
Oleksii Moskalenko "Continuous Delivery of ML Pipelines to Production"
Oleksii Moskalenko "Continuous Delivery of ML Pipelines to Production"Oleksii Moskalenko "Continuous Delivery of ML Pipelines to Production"
Oleksii Moskalenko "Continuous Delivery of ML Pipelines to Production"
 
Accelerating Deep Learning Inference 
on Mobile Systems
Accelerating Deep Learning Inference 
on Mobile SystemsAccelerating Deep Learning Inference 
on Mobile Systems
Accelerating Deep Learning Inference 
on Mobile Systems
 
Trends in Systems and How to Get Efficient Performance
Trends in Systems and How to Get Efficient PerformanceTrends in Systems and How to Get Efficient Performance
Trends in Systems and How to Get Efficient Performance
 
Metrics
MetricsMetrics
Metrics
 
Agile performance engineering with cloud 2016
Agile performance engineering with cloud   2016Agile performance engineering with cloud   2016
Agile performance engineering with cloud 2016
 
Decision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTX
Decision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTXDecision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTX
Decision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTX
 
Cse viii-advanced-computer-architectures-06cs81-solution
Cse viii-advanced-computer-architectures-06cs81-solutionCse viii-advanced-computer-architectures-06cs81-solution
Cse viii-advanced-computer-architectures-06cs81-solution
 
TenYearsCPOptimizer
TenYearsCPOptimizerTenYearsCPOptimizer
TenYearsCPOptimizer
 
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
Model-Based Testing: Theory and Practice. Keynote @ MoTiP (ISSRE) 2012.
 
UK ATC 2015: Automated Post Processing of Multimodel Optimisation Data
UK ATC 2015: Automated Post Processing of Multimodel Optimisation DataUK ATC 2015: Automated Post Processing of Multimodel Optimisation Data
UK ATC 2015: Automated Post Processing of Multimodel Optimisation Data
 
Mike Bartley - Innovations for Testing Parallel Software - EuroSTAR 2012
Mike Bartley - Innovations for Testing Parallel Software - EuroSTAR 2012Mike Bartley - Innovations for Testing Parallel Software - EuroSTAR 2012
Mike Bartley - Innovations for Testing Parallel Software - EuroSTAR 2012
 
Large Model support and Distribute deep learning
Large Model support and Distribute deep learningLarge Model support and Distribute deep learning
Large Model support and Distribute deep learning
 
PyMADlib - A Python wrapper for MADlib : in-database, parallel, machine learn...
PyMADlib - A Python wrapper for MADlib : in-database, parallel, machine learn...PyMADlib - A Python wrapper for MADlib : in-database, parallel, machine learn...
PyMADlib - A Python wrapper for MADlib : in-database, parallel, machine learn...
 
Model-Based User Interface Optimization: Part IV: ADVANCED TOPICS - At SICSA ...
Model-Based User Interface Optimization: Part IV: ADVANCED TOPICS - At SICSA ...Model-Based User Interface Optimization: Part IV: ADVANCED TOPICS - At SICSA ...
Model-Based User Interface Optimization: Part IV: ADVANCED TOPICS - At SICSA ...
 
In Depth Constructive Cost Modeling related slides
In Depth Constructive Cost Modeling related slidesIn Depth Constructive Cost Modeling related slides
In Depth Constructive Cost Modeling related slides
 
Cs 568 Spring 10 Lecture 5 Estimation
Cs 568 Spring 10  Lecture 5 EstimationCs 568 Spring 10  Lecture 5 Estimation
Cs 568 Spring 10 Lecture 5 Estimation
 
[DSC Europe 23] Matteo Molteni - Implementing a Robust CI Workflow with dbt f...
[DSC Europe 23] Matteo Molteni - Implementing a Robust CI Workflow with dbt f...[DSC Europe 23] Matteo Molteni - Implementing a Robust CI Workflow with dbt f...
[DSC Europe 23] Matteo Molteni - Implementing a Robust CI Workflow with dbt f...
 

Último

%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrainmasabamasaba
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...chiefasafspells
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...masabamasaba
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benonimasabamasaba
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationJuha-Pekka Tolvanen
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfkalichargn70th171
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Hararemasabamasaba
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Bert Jan Schrijver
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrandmasabamasaba
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 

Último (20)

%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 

Concurrent Root Cut Loops to Exploit Random Performance Variability

  • 1. Decision OptimizationDecision Optimization Concurrent Root Cut Loops to Exploit Random Performance Variability Andrea Tramontani CPLEX Optimization, IBM Joint work with Matteo Fischetti (University of Padova, Italy) Andrea Lodi (University of Bologna, Italy) Michele Monaci (University of Padova, Italy) Domenico Salvagnin (University of Padova, Italy) INFORMS Fall Conference 2013
  • 2. 2 © 2013 IBM Corporation Decision OptimizationDecision Optimization Disclaimer IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM’s sole discretion. Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described for our products remains at our sole discretion. Performance is based on measurements and projections using standard IBM® benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user's job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.
  • 3. 3 © 2013 IBM Corporation Decision OptimizationDecision Optimization Outline Performance variability Exploiting performance variability for performance improvement Concurrent root cut loops – External Implementation with CPLEX 12.5.0 – Internal Implementation and Performance Impact in CPLEX 12.5.1
  • 4. 4 © 2013 IBM Corporation Decision OptimizationDecision Optimization Performance Variability Performance variability is a well known issue intrinsic to MIP: – Danna (MIP Workshop, 2008) – Koch et al. (Math. Prog. Comp., 2011) – Achterberg and Wunderling (Facets of Comb. Optimization, 2013) – Lodi and T. (INFORMS 2013, Tutorial Section TA49) MIP Solvers contain various ingredients: – Heuristics – Cutting planes – Criteria for branching variable selection – ... Seemingly performance neutral changes (in the code, in the platform, or in the parameter setting) may have a big impact – on all those ingredients (separated cuts, heuristic solution found, picked variable to branch on) – and therefore on the whole solution process
  • 5. 5 © 2013 IBM Corporation Decision OptimizationDecision Optimization Performance Variability (Cont.d) A natural source of performance variability is the choice of the initial LP basis Equivalent (but different) optimal solution/bases of the first LP relaxation may lead to different – cutting planes – heuristic solutions – ... Reoptimizing with different cutting planes amplifies the diversification The final root node could be very different in terms of – Fractional solution – Dual and primal bounds – Cuts active in the LP Branching rules will take different decisions
  • 6. 6 © 2013 IBM Corporation Decision OptimizationDecision Optimization Exploiting Performance Variability for Performance Improvement Fischetti and Monaci (Op. Res., to appear): – Run CPLEX k times, each time rooted at a different initial LP basis, for few nodes – Bet the winner and let it run up to completion Carvajal, Ahmed, Nemhauser, Furman, Goel, Shao (Opt. Online, 2013): – Run k single threaded branch-and-cuts with different parameter setting instead of one single branch-and-cut with k threads – Different strategies to share information are tested Fischetti, Lodi, Monaci, Salvagnin, T. (submitted): – Concurrent root cut loops All ideas available in CPLEX
  • 7. 7 © 2013 IBM Corporation Decision OptimizationDecision Optimization Distributed Concurrent Optimization and Distributed Parallel MIP CPLEX 12.5.0 (2012): CPLEX Remote Object Interface – Interface to develop distributed parallel algorithms – “parmipopt“ shipped example: solve the same problem on different machines with different parameter settings on each machine CPLEX 12.6.0 (upcoming): Deterministic Distributed Parallel MIP – Similar to Yuji Shinano et. al. (ParaSCIP and ParaCPLEX), but deterministic – One master process coordinates k workers on a deterministic basis – Racing ramp-up phase • all workers solve model, each with different parameter configuration • regular synchronization based on deterministic time (report status and share primal bounds) • automatic stop criterion selects winner – Distributed parallel branch-and-cut phase • Distribute some nodes from ramp-up winner to other workers • Run the winner up to completion – By default, we do infinite ramp-up: Deterministic Distributed Concurrent Optimization – User can decide to do rampup + distributed branch-and-cut or distributed branch-and-cut only
  • 8. 8 © 2013 IBM Corporation Decision OptimizationDecision Optimization Concurrent Root Cut Loops More classical context: one single machine with multi cores (shared memory) Exploit multi-threading and performance variability at root node: – Run k concurrent root cut loops in a parallel fashion, each one rooted at a different LP basis – Along the process, share cuts and feasible solutions among the k cut loops Then do regular parallel branch-and-cut Preprocessing + LP solve Cut Loop #1 Cut Loop #2 Cut Loop #k... Parellel Branch-and-cut
  • 9. 9 © 2013 IBM Corporation Decision OptimizationDecision Optimization External implementation: CPLEX 12.5.0 with callbacks Preprocess all the instances once, then run all the code with 1 thread only and presolver disabled. Sampling phase: For h = 1, ..., k-1 – Solve the root node using random seed h – store cuts and incumbent solution available at the end of the root node in a pool Final run using random seed k: compare – CPXDEF: CPLEX with an empty usercut callback installed – KSAMPLE: CPLEX with • Usercut callback that separate cuts from the pool only once at the end of root node • Heuristic callback that installs the incumbent only once at the end or root node.
  • 10. 10 © 2013 IBM Corporation Decision OptimizationDecision Optimization External Implementation: test set and fake assumption Sampling phase is done with k = 10 Final run (CPXDEF vs. KSAMPLE) is done with 5 different random seeds Test set made of publicy available MIP models: MIPLIB2010 benchmark and primal test sets Fake assumption: – We assume multi-threading is for free and we do not include the time for the sampling phase in KSAMPLE – 23 models solved in the sampling phase are removed from the test set: We are left with 94 models
  • 11. 11 © 2013 IBM Corporation Decision OptimizationDecision Optimization The results indicate the idea has some potential, but – Disregarding the time for the sampling phase is a big bias against CPXDEF – CPXDEF is far away from CPLEX default – 94 models only can just give some insights (speed up varies from 1.56x to 1.00x depending on the random seed) External Implementation: computational results 1.00 0.79 1.00 0.77 1.00 1.00 1.00 0.77 1.00 0.64 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 seed 1 seed 2 seed 3 seed 4 seed 5 CPXDEF KSAMPLE 94 models (MIPLIB2010) 1.56x1.56x1.30x1.30x1.00x1.00x1.30x1.30x1.27x1.27x
  • 12. 12 © 2013 IBM Corporation Decision OptimizationDecision Optimization Internal Implementation in CPLEX 12.5.1 Forget about large K (we just made it with K = 2) – Multi-threading is not for free – We also want to apply other methods at the root node – More cuts typically means better dual bound, better dual bound does not mean less time to solve Create diversification in the parallel cut loop by changing – The basis – The random seed – Other parameters Be conservative with the cuts: – share cuts between the two cut loops, – but be clever when selecting the cuts to be shared
  • 13. 13 © 2013 IBM Corporation Decision OptimizationDecision Optimization Shake Internal Implementation in CPLEX 12.5.1 (Cont.d) Preprocessing + LP solve Cut Loop #1 Cut Loop #2 Parellel Branch-and-cut
  • 14. 14 © 2013 IBM Corporation Decision OptimizationDecision Optimization 0.98 0.98 0.95 0.99 0.98 0.97 0.96 0.92 0.98 0.98 0.95 0.94 0.86 0.97 0.98 0 0.2 0.4 0.6 0.8 1 >1s >10s >100s seed 1 seed 2 seed 3 seed 4 seed 5 Concurrent Root Cut Loops: Performance Impact in CPLEX 12.5.1 All ModelsAll Models ≈≈18641864 modelsmodels ≈≈ 10891089 modelsmodels ≈≈ 565565 modelsmodels 1.02x1.02x 1.04x1.04x 1.05x1.05x Date: 23 May 2013 Testset: 3243 models Machine: Intel X5650 @ 2.67GHz, 24 GB RAM, 12 threads Timelimit: 10,000 sec
  • 15. 15 © 2013 IBM Corporation Decision OptimizationDecision Optimization 0.98 0.98 0.95 0.99 0.98 0.97 0.96 0.92 0.98 0.98 0.95 0.94 0.86 0.97 0.98 0 0.2 0.4 0.6 0.8 1 >1s >10s >100s seed 1 seed 2 seed 3 seed 4 seed 5 Concurrent Root Cut Loops: Performance Impact in CPLEX 12.5.1 0.97 0.96 0.91 0.97 0.97 0.96 0.94 0.88 0.97 0.96 0.92 0.91 0.80 0.95 0.96 0 0.2 0.4 0.6 0.8 1 >1s >10s >100s seed 1 seed 2 seed 3 seed 4 seed 5 All ModelsAll Models Affected ModelsAffected Models ≈≈18641864 modelsmodels ≈≈ 10891089 modelsmodels ≈≈ 565565 modelsmodels ≈≈ 1100 (59%)1100 (59%) modelsmodels ≈≈ 686 (63%)686 (63%) modelsmodels ≈≈ 372 (66%)372 (66%) modelsmodels Date: 23 May 2013 Testset: 3243 models Machine: Intel X5650 @ 2.67GHz, 24 GB RAM, 12 threads Timelimit: 10,000 sec 1.04x1.04x 1.06x1.06x 1.09x1.09x 1.02x1.02x 1.04x1.04x 1.05x1.05x