在计算集群

时间:2015-11-11 15:35:00

标签: r linux parallel-processing

我最近将我的Windows R代码转换为Linux安装,以便在函数上运行DEoptim。在我的Windows系统上,所有工作都很好:

ans <- DEoptim1(Calibrate,lower,upper,
                DEoptim.control(trace=TRUE,parallelType=1,parVAr=parVarnames3,
                                packages=c("hydromad","maptools","compiler","tcltk","raster")))

其中功能&#39; Calibrate&#39;由多种功能组成。在Windows系统上,我只需将所需的各种软件包下载到R库中。选项paralleType = 1在一系列核心上运行代码。

但是,现在我想把这些代码放到基于Linux的计算集群上 - 功能&#39; Calibrate&#39;独立时可以正常工作,如果我想在一个核心上运行代码,也可以使用DEoptim。但是,当我指定parelleType = 1时,代码将失败并返回:

Error in checkForRemoteErrors(lapply(cl, recvResult)) : 
7 nodes produced errors; first error: there is no package called ‘raster’

即使

,我也会尝试回忆这个错误
library(raster)

命令工作正常,并且“光栅”#39;当我使用:

调用所有库时,显然可以正常显示
library()

所以,我的直觉是,即使所有的包和库都加载好了,这是因为我使用了个人库,而且DEoptim.control的packages元素正在寻找不同的空间。下面是如何安装软件包的示例:

install.packages("/home/antony/R/Pkges/raster_2.4-15.tar.gz",rpeo=NULL,target="source",lib="/home/antony/R/library")

我还设置了lib路径选项,如下所示:

.libPaths('/home/antony/R/library')

有没有人知道我做错了什么,以及如何设置&#39;包&#39; DEoptim控件中的选项,以便我可以并行运行多个内核的DEoptim?

非常感谢,Antony

0 个答案:

没有答案