MATLAB Answers

Parallel computing in Neural Networks is not using all the Workers in Matlab 2015b

3 views (last 30 days)
Hi everyone!
I am using a Time Delay Neural Network that takes a long time to be trained. So, I have used parallel processing and the training time had a great decrease.
The curious thing is that when using Matlab 2015a the parallel processing works all the workers:
pool = parpool;
tdnn = train(tdnn,Xs,Ts,'useParallel','yes','showResources','yes');
The result is:
Starting parallel pool (parpool) using the 'local' profile ... connected to 4 workers.
Computing Resources:
Parallel Workers:
Worker 1 on MBP-de-Hugo, MATLAB on MACI64
Worker 2 on MBP-de-Hugo, MATLAB on MACI64
Worker 3 on MBP-de-Hugo, MATLAB on MACI64
Worker 4 on MBP-de-Hugo, MATLAB on MACI64
However, when using the same code in Matlab 2015b, just one worker is used:
Starting parallel pool (parpool) using the 'local' profile ... connected to 4 workers.
Computing Resources:
Parallel Workers:
Worker 1 on MBP-de-Hugo, MEX on MACI64
Worker 2 on MBP-de-Hugo, Unused
Worker 3 on MBP-de-Hugo, Unused
Worker 4 on MBP-de-Hugo, Unused
How to use the others Workers in Matlab 2015b?
Thanks in advance!

Accepted Answer

Tushar Athawale
Tushar Athawale on 5 Jan 2016
This is a bug in the "train" function of the Neural Network toolbox in the way the time information of the timedelaynet is analyzed prior to sending to the workers, making it appear internally as though the network training cannot be parallelized.
This behavior is a side-effect of the following bug:
To work around this issue, please follow these instructions in the above link to apply the patch.
  2 Comments
Hugo Mendonça
Hugo Mendonça on 17 Oct 2017
Sorry for the completely delayed answer.
You just must get a latter matlab version or download a corrective patch on the link provided above.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!