How to use multiple cores

I use matlab to generate a series of input files and perform a simulation with each of those by an external program.
eval(sprintf('!%s "%s"','"[a bat file]"',[a matlab generated ini file]))
Using the line above matlab will wait until one simulation has ended before starting a new one. One simulation uses only one of 4 available cores. I would like to know if I can send 4 files into parallel simulation.
Thanks.

 Risposta accettata

Friedrich
Friedrich il 3 Nov 2011
Hi,
try to use the & so that ML don't wait, saying:
eval(sprintf('!%s "%s" &','"[a bat file]"',[a matlab generated ini file]))
Or use Parallel Computing Toolbox to run several function in parallel.

2 Commenti

Jan
Jan il 3 Nov 2011
I'd omit the EVAL and SPRINTF:
system(['"<a bat file>" "', <a matlab generated ini file>, '" &'])
Erik de Boer
Erik de Boer il 3 Nov 2011
Thank you both. All my simulations run simultaneous now.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Statistics and Machine Learning Toolbox in Centro assistenza e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by