问题标签 [boost-mpi]

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 投票
2 回答
2946 浏览

mpi - Boost.MPI 问题

我正在研究 HPC。并且在那台 HPC 上安装了旧版本的 Boost,并且该 boost 库没有 Boost.MPI。我要求管理员将其安装在 HPC 上。但他们要求我将其安装在我的主目录中。所以我在我的主目录上安装了 boost 和 boost.mpi。Boost 库似乎工作正常。但是,当我尝试使用以下命令运行以下代码时,出现错误。

测试代码:

构建命令:

我得到以下错误尖叫:

如果有人能提供帮助,我将不胜感激。

0 投票
3 回答
8411 浏览

c++ - 无法在两台以上的机器上运行 OpenMPI

在尝试运行boost::mpi 教程中的第一个示例时,我无法在两台以上的机器上运行。具体来说,这似乎运行良好:

主机名中的每个主机名都为<node_name> slots=2 max_slots=2. 但是,当我将进程数增加到 5 时,它就会挂起。当我超过 2 台机器时,我将slots/的数量减少到 1,结果相同。max_slots在节点上,这显示在作业列表中:

此外,当我杀死它时,我会收到以下消息:

集群设置为在 NFS 安装的驱动器上可访问的mpi和库。boost我是否遇到了 NFS 的死锁?或者,还有其他事情发生吗?

更新: 需要明确的是,我正在运行的提升程序是

根据@Dirk Eddelbuettel 的建议,我编译并运行了 mpi 示例hello_c.c,如下

它在具有多个进程的单台机器上运行良好,这包括进入任何节点并运行。每个计算节点都与通过 NFS 从远程机器挂载的工作目录和 mpi/boost 目录相同。当从文件服务器运行 boost 程序时(与一个节点相同,除了 boost/mpi 是本地的),我可以在两个远程节点上运行。但是,对于“hello world”,运行mpirun -H node1,node2 -np 12 ./hello我得到的命令

而所有的“Hello World's”都被打印出来并挂在最后。但是,从远程节点上的计算节点运行时的行为不同。

当从 node2 运行时,“Hello world”和 boost 代码都会挂起,mpirun -H node1 -np 12 ./hello反之亦然。(挂起与上述相同的意义:orted 正在远程机器上运行,但没有回通信。)

该行为不同于在 mpi 库位于本地的文件服务器上与在计算节点上运行的行为不同,这表明我可能遇到了 NFS 死锁。这是一个合理的结论吗?假设是这种情况,如何配置 mpi 以允许我静态链接它?此外,我不知道如何处理从文件服务器运行时遇到的错误,有什么想法吗?

0 投票
1 回答
382 浏览

boost - 如何使用 Boost.MPI 进行重叠散射?

我想分配一个具有重叠元素的向量。例如,如果我有 [1,2,3],我希望 [1,2] 被发送到一个节点,而 [2,3] 被发送到另一个节点。我熟悉如何使用 MPI 来做到这一点,但我将如何使用 Boost::MPI 来做到这一点?

0 投票
3 回答
927 浏览

c++ - Boost MPI的Autoconf宏?

我正在搜索用于configure.ac检查 Boost MPI 的 autoconf 宏。

在互联网上找到其中的几个并不难,但我尝试过的一个都没有按预期工作。

ax_boost_mpi.m4你用什么

编辑:我会更好地解释我的要求。我需要宏来告诉我 Boost MPI 是否可用(定义HAVE_BOOST_MPI)以将编译器和链接器标志存储在某处并将编译器从普通 c++ 编译器切换到可用的 mpiCC 或 mpic++。

如果未找到 Boost MPI,我希望能够选择是否要停止配置过程并出现错误或继续使用 g++ 而未定义 HAVE_BOOST_MPI。

另外,它应该定义一个 MPIRUN 变量以允许运行一些检查。

0 投票
1 回答
180 浏览

language-agnostic - Which kind of diagram for parallel code documentation?

I have some parallel code (implemented using MPI) that needs to be documented. I'd like to have a flow-diagram describing it's high-level strategy.

What kind of diagram do you use to describe send, receive, broadcast, gather, reduction and other operations?

(EDIT: I'm equally interested in Linux/LaTeX software to do them)

0 投票
5 回答
7373 浏览

multicore - 多核编程。Boost 的 MPI、OpenMP、TBB 还是其他?

我完全是多核编程的新手,但我确实知道如何编程 C++。

现在,我正在寻找多核编程库。我只是想尝试一下,只是为了好玩,现在,我找到了 3 个 API,但我不确定我应该坚持哪一个。现在,我看到了 Boost 的 MPI、OpenMP 和 TBB。

对于任何使用过这 3 个 API(或任何其他 API)的人,您能告诉我它们之间的区别吗?是否有任何因素需要考虑,例如 AMD 或 Intel 架构?

0 投票
2 回答
7427 浏览

boost - 尝试构建 Boost MPI,但未创建 lib 文件。这是怎么回事?

我正在尝试使用 Boost MPI 运行程序,但问题是我没有 .lib。所以我尝试按照http://www.boost.org/doc/libs/1_43_0/doc/html/mpi/getting_started.html#mpi.config上的说明创建一个

指令说“对于许多使用 LAM/MPI、MPICH 或 OpenMPI 的用户,配置几乎是自动的”,我在 C:\ 中得到了自己的 OpenMPI,但我没有用它做更多的事情。我们需要对它做些什么吗?我还在 Program Files 中找到了自己的 MPICH2,也没有对它做任何事情。在指令的这一点上,我非常不确定我们到底要做什么。

除此之外,指令中的另一条语句:“如果您的主目录中还没有文件 user-config.jam,请将 tools/build/v2/user-config.jam 复制到那里。” 好吧,我只是按照它说的去做。我在 C:\boost_1_43_0> 中找到了自己的“user-config.jam”以及“使用 mpi;” 到文件中。

接下来,这就是我所做的: bjam --with-mpi

我看到 C:\boost_1_43_0\stage\lib 中有很多库,但我根本看不到 libboost_mpi-vc100-mt-1_43.lib 或 libboost_mpi-vc100-mt-gd-1_43.lib 的痕迹。这些是在 mpi 应用程序中链接所需的库。

没有构建库时可能会出现什么问题?

0 投票
2 回答
1505 浏览

boost - 寻找mpic++

我正在按照这些说明尝试构建 Boost MPI.lib文件,但遇到了一个问题:我没有mpic++.

查看 MPICH 和 Open MPI 等 MPI 实现文件,我发现根本没有mpic++包含在内。

我在哪里可以找到mpic++

0 投票
1 回答
2761 浏览

c++ - Boost::Serialization Mpi 发送用户定义类型的数组

我想使用 boost Mpi 发送我的 Array 类

这里T可以是任何内置类型或用户定义类型。假设我有一个类复合体

所以问题是如何Array<complex>使用 Boost::Mpi + 序列化发送。

感谢期待 问候诺曼

0 投票
1 回答
1493 浏览

c++ - 将 OpenMPI 或 MPICH 与 Boost MPI 一起使用 Win 和 Linux 机器

这些天我正在接近 MPI 世界。我愿意将 Boost MPI 库与 OpenMPI 或 MPICH 一起使用(即使使用 MPICH,由于我读过一些帖子,我仍然不确定它是否能正常工作)。

我真正的问题是:在这两个库和 Boost MPI 之上,是否可以结合 Linux 机器和 Windows 机器的资源?

我还不清楚使用 MPI 是否意味着能够在具有相同操作系统的远程机器上启动进程。原则上 MPI 是一个通信协议之上的消息传递系统,因此在通信时对操作系统没有太大的依赖性。

您是否对这个主题有所了解,或者你们中的一些人已经尝试在 Win 和 Linux 机器上使用 MPI?

谢谢 EO