在计算集群上并行运行linux上的R代码

在计算集群上并行运行linux上的R代码,r,linux,parallel-processing,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","m

我最近将我的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")))
无论我尝试和回忆什么包,都会复制此错误,即使

library(raster)
命令运行良好,当我使用以下命令调用所有库时,“光栅”清楚地显示为OK:

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 path选项,如下所示:

.libPaths('/home/antony/R/library')
有人知道我做错了什么,以及如何在DEoptim控件中设置“packages”选项,以便我可以在多个内核上并行运行DEoptim吗


非常感谢,安东尼

我纠正了一个打字错误。请确认错误不是由它引起的。未在工作程序上加载包。根据
DEoptim1
所使用的并行框架,有不同的修复方法。您可能需要
clusterEvalQ
来调用所有Worker上的
library
。感谢您的建议-我通过加载到默认库而不是我自己的库来修复此问题。工作人员似乎需要查看默认的库空间。
.libPaths('/home/antony/R/library')