2015-05-03 47 views
4

我已經從網上下載了一個R腳本,表明它「必須在MPI環境下運行」。現在我對MPI幾乎一無所知,除了它用於並行計算之外,很難找到一個關於如何設置和使用它的簡單教程。如何在Windows上使用R安裝和使用MPI

有人可以給我一個簡單,一步一步指導我應該安裝什麼來運行這個,我應該怎麼做,以及如何運行腳本?

在此先感謝。

編輯,這裏是我的嘗試:

具體問題:

> # number of available slots is passed via environment variable 
> slots <- as.integer(Sys.getenv("NSLOTS")) 

NA_integer_

如果我用下面的(即我更換Sys.getenv(有一些標 「NSLOTS」))

> slots <- as.integer(4) 
> cl <- snow::makeMPIcluster(slots) 

我得到的錯誤

錯誤mpi.comm.spawn (slave = mpitask,slavearg = args,nslaves = count,:其他MPI錯誤,錯誤堆棧: MPI_Comm_spawn(cmd =「C:/PROGRA~1/R/R-31~1.0/bin/Rscript.exe」, argv = 0x0000000009A12CA8,maxprocs = 4,MPI_INFO_NULL,root = 0, MPI_COMM_SELF,intercomm = 0x0 00000000A2FF8B0, 錯誤= 0x00000000100E3C70)失敗沒有實現

功能,所以我懷疑我沒有正確配置我的MPI環境。

+0

你必須有你的系統上安裝MPI。您可以通過R軟件包連接到它,包括「默認」的'parallel'軟件包。參見小插曲[這裏](https://stat.ethz.ch/R-manual/R-devel/library/parallel/doc/parallel.pdf)。 –

+0

@RomanLuštrik謝謝你:)。腳本確實使用了'parallel',所以我在R中安裝了這個包。我應該在我的系統上正確安裝哪些MPI包?那是Open MPI嗎?我在網站上看到,你只能下載一些'tar.gz'文件,我該如何安裝?除了我需要做的還有其他事情嗎?再次感謝 :)! – dreamer

+0

是的,OpenMPI是您可以使用的MPI程序之一。你將不得不自己編譯程序,或者找到一個預編譯的二進制包。 –

回答

-1

嘗試此行,...

> require(parallel) 
> nCores <- 8 # manually for non-cluster machines 
> cl <- makeCluster(nCores) # by default this uses the PSOCK mechanism as in the SNOW package 
相關問題