gpt4 book ai didi

r - 完成后如何杀死doMC工作人员?

转载 作者:行者123 更新时间:2023-12-04 14:28:22 24 4
gpt4 key购买 nike

doMC 的文档似乎很少,只列出了 doMC-package 和 registerDoMC()。我遇到的问题是我将通过 doMC/foreach 产生几个 worker ,但是当工作完成后,他们只是坐在那里占用内存。我可以去寻找他们的进程 ID,但我经常不小心杀死主进程。

library(doMC)
library(foreach)

registerDoMC(32)

foreach(i=1:32) %dopar% foo()

##kill command here?

我试过使用 registerDoSEQ() 进行跟踪,但它似乎并没有终止进程。

最佳答案

doMC 包基本上是 mclapply 函数的包装器,并且 mclapply fork 应该在返回之前退出的工作程序。它不使用像snow 包或并行包中的snow 派生函数这样的持久性worker,因此它不需要像stopCluster 这样的函数来关闭worker。

直接使用 mclapply 有没有看到同样的问题?当您使用较小的内核值调用 registerDoMC 时,它是否会更好地工作?

您是否在 Mac 上使用来自 IDE(例如 RStudio 或 R.app)的 doMC?如果是这样,您可能想尝试从终端使用 R 来查看是否有所不同。在 IDE 中调用 fork 可能会出现问题。

关于r - 完成后如何杀死doMC工作人员?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21758806/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com