如何解决简单的 MPI 程序不会执行并进入睡眠模式C++
我正在尝试使用 mpic++
编译器运行这个简单的 MPI 程序。
#include <mpi.h>
#include <iostream>
int main(int argc,char** argv) {
// Initialize the MPI environment
MPI_Init(&argc,&argv);
// Get the number of processes
int world_size;
MPI_Comm_size(MPI_COMM_WORLD,&world_size);
// Get the rank of the process
int world_rank;
MPI_Comm_rank(MPI_COMM_WORLD,&world_rank);
// Get the name of the processor
char processor_name[MPI_MAX_PROCESSOR_NAME];
int name_len;
MPI_Get_processor_name(processor_name,&name_len);
// Print off a hello world message
std::cout << "Hello world from processor" << processor_name << " rank" << world_rank << " out of " << world_size << "processors" << std::endl;
// Finalize the MPI environment.
MPI_Finalize();
}
我用 mpic++ main.cpp
编译
当我执行 mpirun -n 2 ./a.out
我收到警告 no protocol specified
,这可能与我通过 ssh 连接到桌面并尝试在那里运行程序有关,但最重要的是,它什么也没做。
如果我输入 top
则没有列出 a.out
而如果我输入 ps aux | grep ./a.out
我得到:
angelos+ 1925884 0.0 0.0 44664 7652 pts/9 S+ 18:54 0:00 mpirun -n 2 ./a.out
这是动态链接问题还是什么?有什么建议吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。