跳轉到內容

構建 Beowulf 叢集/計算並行化/GNU R

來自華夏公益教科書

在本節中,我們將看到使用 snow 包在 R 計算平臺(類似於 Matlab 的統計計算)中進行並行化的示例,該包可以使用 MPI 或 PVM 分發作業。在本小節中,我們將只看到 R+PVM 的用法。

請注意,為了在 R 中安裝包,需要 R 的開發包。無論如何,我剛剛安裝了 R 儲存庫中可用的所有 R 包(類似於這樣:http://cran.es.r-project.org/bin/linux/redhat/fedora9/x86_64,不言而喻,這可能因您的發行版、機器架構和國家程式碼而異)。

您需要在主節點和從節點上安裝 R 庫 snow 和 rpvm。如果您沒有,R 會讓您建立 PVM 叢集物件,但隨後在您嘗試執行作業時會凍結。

在 R 中

> library('snow')
> library('rpvm')
> cl<-makePVMcluster(count=2,names=c('node0','node1'))
> clusterCall(cl, function() Sys.info()[c("nodename","machine")])
[[1]]
nodename machine 
"node1" "x86_64" 

[[2]]
nodename machine 
"node0" "x86_64"
華夏公益教科書