How to compile a deployable program with the Parallel Computing Toolbox included?

6 views (last 30 days)
Greetings,
I have found various links regarding this topic, but none seem to include the exact info that I am looking for, and are too outdated to post a follow-up. What I am trying to do is utilize a parfor loop within my compiled deployable code that gets sent to a cluster of linux servers for high throughput computing. My first question is how to go about compiling/installing the toolbox with my deployable code. I tried adding -a distcomp to the end of my mcc command (following this example: http://www.mathworks.com/matlabcentral/newsreader/view_thread/285133) but encountered compilation errors. Is this the right way to do it? I am thinking that I can just use parpool(feature('numcores')) once I get the toolbox included properly so that I can run a parfor loop based on whatever number of cores each comp has. Would that work? I've stumbled into articles talking about having to change the config file, but I honestly have no idea what that is talking about. Could someone point me in the right direction?

Accepted Answer

Harsheel
Harsheel on 14 Jun 2016
For your use-case, you don't need to use the -a flag. MATLAB Compiler command mcc or the deploytool GUI will automatically figure out what dependencies from the Parallel Computing toolbox and/or other toolboxes need to be put in the executable. So if your file name is foo.m (that uses parfor) I'd simply execute:
>> mcc -mv foo.m

More Answers (0)

Categories

Find more on Standalone Applications 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!