我正在尝试更深入地研究 R 例程的并行化。
关于一堆“ worker ”进程的通信,我有哪些选择?
AFAIU,没有主进程和所有工作进程都可以访问的“ 共享环境/共享内存”这样的东西,对吧?
到目前为止,我想出的最好的想法是将通信基于读取和写入 JSON 文档到硬盘驱动器。这可能是个坏主意;-) 我选择了
.json
在 .Rdata
文件,因为 JSON 似乎经常用于软件间通信,所以我想采用那个“标准”。期待了解更好的选择!
仅供引用:我通常基于基础包的功能进行并行化 平行和 contrib 包 snowfall ,主要靠功能
sfClusterApplyLB()
完成工作编辑
我应该声明我在 Windows 上运行,但也非常感谢基于 Linux 的答案/提示!
最佳答案
详见 CRAN Task View for High-Performance Computing , Rdsm Norm Matloff 的包提供共享内存通信。
关于r - 并行进程的通信 : what are my options?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11583007/