Could not load Matlab parallel parpool.m in a C# wrapper
Show older comments
Hi Matlab experts,
I am trying to call Matlab parallel parpool.m in Matlab runtime MCR 2015a. However there is an exception throw out in parpool.m. Here is screenshot of error message and the code. I appreciate any advice and suggestion. Thank you!

if isToolboxInstalled('Distrib_Computing_Toolbox')
parallel=true;
p = gcp('nocreate'); %% get current parpool
if isempty(p)
disp('parpool is empty, create new parpool');
parpool(numThreads);
else
%% parpool is not empty
disp('parpool is not empty');
if(p.NumWorkers == numThreads)
%% do nothing
else
disp('need to recreate parpool');
%% current parpool is not the size we desire
delete(p);
parpool(numThreads);
end
end
end
Answers (1)
Raymond Norris
on 15 Oct 2021
0 votes
What is line #14 in driver_evaluate_callibration? And have you been able to successfully run this in MATLAB (not compiled)?
4 Comments
Jian Zhou
on 15 Oct 2021
Raymond Norris
on 15 Oct 2021
If I have this right:
- You call driver_evaluate_calibration
- on line 14, you call driver_evaluate_calibration_parfeval
- on line 28, you call parpool
The code you included make two calls to parpool, both with numThreads, I'm assuming one of them is line 28 (which one, I'm guessing the 1st one?). Can you print the value of numThreads before your call to parpool?
Jian Zhou
on 15 Oct 2021
Raymond Norris
on 15 Oct 2021
What you're saying is that you can reproduce this with a one-liner
parpool(1)
and C# would error out. Can you add before the call to parpool
parallel.defaultClusterProfile
I believe the local profile should automatically be included, but there's a section in the documentation that describes bundling other profiles
https://www.mathworks.com/help/compiler/use-the-parallel-computing-toolbox.html
Categories
Find more on Parallel Computing Fundamentals in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!