我是 R 中并行计算的新手,希望使用并行包来加速我的计算(这比下面的示例更复杂)。然而,与通常的 lapply 函数相比,使用 mclapply 函数时的计算时间要长得多。
\n\n我在笔记本电脑上安装了全新的 Ubuntu 18.04.2 LTS,它具有 7.7 GB 内存和 Intel\xc2\xae Core\xe2\x84\xa2 i7-4500U CPU @ 1.80GHz \xc3\x97 4 处理器。我在 R studio 上运行 R。
\n\nrequire(parallel)\n\na <- seq(0, 1, length.out = 110) #data\nb <- seq(0, 1, length.out = 110)\nc <- replicate(1000, sample(1:100,size=10), simplify=FALSE)\n\nfunction_A <- function(i, j, k) { # some random function to examplify the problem\n i+ j * pmax(i-k,0) \n}\n\n#running it with mclapply \nptm_mc <- proc.time() \noutput <- mclapply(1:NROW(c), function(o){ \n mclapply(1:NROW(a),function(p) function_A(a[p], b, c[[o]]))})\ntime_mclapply …Run Code Online (Sandbox Code Playgroud)