我一直在考虑在EC2上运行R,但我想知道并行/集群计算与此设置的关系是什么。我看了一下,但是我找不到这方面的教程。
基本上我要做的是在我的笔记本电脑上运行R(Rstudio),并完成大部分工作,但是当我有一个大的操作要运行时,显式将它传递给AWS从属实例做所有繁重的工作。
据我所知,雪/降雪包似乎是答案......但我不确定如何。
我正在使用http://bioconductor.org/help/bioconductor-cloud-ami/(ssh one)上的教程让R运行。本教程确实提到了paralell / cluster,但似乎是在不同的AWS实例之间。
任何帮助都会很棒。欢呼声。
答案 0 :(得分:0)
如果您只需要一个从属实例,我发现最简单的方法就是在实例上并行运行它,而不是将您的PC用作主服务器。
您可以在PC上编写脚本并将其推送到运行R的多核服务器上,然后使用所有并行核心在那里运行。
例如,将其上传到4核AWS实例:
library(snowfall)
sfInit(parallel=TRUE,cpus=4,slaveOutfile="log.txt")
vars = c(1:100)
#send variables to all processors
sfExportAll()
#Run this in parallel
results = sfLapply(vars, exp)
#Stop parallel processing
sfStop()
#save results
save(results, file = "results.RData")