Parfor/spmd with random numbers

10 vues (au cours des 30 derniers jours)
JohnDapper
JohnDapper le 2 Fév 2016
Commenté : Walter Roberson le 18 Nov 2024 à 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 commentaires
Brendan Hamm
Brendan Hamm le 3 Fév 2016
Cleve Moler had a nice blog post a while back about Parallel Random Number Generators.
Walter Roberson
Walter Roberson le 18 Nov 2024 à 19:31

Connectez-vous pour commenter.

Réponses (0)

Catégories

En savoir plus sur Parallel Computing Fundamentals dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by