并行化代码导致线程内存使用膨胀(RStudio deffect) 概述:

并行化代码导致线程内存使用膨胀(RStudio deffect) 概述:,r,rstudio,glm,rparallel,R,Rstudio,Glm,Rparallel,我的B对象是一个2 GB的大矩阵100 000*5000 我的A对象小于1000*5000 analyse_with_glm <- function(Y) { cond1 = unlist(apply(B, 2, function(X) coef(summary(glm(Y~X)))[,4][2])) cond2 = unlist(apply(B, 2, function(X) coef(summary(glm(Y~X+cov2)))[,4][2])) cond3 = unli

我的B对象是一个2 GB的大矩阵100 000*5000
我的A对象小于1000*5000

analyse_with_glm <- function(Y) {
  cond1 = unlist(apply(B, 2, function(X) coef(summary(glm(Y~X)))[,4][2]))
  cond2 = unlist(apply(B, 2, function(X) coef(summary(glm(Y~X+cov2)))[,4][2]))
  cond3 = unlist(apply(B, 2, function(X) coef(summary(glm(Y~X+cov3)))[,4][2]))
  list(cond1, cond2, cond3)}

cl = makeCluster(nb_cpu, type = "FORK", outfile='outcluster.log')
res = parApply(cl, A, 2, analyse_with_glm)

<代码>分析>与GLM

此答案可能是部分的,因为我仍然认为当并行代码时R行为怪异。 如果从RStudio运行代码,并行线程往往会因~/.RStudio/suspended session data/的大小而膨胀

为了避免这种情况,这里有一个虚拟的解决方法。
1.清洁您的环境
2.注销
3.登录
4.加载您的数据
5.运行并行代码

信息:

  • Rstudio 0.99.892
  • R版本3.3.1

您是否尝试从RGui运行代码?这个问题是与rstudioide有关还是与R有关?顺便说一句,您应该指定正在运行的R和RStudio的版本以及操作系统。