Parfor starting a new parallel pool at every call?

9 visualizzazioni (ultimi 30 giorni)
Hi, I am running MATLAB on a cluster, and noticed my jobs suddenly becoming very slow. When I looked at the logs it is a lot of (Starting parallel pool (parpool) using the 'local' profile) spam. It seems that MATLAB is starting a new parallel pool every time I call a parfor loop.
When I run MATLAB on the front end I encounter the same problem, e.g.:
>> parfor i=1:2;disp(i);end
Starting parallel pool (parpool) using the 'local' profile ...
2
1
>> parfor i=1:2;disp(i);end
Starting parallel pool (parpool) using the 'local' profile ...
2
1
>> parfor i=1:2;disp(i);end
Starting parallel pool (parpool) using the 'local' profile ...
2
Any idea what could be happening? (running '9.4.0.902940 (R2018a) Update 4')

Risposta accettata

OCDER
OCDER il 11 Ott 2018
Do this once in your MATLAB command line to set the default setting to :
ps = parallel.Settings;
ps.Pool.AutoCreate = false; %do not autocreate parpool when encountering a |parfor|
ps.Pool.IdleTimeout = Inf; %do not shutdown parpool after Inf idle time

Più risposte (1)

adajaga
adajaga il 11 Ott 2018
Thanks that did it!

Categorie

Scopri di più su Parallel Computing Fundamentals in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by