关键词:
【中文标题】打开 MPI - mpirun 在简单程序中退出并出现错误【英文标题】:Open MPI - mpirun exits with error on simple program 【发布时间】:2015-09-28 14:20:14 【问题描述】:我最近在我的计算机上安装了 OpenMPI,当我尝试运行一个简单的 Hello World 程序时,它退出并出现下一个错误:
-------------------------------------------------------
Primary job terminated normally, but 1 process returned
a non-zero exit code.. Per user-direction, the job has been aborted.
-------------------------------------------------------
这是程序的源代码:
#include <mpi.h>
#include <stdio.h>
int main(int argc, char *argv[])
int size, rank;
MPI_Init(&argc, &argv);
MPI_Comm_size(MPI_COMM_WORLD, &size);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
printf("Hello\n");
MPI_Finalize();
return 0;
这是我编译程序的方式:
mpicc -o hello hello.c
我用它来执行它
mpirun -np 2 hello
编译时不会出错,如果我运行./hello
,它运行正常。
请原谅我的英语,欢迎任何更正。
【问题讨论】:
确保您使用相同的 MPI 发行版(OpenMPI、MPICH、MVAPICH)和版本来编译mpicc
并运行程序 mpirun
。您的错误很可能是我的版本和/或发行版不匹配造成的。
我已经下载并安装了 OpenMPI 的最后一个稳定版本。在安装之前,我没有安装 MPI 版本
检查返回值。
您提到您使用了最后一个稳定版本,但那是哪个版本?
This 似乎是同样的错误。下面./
的答案应该有效。
【参考方案1】:
你必须 ./ 可执行文件名 试试这个,mpirun -np 2 ./hello
【讨论】:
【参考方案2】:试试:
mpirun -x LD_PRELOAD=libmpi.so -np 2 hello
如果它有效,则您的 OpenMPI 安装可能存在问题。一个简单的解决方法是定义一个别名。如果你使用 bash,添加 ~/.bashrc:
alias mpirun='mpirun -x LD_PRELOAD=libmpi.so'
【讨论】:
如何在 Centos 7 中使用 firewalld 启用 MPI mpirun
】如何在Centos7中使用firewalld启用MPImpirun【英文标题】:howtoenableMPImpirunusingfirewalldinCentos7【发布时间】:2015-12-1816:00:00【问题描述】:我正在尝试让MPI在Centos7操作系统上的小型集群上运行。防火墙阻止它运行。这是我得到的错误... 查看详情
使用和不使用 mpirun 运行程序的区别
】使用和不使用mpirun运行程序的区别【英文标题】:Differencebetweenrunningaprogramwithandwithoutmpirun【发布时间】:2013-03-1218:17:34【问题描述】:我使用MPI_Open_port和MPI_Comm_accept在MPI中实现了点对点连接。我使用运行服务器和客户端程序r... 查看详情
mpirun 的自定义中断处理程序
】mpirun的自定义中断处理程序【英文标题】:acustominterrupthandlerformpirun【发布时间】:2013-03-3000:59:32【问题描述】:显然,mpirun使用了一个SIGINT处理程序,它将SIGINT信号“转发”到它产生的每个进程。这意味着您可以为启用mpi的... 查看详情
mpi 进程在信号 11 上退出
...l11【发布时间】:2020-01-2206:21:19【问题描述】:我有一个简单的mpi程序来执行MPI_Scatter和MPI_Gather。它接受要发送到每个进程的元素的参数数量,然后使用MPI_Scatter和MPI_Gather对不同进程的随机数进行平均。float*create_rand_nums(intnum_ele... 查看详情
错误:libtool - 编译 MPI 程序时
...我正在使用OpenSuseLeap并安装了openMPI认为是YaST。运行whichmpirun命令我得到/usr/lib64/mpi/gcc/openmpi/bin/mpirun并运行whichmpicc我得到/usr/bin/mpicc 查看详情
运行mpi报错
...置好,应该把相应的库文件路径加入.bashrc用文本编辑器打开个人主目录下面的.bashrc(~/.bashrc),加入类似于下面的两行信息(第一行是icc的、第一行是ifort的)并保存:source/etc/Intel_Compiler/10.0/XXXX/iccvars_intel64.shsource/etc/Intel_Compil... 查看详情
使用 MPI 和 Armadillo 在 C++ 中进行并行化
...)是否能够利用MPI框架下的并行性?我担心的是,在使用mpirun-np1executable运行程序时,由于我特别要求操作系统仅使用一个处理器运行我的程序, 查看详情
无法将所有内核与 mpirun 一起使用
】无法将所有内核与mpirun一起使用【英文标题】:Unabletouseallcoreswithmpirun【发布时间】:2018-07-2721:13:03【问题描述】:我正在我的桌面上测试一个简单的MPI程序(UbuntuLTS16.04/Intel®Core™i3-6100UCPU@2.30GHz×4/gcc4.8.5/OpenMPI3.0.0)并且mpirun... 查看详情
名为 connect() 的函数如何阻止 MPI C 程序运行?
...目,并决定将我的一个函数命名为connect()。但每当我尝试mpirun程序(在Linux和OSX上使用最新版本的OpenMPI)时,我都会收到 查看详情
使用 CMake 编译后无法从 mpich2 使用 mpirun
】使用CMake编译后无法从mpich2使用mpirun【英文标题】:Troubleusingmpirunfrommpich2aftercompilingusingCMake【发布时间】:2013-08-1805:53:59【问题描述】:我在尝试运行MPI时遇到问题。我安装了mpich2-1.4.1p1,当我使用mpirun运行mpi程序时,我得到... 查看详情
如何在主页中打开后退按钮 android 以退出应用程序并关闭反应本机导航侧菜单
】如何在主页中打开后退按钮android以退出应用程序并关闭反应本机导航侧菜单【英文标题】:Howtohandlebackbuttonandroidtobothexitappandclosereactnativenavigationsidemenuwhenitisopeninhomepage【发布时间】:2020-04-2112:30:20【问题描述】:我在我的项... 查看详情
集群上mpi的使用
...高。”说的就是各种超算机器和intel吧。yhrun(srun)其实跟mpirun一样的效果。 openmpi可以直接运行程序:http://mpitutorial.com/tutorials/mpi-hello-world/例子hello_world.c,发现mpirun可以识别真正的物理核心。mpirun-np13-fhost_file./mpi_hello_world其... 查看详情
mpiexec 与 mpirun
】mpiexec与mpirun【英文标题】:mpiexecvsmpirun【发布时间】:2014-10-0622:05:11【问题描述】:据我所知,mpirun和mpiexec都是启动器。谁能说出mpiexec和mpirun之间的确切区别?【问题讨论】:mpiexec例如似乎接受主机名文件中的表示法host:num... 查看详情
iOS Wikiitude SDK 在退出/重新打开应用时崩溃
】iOSWikiitudeSDK在退出/重新打开应用时崩溃【英文标题】:iOSWikitudeSDKcrashonexit/reopenapp【发布时间】:2017-04-0310:06:07【问题描述】:我为iOS和增强现实(使用WikitudeSDK)开发了一个简单的应用程序。一切正常,但是当我退出并重新... 查看详情
在 MPI 中发送和接收数组
...2018-11-1111:17:08【问题描述】:我是MPI新手,正在编写一个简单的MPI程序来获取矩阵和向量的点积,即A*b=c。但是,我的代码不起作用。源代码如下。如果我将A、b、c和缓冲区的声明替换为doubleA[16],b[4],c[4],buffer[8];并注释与分配和... 查看详情
MPI_Init 在 FreeBSD 13 中失败
...使用FreeBSD13,并尝试编译(成功)和运行(不成功)一个简单的最小MPI程序#include<mpi.h>#include<stdlib.h>#include<stdio.h>intmain(intargc,char* 查看详情
使用 mpirun 执行我的程序会大大降低性能
】使用mpirun执行我的程序会大大降低性能【英文标题】:Performancedegradesalotbyusingmpiruntoexecutemyprogram【发布时间】:2020-06-2511:38:36【问题描述】:我是MPI领域的新手。我使用IntelMathKernelLibrary编写程序,并且我想按块计算矩阵-矩阵... 查看详情
为啥 MPI 程序以退出代码 134(信号 6)终止?
】为啥MPI程序以退出代码134(信号6)终止?【英文标题】:WhydoestheMPIprogramterminatewithexitcode134(signal6)?为什么MPI程序以退出代码134(信号6)终止?【发布时间】:2019-10-0318:59:14【问题描述】:我有以下用MPI编写的霍夫曼压缩代码... 查看详情