R 多线程运行加速

标签: 加速   多线程   R  
2020-07-13 10:15 阅读(?)评论(0)

 R语言parallel加速策略

注:https://www.cnblogs.com/ywliao/articles/6681781.html

     https://www.jianshu.com/p/8797972113d7

     https://www.jianshu.com/p/3882ea7b9cc9

 library(parallel)

        cl.cores <- detectCores()

        cl <- makeCluster(cl.cores)

        detectCores( )检查当前电脑可用核数。

        makeCluster(cl.cores)使用刚才检测的核并行运算。R-Doc里这样描述makeCluster函数:Creates a set of copies of R running in parallel and communicating over sockets. 即同时创建数个R进行并行运算。在该函数执行后就已经开始并行运算了,电脑可能会变卡一点。尤其在执行par开头的函数时。

 

       在并行运算环境下,常用的一些计算方法如下:

      1. clusterEvalQ(cl,expr)函数利用创建的cl执行expr

          这里利用刚才创建的cl核并行运算expr。expr是执行命令的语句,不过如果命令太长的话,一般写到文件里比较好。比如把想执行的命令放在Rcode.r里:

          clusterEvalQ(cl,source(file="Rcode.r"))


      最后,记住及时终止并行运算,释放cpu。

           stopCluster(cl)

  最后修改于 2020-07-13 10:20    阅读(?)评论(0)
 
表  情:
加载中...
 

请各位遵纪守法并注意语言文明