如何解决使用parsapply,clusterapply等在R中并行处理
我试图从并行库的R中使用parSapply函数。有一个很大的列表(数据帧列表)充当parSapply应用于function_2的输入。同样,内存和核心数量也足够。我正在使用140GB RAM和35核。我的代码的结构有点像这样:
for(i in 1:n)
{
list_of_dataframes=lapply(vector_1,function_1)
cl=makeCluster(34)
#export required packages and environment variables to cluster
#using clusterEvalQ and clusterExport functions
result=parSapply(cl,list_of_dataframes,function_2)
stopCluster(cl)
rm(cl)
}
现在,此循环可以运行几次,然后开始引发与内存相关的错误,即:
OpenBLAS blas_thread_init:RLMIT_NPROC 4096当前,最大-1
我已经尝试了很多关于此错误的在线搜索,但似乎没有得到任何具体说明。另外,在该循环中创建集群是否会反复产生问题?但是我也在每次迭代后删除集群。将其保留在循环中的原因是我需要将某些事物导出到集群中,因为它们在每次迭代中都会发生变化。 任何帮助或建议都将真正帮助您。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。