[Bioc-devel] reproducible with mclapply?
Yu, Guangchuang
gcyu at connect.hku.hk
Wed Jun 3 09:11:54 CEST 2015
Dear all,
I have an issue of setting seed value when using parallel package.
> library("parallel")
> library("digest")
>
> set.seed(0)
> m <- mclapply(1:10, function(x) sample(1:10),
+ mc.cores=2)
> digest(m, 'crc32')
[1] "4827c80c"
>
> set.seed(0)
> m <- mclapply(1:10, function(x) sample(1:10),
+ mc.cores=2)
> digest(m, 'crc32')
[1] "e95b9134"
By default, set.seed() will be ignored since mclapply will set the seed
internally.
If we use mc.set.seed=FALSE to disable this feature. It works as indicated
below:
> set.seed(0)
> m <- mclapply(1:10, function(x) sample(1:10),
+ mc.cores=2, mc.set.seed = FALSE)
> digest(m, 'crc32')
[1] "6bbada78"
>
> set.seed(0)
> m <- mclapply(1:10, function(x) sample(1:10),
+ mc.cores=2, mc.set.seed = FALSE)
> digest(m, 'crc32')
[1] "6bbada78"
The problems is that the results are also depending on the number of cores.
> set.seed(0)
> m <- mclapply(1:10, function(x) sample(1:10),
+ mc.cores=4, mc.set.seed = FALSE)
> digest(m, 'crc32')
[1] "a22e0aab"
Any idea?
Best Regards,
Guangchuang
--
--~--~---------~--~----~------------~-------~--~----~
Guangchuang Yu, PhD Candidate
State Key Laboratory of Emerging Infectious Diseases
School of Public Health
The University of Hong Kong
Hong Kong SAR, China
www: http://ygc.name
-~----------~----~----~----~------~----~------~--~---
[[alternative HTML version deleted]]
More information about the Bioc-devel
mailing list