RNG, R, mclapply ve bilgisayar kümesi


10

R ve bilgisayar kümesinde bir simülasyon çalıştırıyorum ve aşağıdaki sorun var. Çalıştığım X bilgisayarların her birinde:

fxT2 <- function(i) runif(10)
nessay <- 100
c(mclapply(1:nessay, fxT2), recursive=TRUE)

Her biri 16 çekirdekli 32 bilgisayar var. Bununla birlikte, rastgele sayıların yaklaşık% 2'si aynıdır. Bundan kaçınmak için hangi stratejileri benimseyeceksiniz?

Bir gecikme ayarlayarak (yani her bir iş X bilgisayarlarının her birine gönderildiği zaman bir saniye gecikme) ayarlayarak fxT2 için bu sorunu önlemek mümkün. Ama fxt2 için çok geçici görünüyor.

Sorun şu ki, fxT2 gerçekte sahte rasgele sayılar içeren uzun bir görevdir. İşlemin sonunda, aynı istatistiksel deneyin X * nessay reprodüksiyonunu almayı bekliyorum, nessay reprodüksiyonlarını değil . Bunun gerçekten böyle olduğundan ve bunu kontrol etmenin bir yolu var mı?


İyi soru. Rastgele sayılar ve çok çekirdekli paket hakkında bu soruya bir göz atın
csgillespie

@CSgillepsie:> işaretçi için teşekkürler, ama aynı sorunun olduğundan emin değilim: işaret ettiğin soruyu anlama şeklimde, tüm süreçler mclapply tarafından ortaya çıkıyor. İşte bu biraz farklıdır: makinelerinin her biri üzerinde, tüm süreçleri mclapply tarafından kökenli, ama bu durum böyle değil edilir genelinde makineleri.
user603

Yanıtlar:


6

Kar RNG verilen sayı bir küme hesaplamasında akışları initialise için açık desteği vardır.

İki RNG uygulamasından birini kullanabilir:

Aksi takdirde koordinasyonu elle yapmak zorundasınız.


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.