g********r 发帖数: 8017 | 1 谢谢回答。我再windows机器上用doSNOW遇到问题。mac上一直很顺利,听说在linux下
也一样。都是单机,只是想多用几个核。感觉如果数据交换多了,doSNOW不是很有效率
。必须先把数据切块复制过去。还没在cluster上试过。 |
|
g********r 发帖数: 8017 | 2 一个package,叫package A好了。
里面用doSNOW开本地multi core cluster。
可是然后每个core不认识这个package的指令,
只好在package里面写一句,
clusterEvalQ(cl, library(package A))
一个package自己load自己,看起来非常lame。
有什么办法把主节点上定义的所有function都自动
发给分节点么?
解决者包子答谢 。 |
|
w******e 发帖数: 142 | 3 速度提高很明显,使用也很简单,一般的for循环稍微改一下就可以了,如果你是文艺
青年的mac os可以用doMC来代替doSNOW.
我把实验室的服务器24个线程的全部用起来过跑很多个lasso的循环,比单线程程快了
很多,直接从6分钟降到了46秒。 |
|
g********r 发帖数: 8017 | 4 怎么把主节点上的所有function的定义直接传给各个节点让foreach()调用?
现在我只会很土地在让所有节点重新load所有package和source所有code.很麻烦.
谢谢啦! |
|
f***a 发帖数: 329 | 5 我在我的的电脑上死活用不了snow,后来用了下snowfall,感觉更user friendly,你
可以看看。再后来干脆不写parallel code了,反正我做的是cross-validation with
MCMC,所以直接把data切割好submit jobs到学校的cluster上算,呵呵~~~ good luck! |
|
g********r 发帖数: 8017 | 6 R用doSNOW+foreach那套还挺好使的。用着也方便,直接for换成for。。。dopar就完
了。只要loop里面工作够大,还是挺有效的。
刚仔细看了看结果,似乎snow还挺robust,我弄了两层dopar结果还是对的。 |
|
t****a 发帖数: 1212 | 7 我对傅立叶卷积没有什么经验。这里提到的你的傅立叶卷积的连续计算,是串行的,还
是可以并行的呢?如果是并行的,你的计算机是多核的么?如果是,可以尝试
multicore, foreach, doMC系列。如果你在cluster上做,可以尝试snow, snowfall,
doSnow系列的并行计算包。
祝你好运。 |
|