【问题标题】:What to do about this makePSOCKcluster error?如何处理这个 makePSOCKcluster 错误?
【发布时间】:2021-06-29 22:00:08
【问题描述】:

我正在运行一个名为 mixedpower() 的函数,可让您模拟不同样本大小的功效。但是我收到以下错误,不知道如何处理!

Error in makePSOCKcluster(names = spec, ...) : 
  Cluster setup failed. 11 of 11 workers failed to connect.

这是一个可重现的示例。 (只是为了阻止任何 cmets,我知道齿轮在这里不应该是一个随机变量,但我只是为了这个示例的目的而使用它。)

#You can download the mixedpower package like this.
  if (!require("devtools")) {
    install.packages("devtools", dependencies = TRUE)}

   devtools::install_github("DejanDraschkow/mixedpower") 

library(mixedpower)
library(lme4)

m <- lmer(mpg ~ cyl + disp + hp + drat + (1|gear), data = mtcars)

mtcars$gear_num <- as.numeric(mtcars$gear)

power <- mixedpower(model = m, data = mtcars, fixed_effects = c("cyl", "disp", "hp", "drat"), simvar = "gear_num", steps = c(3, 4, 5), critical_value = 2)

如果有帮助,我将在 MacOS Mojave 版本 10.14.6 上运行 RStudio 版本 1.1.453。

【问题讨论】:

  • 您的代码适用于我在 Ubuntu/r-devel 上。 (它似乎默认使用所有可用的内核,这是反社交/不好的做法......更令人担忧的是,没有立即明显的方法将其设置为串行运行/使用更少的内核!)。 (您的 RStudio 版本可能无关紧要,尽管在 RStudio 之外的普通 R 控制台或终端中尝试您的代码不会有什么坏处。)

标签: r lme4 mixed-models


【解决方案1】:

我无法测试但强烈怀疑您的问题与最新版本的 R 中的错​​误有关(现在已在更新的版本中修补)。 This issue 描述了将以下内容添加到您的 .Rprofile 文件的解决方法(也可能更新到最新的 R 修补版本)。

## WORKAROUND: https://github.com/rstudio/rstudio/issues/6692
## Revert to 'sequential' setup of PSOCK cluster in RStudio Console on macOS and R 4.0.0
if (Sys.getenv("RSTUDIO") == "1" && !nzchar(Sys.getenv("RSTUDIO_TERM")) && 
    Sys.info()["sysname"] == "Darwin" && getRversion() >= "4.0.0") {
  parallel:::setDefaultClusterOptions(setup_strategy = "sequential")
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-11-01
    • 2021-05-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-25
    • 2019-08-20
    • 1970-01-01
    相关资源
    最近更新 更多