问题标签 [mvapich2]

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 投票
1 回答
748 浏览

cuda - 多 GPU 上的 MVAPICH 导致分段错误

我在 Debian 7 机器上使用 MVAPICH2 2.1。它有特斯拉K40m的多张卡。代码如下。

简而言之,我首先将设备设置为GPU 0,发送一些东西。然后我将设备设置为 GPU 1,发送一些东西。

输出如下。

所以第一次发送就OK了。但是一旦我将我的设备设置为另一个 GPU,然后 MPI 发送,砰!我想知道为什么会这样。

另外,我使用以下命令构建了 MVAPICH。

我启用了调试并打印了堆栈跟踪。希望这有帮助..

0 投票
1 回答
691 浏览

tcp - 如何告诉 MVAPICH2 使用 tcp?

如果我使用 infiniband 进行两个节点之间的通信(使用 MVAPICH2 作为 MPI 实现),我的应用程序会产生错误的结果。

OpenMPI 提供了指定网络的可能性

MVAPICH2 有什么类似的吗?

0 投票
0 回答
771 浏览

fortran - 不清楚的 MPI 消息

我正在运行一个并行应用程序,它运行正常,直到突然中止,并从几个核心进行以下按摩:

我是 MPI 使用/调试的新手。我的搜索没有得出明确的结论(即https://software.intel.com/en-us/node/535587);以上按摩指的是什么?如何通过这样的按摩在并行(Fortran)代码中找到错误?

一个后续问题:如果我的应用程序有一个内部重块,其中部分节点正在花费越来越多的时间,完成任务的节点在Infiniband达到拥塞之前可以在接口处等待较慢的节点多长时间?

0 投票
1 回答
375 浏览

mpi - 用 PGI 编译 mvapich2-2.1

我目前正在尝试在 CentOS 6 机器上使用 pgcc 15.10 编译 mvapich2-2.1。我跑

它失败了(不包括大部分诊断输出)

这个问题的解决方案是什么?我没有使用汇编程序的经验,所以任何提示/建议将不胜感激。谢谢。

0 投票
1 回答
1856 浏览

mpi - 玩具程序使用 OpenMPI 1.6 失败,但可与 Mvapich2 一起使用

我试图弄清楚为什么我的 OpenMPI 1.6 版本不起作用。我在 CentOS 6.6 上使用 gcc-4.7.2。给定一个玩具程序(即 hello.c)

并编译mpicc hello.c和运行mpirun -np 8 ./a.out,我得到错误:

如果我使用 mvapich2-2.1 和 gcc-4.7.2 运行它,我就Hello World from Task N没有任何这些错误/警告。

查看链接到的库a.out,我得到:

如果我用 mvapich2 重新编译它,

这里有什么问题?这是由于在 openmpi 案例中未链接到 infiniband 库吗?

0 投票
1 回答
665 浏览

memory - 没有足够的锁定内存(rdma_setup_startup_ring:无法创建 cq)

我在 CentOS 7 上锁定的页面中的可用内存量存在问题。使用slurm分配节点后,当我使用 MPI (mvapich) 启动作业时,遇到以下错误:

这似乎是由于缺少锁定的内存。但是,它似乎设置为无限制,因为ulimit -a返回:

使用 sudo启动mpirun时,它正在工作。

0 投票
1 回答
144 浏览

c - Comparing CPU utilization during MPI thread deadlock using mvapich2 vs. openmpi

I noticed that when I have a deadlocked MPI program, e.g. wait.c

#xA;

When I compile wait.c with the mvapich2-2.1 library (which itself was compiled using gcc-4.9.2) and run it (e.g. mpirun -np 4 ./a.out) I notice (via top), that all 4 processors are chugging along at 100%.

When I compile wait.c with the openmpi-1.6 library (which itself was compiled using gcc-4.9.2) and run it (e.g. mpirun -np 4 ./a.out), I notice (via top), that 2 processors are chugging at 100% and 2 at 0%.

Presumably the 2 at 0% are the ones that completed communication.

QUESTION : Why is there a difference in CPU usage between openmpi and mvapich2? Is this the expected behavior? When the CPU usage is 100%, is that from constantly checking to see if a message is being sent?

0 投票
1 回答
421 浏览

mpi - Infiniband vs. Gigabit ethernet, how do I control which is used by an MPI program

I have an MPI program that runs on a computer cluster that has both ethernet and Infiniband connectivity. When I compile with mpavich2's mpicc, it automatically links to the Infiniband libraries.

Is there a way to control which network is used when compiling an mpi program?

I checked the man page for mpicc and it was not useful for this.

0 投票
1 回答
410 浏览

multithreading - MPI 中的“Got unknown event 17 ... continue ...”是什么意思

我正在运行 MPI 作业并收到以下警告消息:

我正在使用 MVAPICH 2.1 编译 icc (ICC) 15.0.2 20150121。

消息是什么意思?它有害吗?

0 投票
1 回答
584 浏览

cuda - 一个 K80 内的两个 GPU 的 CUDA 感知 MPI

我正在尝试优化名为 LAMMPS ( https://github.com/lammps/lammps ) 的 MPI+CUDA 基准测试的性能。现在我正在运行两个 MPI 进程和两个 GPU。我的系统有两个插座,每个插座连接到 2 个 K80。由于每个 K80 内部包含 2 个 GPU,因此每个插槽实际上连接到 4 个 GPU。但我只在一个插槽中使用 2 个内核,以及连接到该插槽的 2 个 GPU(1 K80)。MPI 编译器是 MVAPICH2 2.2rc1,CUDA 编译器版本是 7.5。

这就是背景。我分析了应用程序,发现通信是性能瓶颈。我怀疑这是因为没有应用 GPUDirect 技术。所以我切换到 MVAPICH2-GDR 2.2rc1 并安装了所有其他必需的库和工具。但是 MVAPICH2-GDR 需要 Infiniband 接口卡,这在我的系统上不可用,所以我有运行时错误“通道初始化失败。系统上没有找到活动的 HCA”。根据我的理解,如果我们只想在一个节点上使用 1 K80 以内的 GPU,则不需要 Infiniband 卡,因为 K80 具有用于这两个 GPU 的内部 PCIe 开关。这些是我的疑惑。为了让问题更清楚,我将它们列出如下:

  1. 在我的系统中,一个插座连接到两个 K80。如果一个 K80 中的两个 GPU 需要与另一个 K80 中的 GPU 通信,那么我们要使用 GPUDirect 就必须有 IB 卡,对吗?

  2. 如果我们只需要使用1个K80内的两个GPU,那么这两个GPU之间的通信就不需要IB卡了,对吧?但是,MVAPICH2-GDR 至少需要一张 IB 卡。那么有什么办法可以解决这个问题吗?或者我必须在系统上插入 IB 卡?