Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
McLappy sendmaster错误仅适用于Rscript_R_Parallel Processing_Rscript_Microsoft R_Mclapply - Fatal编程技术网

McLappy sendmaster错误仅适用于Rscript

McLappy sendmaster错误仅适用于Rscript,r,parallel-processing,rscript,microsoft-r,mclapply,R,Parallel Processing,Rscript,Microsoft R,Mclapply,使用Rscript从命令行调用mclappy时,我间歇性地遇到以下错误: Error in sendMaster(try(lapply(X = S, FUN = FUN, ...), silent = TRUE)) : write error, closing pipe to the master 如果我在R Studio中或从交互式R会话中运行完全相同的代码,则不会出现错误。这个错误会在很大的作业中的各种上下文中出现,在这些作业中,每个工人都必须将一个很大的对象返回给小作业。我也尝试过

使用
Rscript
从命令行调用
mclappy
时,我间歇性地遇到以下错误:

Error in sendMaster(try(lapply(X = S, FUN = FUN, ...), silent = TRUE)) : 
  write error, closing pipe to the master
如果我在R Studio中或从交互式R会话中运行完全相同的代码,则不会出现错误。这个错误会在很大的作业中的各种上下文中出现,在这些作业中,每个工人都必须将一个很大的对象返回给小作业。我也尝试过关闭
预计划
,但它仍然会抛出错误。有时,如果我减少
mc.cores
参数中的线程数,它就会消失。我使用的是Ubuntu 18.04.1上的Microsoft R Open。它也出现在Ubuntu 16.04上。有一件事我没有尝试过,那就是用标准R而不是MRO来运行代码

这是我的
Rscript-e'sessionInfo()'


有什么想法吗?还有人遇到过这样的事情吗?我很抱歉没有一个可复制的示例,但是到目前为止,我遇到错误的数据/代码无法共享,并且我无法在其他上下文中复制错误。这似乎只是随机发生的。

尝试升级到Rv3.6.0或更高版本


我也面临同样的问题,这是由并行程序包中的一个bug(未初始化变量的使用)引起的,正如这里详细讨论的:。

Hi louiszya,您能不能生成一段显示此问题的最小代码?就目前而言,它不可复制给其他人(意思是:这肯定不会发生在使用
mclappy
的所有代码中,它需要非常具体的情况)。不过,在发布R配置方面做得很好(但不要在干净的会话中运行它,而是在有问题的会话中运行它,以显示附加了哪些其他包)!可能是从分叉的子进程发送回主进程的数据太大。对于疑难解答,请尝试在脚本顶部添加
trace(parallel:::sendMaster,at=3L,tracer=quote({str(list(what=what))}))
,然后重新运行。这应该让我们了解导致错误的数据大小。@HenrikB,我也遇到了这个问题。当我增加返回对象的大小时,情况变得更糟。然而,文档声称,在R3.4.0之前,在32位平台上,每个分叉进程的序列化结果限制为2^31-1字节。这感觉够了。R 3.5.1,debian sid。
R version 3.5.1 (2018-07-02)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 18.04.1 LTS

Matrix products: default
BLAS: /opt/microsoft/ropen/3.5.1/lib64/R/lib/libRblas.so
LAPACK: /opt/microsoft/ropen/3.5.1/lib64/R/lib/libRlapack.so

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C
 [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C
 [9] LC_ADDRESS=C               LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

other attached packages:
[1] RevoUtils_11.0.1     RevoUtilsMath_11.0.0

loaded via a namespace (and not attached):
[1] compiler_3.5.1