问题标签 [snow]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
101 浏览

r - 带有集群的嵌套 foreach

我想并行化我的代码。R 初始化集群,但它不会将工作分配给处理器。换句话说,我可以创建工人,但它不使用 CPU 容量。我的问题是由

我编辑完成表格

我需要发挥作用来生成数据。

出现问题的功能

更具体地说,在foreach.

感谢您的任何提示!

0 投票
1 回答
404 浏览

r - 如何指定在 R 中运行的 MPI 的核心数和节点数

我想使用 MPI 在 HPC 集群上并行运行 R。我了解包snow中的 makeCluster 函数可用于指定节点数。例如:makeCluster(2,type="MPI")表示 2 个节点。如果不将类型指定为“MPI”,则makeCluster(2)意味着单个节点上有 2 个核心。

有没有办法同时指定节点和核心的数量?

如果将类型指定为 MPI,默认情况下每个节点上将使用多少个内核?

0 投票
1 回答
14122 浏览

r - 检查远程错误时出错 (val):5 个节点产生错误:找不到对象

我尝试进行 10 倍交叉验证并通过使用并行处理(parLapply)来估计联合模型的模型性能。我试图找出我收到错误消息的原因:“checkForRemoteErrors(val) 中的错误:五个节点产生错误:找不到对象‘周’”

代码如下所示:

函数本身被接受,但是在运行集群命令时我遇到了这个错误,它提到它无法识别函数中给出的对象..它们应该在函数本身中定义吗?还是我没有正确使用 parLapply 函数?

PS:数据如下(dfL 是一个长度为 ~ 1000 和 dfC ~ 200 的数据帧):

谢谢 :)

0 投票
0 回答
98 浏览

r - Rmpi 程序在产生正确的输出后挂起。如何以编程方式退出?

我正在使用的代码是:

我试过mpi.exit()了,但它仍然挂起。

0 投票
0 回答
826 浏览

r - 包雪:makeCluster挂起

我在 Windows 机器上使用 R 3.4.2 上的 snow 包初始化集群时遇到问题。

当我运行以下代码时,R 在最后一行之后挂起,而没有设置集群:

版本和操作系统的规格(取自 sessionInfo()):

  • R 版本 3.4.2 (2017-09-28)
  • 平台:x86_64-w64-mingw32/x64(64位)
  • 运行于:Windows 7 x64(内部版本 7601)Service Pack 1
  • 雪:snow_0.4-2

看来我的问题与 R 的版本有关,因为如果我在同一台机器上的 R 3.3.1(2016-06-21)上运行它,一切正常(即集群已设置并且可以使用)雪包。

有人知道如何解决这个问题吗?提前非常感谢!

0 投票
0 回答
248 浏览

r - 与降雪平行 - 本地速度与远程速度

snowfall在我的台式机上使用并行处理没有任何问题。我想在办公室使用几台备用机器来提高计算速度,并希望在远程机器上分配并行处理。

我有它工作,但遇到一个问题,即通过远程分发比仅在本地运行或在另一台(远程)机器上手动(即本地)运行代码要慢得多。

我的测试表明,远程集群上的并行处理比本地运行慢大约 14 倍。我意识到通过网络分发会有一些开销,但我认为它不会如此低效。

示例速度测试

本地机器 - 没有并行处理

本地机器 - 并行处理

远程机器 - 直接在远程机器上运行

本地机器 - 分发到远程

我的函数显然比这更密集,并且多次调用sfSapply. 我注意到分发到远程机器时运行时间的增加相同 - 大约是在远程机器上直接在 R 中运行时的 12 到 15 倍。

问题

我在做傻事吗?有一个更好的方法吗?

或者这是由于本地和远程机器之间的网络通信而不可避免的?

本地机器:Windows 10;R 3.4.3 远程机器:Ubuntu 17.10;R 3.4.3

0 投票
0 回答
350 浏览

r - R + snow + cluster:主人死后杀死奴隶

我在 Ubuntu 16 LTS 中使用集群(SOCK 类型)将我的 R 代码与雪并行化。下面是一个更简单的代码示例:

任务功能可能需要很长时间(几分钟或几小时),但是当我的应用程序中由于某些原因不需要继续计算任务时,应用程序无法停止所有从属进程。我可以杀死主 R 进程,但 R 从进程会一直保留到它们完成(即在一段时间内继续使用 CPU)。

我无法杀死从属进程,因为它们的父进程是系统一(PPID = 1),所以我不知道哪些从属进程与我要停止的主进程相关。我还尝试使用一种中断让主 R 进程执行stopCluster函数而不成功。

经过深度搜索,我没有找到解决方案。那么,有没有人知道阻止/杀死奴隶的方法或有解决这个问题的想法?

提前致谢!

0 投票
0 回答
171 浏览

r - 将不同的 data.tables 子集导出到集群中的每个节点

我正在编写一个处理几个非常大的 data.tables 的函数,我想在 Windows 机器上并行化这个函数。

我可以使用snow包来执行此操作clusterExport,以便为集群中的每个节点创建每个 data.tables 的副本。但是,这不起作用,因为它使用了太多内存。

我想通过将 data.tables 的不同子集导出到每个节点来解决此问题,但是,我看不到如何在雪包中执行此操作。

这是一个有效但内存效率低的代码的玩具示例:

这是一个不起作用的代码示例,但解释了我们希望如何将子集分发dd到节点:

0 投票
0 回答
90 浏览

r - 使用 np 和降雪并行估计多个非参数模型

我正在尝试使用降雪量来估计多个非参数模型。到目前为止,我没有任何问题,但现在我遇到了一个我觉得无法解决的问题。

在下面的 MWE 中,我们简单地估计一个节点上的一个模型。在我的应用程序中,结构是相同的。当我尝试绘制模型结果或使用np包中的另一个函数(如npsigtest())时,我收到错误

is.data.frame(data) 中的错误:..1 在不正确的上下文中使用,没有 ... 要查看

有谁知道是什么导致了这个问题?我对另一种关于并行估计多个模型的方法持开放态度。

MRE:

0 投票
0 回答
282 浏览

r - 与 R 并行化

当我尝试将计算与 R 并行化时,我遇到了性能问题。我有一个包含 8 列(条件)和 12000 行(基因)的矩阵,我想确定代表基因表达的最佳簇数(将具有相同表达模式的基因分组)。为此,我按照本教程使用 clustGap 函数和围绕 medoid 的分区。

由于计算很长,而且我可以访问一个计算集群,我打算将它并行化。

我想使用雪包,并评估我提取子矩阵的速度,并在我的计算机上进行了第一次测试。

时差 14.59781 秒

时差 8.251367 秒

所以我有点被测试卡住了,因为 1 核计算似乎比 8 核更有效:o

有人知道我在这个计算中错过了什么吗?

非常感谢,