降雪sfApply()比apply()慢

时间:2012-11-03 13:33:22

标签: r snowfall

我不熟悉R中的多核,正在尝试降雪包,以测试是否可以加快应用功能。

不确定出了什么问题,但是我的sfApply()的多核实现总是比apply()慢2倍

非常感谢任何帮助!提前谢谢。

单核示例 - 在我的电脑中完成约1.3秒:

x=2000
y=10000
startTime <- proc.time()

randomX <- sample(1:100,x*y, replace=T)/100+0.5
randomMatrix <- matrix(NA,x,y)
randomMatrix[,] <- randomX
randomRetX <- apply(randomMatrix,2,cumprod)

endTime <- proc.time()
endTime-startTime
降雪实施 - 在我的电脑中接近3秒:

library(snowfall)
sfInit( parallel=TRUE, cpus=4)
x=2000
y=10000

startTime <- proc.time()

randomX <- sample(1:100,x*y, replace=T)/100+0.5
randomMatrix <- matrix(NA,x,y)
randomMatrix[,] <- randomX
randomRetX <- sfApply(randomMatrix,2,cumprod)

endTime <- proc.time()

endTime-startTime
sfStop()

0 个答案:

没有答案