Parfor loop fails for lagre loop size

7 views (last 30 days)
Hi all,
I found a strange error message when I use my parfor code:
Warning: Error caught during construction of remote parfor code.
The parfor construct will now be run locally rather than
on the remote matlabpool. The most likely cause of this is
an inability to send over input arguments because of a
serialization error. The error report from the caught error is:
Error using ==> distcompserialize
Error during serialization
Error in ==> distcomp.remoteparfor.remoteparfor at 41
obj.SerializedInitData =
distcompMakeByteBufferHandle(distcompserialize(varargin));
Error in ==> parallel_function at 437
P = distcomp.remoteparfor(W, @make_channel, parfor_C);
Error in ==> gjkk_fVAR at 61
parfor i=1:n_jack
Error in ==> test_jkk_fVAR at 72
[ jkk_var_comb(k,i,j) cond_var(k,i,j)] = gjkk_fVAR([
Y_sim(1:size(Y_chain,2),1:n_mc) ;
h_sim(1:size(h_chain,2),1:n_mc)],[R_Y ;
R_h],z_opt(1:n_mc),ctrl.R_z,ctrl);
> In parallel_function at 451
In gjkk_fVAR at 61
In test_jkk_fVAR at 72
It only happens for lage loop numbers! Is there a maximum size for parfor loops ? Does anyone know a solution?
Thanks for suggestions

Accepted Answer

Walter Roberson
Walter Roberson on 25 Jul 2011
Do the remote workers have access to as much memory as the local worker? If not then it might not be possible to send over a large array.
This could also apply if the local worker is a 64 bit version and the remote is a 32 bit version.
  2 Comments
Andreas
Andreas on 25 Jul 2011
yes, that was the problem. each worker required to much memory. so i have to use less worker
Thx!!
Konrad Malkowski
Konrad Malkowski on 3 Aug 2011
What were the functions computing?

Sign in to comment.

More Answers (0)

Categories

Find more on Parallel for-Loops (parfor) 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!