在R中令人尴尬地平行
embarrassingly parallel in R
R 中是否有任何函数可以实现令人尴尬的并行,因为我的代码是完全独立的并且不需要进程之间的任何通信(没有 return 值)?
目前我正在使用 snowfall 包中的 sfLapply,但我的代码总是给我一个错误
Error in unserialize(node$con) : error reading from connection
错误似乎是由套接字之间的连接失败引起的,并且可能与某些进程中运行时间较长有关。我想尝试 embarrassingly parallel 来最小化套接字之间的通信。
我的会话信息:
> sessionInfo()
R version 3.1.1 (2014-07-10)
Platform: x86_64-unknown-linux-gnu (64-bit)
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C LC_TIME=C LC_COLLATE=C
[5] LC_MONETARY=C LC_MESSAGES=C LC_PAPER=C LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C LC_MEASUREMENT=C LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] snowfall_1.84-6 snow_0.3-13
loaded via a namespace (and not attached):
[1] tools_3.1.1
我推荐并行包作为后端,因为它是完全跨平台兼容的。我还推荐 'foreach' 包,因为在具有不同内核数的系统之间移植代码非常容易。
R 中是否有任何函数可以实现令人尴尬的并行,因为我的代码是完全独立的并且不需要进程之间的任何通信(没有 return 值)?
目前我正在使用 snowfall 包中的 sfLapply,但我的代码总是给我一个错误
Error in unserialize(node$con) : error reading from connection
错误似乎是由套接字之间的连接失败引起的,并且可能与某些进程中运行时间较长有关。我想尝试 embarrassingly parallel 来最小化套接字之间的通信。
我的会话信息:
> sessionInfo()
R version 3.1.1 (2014-07-10)
Platform: x86_64-unknown-linux-gnu (64-bit)
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C LC_TIME=C LC_COLLATE=C
[5] LC_MONETARY=C LC_MESSAGES=C LC_PAPER=C LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C LC_MEASUREMENT=C LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] snowfall_1.84-6 snow_0.3-13
loaded via a namespace (and not attached):
[1] tools_3.1.1
我推荐并行包作为后端,因为它是完全跨平台兼容的。我还推荐 'foreach' 包,因为在具有不同内核数的系统之间移植代码非常容易。