Did CPLEX MIQP need Parallel Computing Toolbox to run cplexmiqp optimally?

1 Ansicht (letzte 30 Tage)
I'am using MATLAB 2018b and adding CPLEX MIQP 12.8 to the search path:
C:\Program Files\IBM\ILOG\CPLEX_Studio128\cplex\matlab\x64_win64
In this page, it's said that CPLEX ILOG IBM automatically use all core:
But it was said on MATLAB Mathworks forum that standard code in MATLAB didn't use parallel computing: https://www.mathworks.com/matlabcentral/answers/317128-does-matlab-use-all-cores-by-default-when-running-a-program
I use 12 core CPU with only 30% used, but 80% RAM used with 2.5 hour computation time.
My question is, did my code already use parallel computing in runing this code or do I need to buy MATLAB Parallel Computing Toolbox to run it optimally?
[x,y]=cplexmiqp(F,c,Ai,bi,Ae,be,[],[],[],x_L,x_U,IV);

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 25 Mär. 2019
Bearbeitet: Walter Roberson am 25 Mär. 2019
The developerworks article is referring specifically to the case where the person is calling cplex from within a parfor loop.
You need to read Adam's answer taking into account Jan's answer and John D'Errico's answer: MATLAB can recognize some patterns of computation, and when it does and it decides the matrices are big enough, MATLAB will automatically call high performance libraries that use all available cores. This is not under user control, and MATLAB does not document exactly what is run this way or not run that way.
You can tell cplexmiqp how many cores it should use when you call it. You do not need Parallel Computing Toolbox for that.
  1 Kommentar
Muhammad Yasirroni
Muhammad Yasirroni am 25 Mär. 2019
Bearbeitet: Muhammad Yasirroni am 25 Mär. 2019
Thank you. I will try to do some research about how to properly set IBM CPLEX MIQP for very large matrices.
I also had read all the answers (Adam's, Jan's, and John's), but not quite confident for my case.
Anyway, if you know some tutorial to insert setting in cplexmiqp setting (IBM CPLEX) when I call it from MATLAB, i will be glad. I'm currently use MIQP to solve 2400*2400 quadratic and 2400*2400 integer matrices.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Parallel Computing Fundamentals finden Sie in Help Center und File Exchange

Produkte


Version

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by