Mai*_*ura 22 cloud resources r amazon-web-services
所以我终于想出了如何让我的R脚本在Amazon EC2云上运行.我一直在使用带有26个ECU,8个内核和69个内存的AMI.
然后我把我的代码转换成多个脚本,并运行每一个在河的一个实例与此大小的服务器,我可以轻松地同时运行20-40脚本,每个正在运行的几个1000个模拟.
我想知道的是,R是否正在本地利用所有这些计算能力.我应该安装专门告诉R使用所有这些额外内存/多CPU的软件包吗?我已经看过这个页面和一些软件包(至少从描述中看来)看起来很有希望.但我无法弄清楚如何将其合并到我的代码中.任何人都可以对此有所了解吗?
JD *_*ong 16
Dirk的评论是关于多核/ foreach/doMC的.
如果您正在进行数千次模拟,您可能需要考虑亚马逊的弹性地图减少(EMR)服务.当我想扩展我在RI中的模拟时,开始使用巨大的EC2实例和多核包(就像你一样!).它进展顺利,但我跑了一个EC2法案的地狱.我并不是真的需要所有的RAM,但我付出了代价.我的工作将在凌晨3点完成,然后我不会进入办公室直到上午8点所以我付了5个小时我不需要.
然后我发现我可以使用EMR服务启动50个廉价的小型Hadoop实例,运行我的模拟,然后让它们自动关闭!我完全放弃在EC2上运行我的SIM卡,现在几乎只使用EMR.这非常有效,我的公司正在开始测试将更多定期模拟活动迁移到EMR的方法.
这是我第一次开始在EC2上使用多核时写的博客文章.然后,当我发现我可以使用Amazon EMR执行此操作时,我写了一篇后续帖子.
编辑: 自从这篇文章以来,我一直致力于一个软件包,使得更容易使用EMR和R进行并行应用功能.我已将Segue项目命名为Google Code.
进一步更新:我已经弃用了Segue,因为有更好,更成熟的产品可以从R访问亚马逊的服务.