Parfor/spmd with random numbers

10 visualizaciones (últimos 30 días)
JohnDapper
JohnDapper el 2 de Feb. de 2016
Comentada: Walter Roberson el 18 de Nov. de 2024 a las 19:31
In my code I want to run a function on each worker in parallel. The function is mexified C++ and (simply put) returns an image consisting of pixels with random intensity. Something like this:
parfor i = 1 : numiters
output(:,i) = myFn()
end
The trouble is that each output(:,i) is identical! Running the functions serially, like so:
for i = 1 : numiters
output(:,i) = myFn()
end
there are no troubles. Each output(:,i) is different. I thought that each worker is initialized with a random seed -- but I guess not. It seems that they are all initialized to the same seed. Any tips on how to overcome this issue?
Many thanks.
  4 comentarios
Brendan Hamm
Brendan Hamm el 3 de Feb. de 2016
Cleve Moler had a nice blog post a while back about Parallel Random Number Generators.
Walter Roberson
Walter Roberson el 18 de Nov. de 2024 a las 19:31

Iniciar sesión para comentar.

Respuestas (0)

Categorías

Más información sobre Parallel Computing Fundamentals en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by