r - 在 foreach %dopar% 循环中挂起 %*%
问题描述
尝试在此处给出的详细信息量之间取得适当的平衡,因为我无法创建mwe
. 我的 foreach 循环挂在一些矩阵计算的中间。奇怪的是,它挂在我的 imac 上,但不在我更大(即更多内存)的 linux 机器上。如果我使用它%dopar%
会挂起,但对%do%
. 它总是挂在内部 for 循环的第七次迭代上。它总是挂在“colSums”步骤上,但我使用矩阵代数而不是colSums
. 如果我使用colSums
,我可以让它工作。并不是我的矩阵尺寸不正确 - 我已经检查过它们并且没有收到错误。会发生什么?
helper <- function(mat){
vec <- rep(0, dim(mat)[1])
for(j in 1:7){
mat <- mat^(j*0.1)
vec <- vec + (rep(1, dim(mat)[1]) %*% mat) # ----- hangs here
}
return(vec)
}
foreach(ind = 1:10, .packages = 'Matrix') %dopar% {
helper(mat = mat)
}
解决方案
推荐阅读
- python - StackingRegressor (Sklearn) 的预测是不可重现的
- c# - EF Core:获取子列表中存在属性的数据库记录
- google-ads-api - isMCCaccount() 的广告脚本方法?
- c# - 使用 Newtonsoft.Json 将字符串转换为对象列表
- javascript - 如何使用 JavaScript 数组为 HTML 中的表格仅选择几个项目
- android - 如何在颤动中建立一张带有列表的卡片?
- xquery - 在 Marklogic Xquery 中将字符串转换为元素
- typescript - 在 VsCode 编辑器中获取光标前的所有文本
- nginx - 关于nginx的CPU资源消耗问题
- google-cloud-platform - 如何更改谷歌云功能的部署区域?