c++ - 通过 SSH 连接时执行 MPI 示例时出现“未指定协议”错误
问题描述
我打开一个终端并通过 SSH 连接到桌面。
玩具程序是:
#include <iostream>
#include <mpi.h>
#include <H5Cpp.h>
int main(int argc, char** argv){
int process_Rank, size_Of_Cluster;
MPI_Init(&argc, &argv);
MPI_Comm_size(MPI_COMM_WORLD, &size_Of_Cluster);
MPI_Comm_rank(MPI_COMM_WORLD, &process_Rank);
for(int i = 0; i < size_Of_Cluster; i++){
if(i == process_Rank){
std::cout << "Hello World from process " << process_Rank<< " of " <<
size_Of_Cluster << std::endl;
}
MPI_Barrier(MPI_COMM_WORLD);
}
MPI_Finalize();
return 0;
}
我用h5c++
. 然后我运行mpirun -n 4 ./a.out
并得到:
No protocol specified
Hello World from process 0 of 4
Hello World from process 1 of 4
Hello World from process 2 of 4
Hello World from process 3 of 4
这是什么“未指定协议”错误,它是如何弹出的,我该如何避免它?
解决方案
推荐阅读
- php - 无法准备 SQL 语句
- chart.js - Chart.JS 删除卡在循环中的数据
- java - 对话框在主屏幕上 30 秒后不显示
- laravel - 如何在输入字段中显示 Javascript 数据
- swift - swiftUI 选择器“通用结构 'Picker' 要求 'String' 符合 'View'”
- java - 链表中的 JAVA 类型参数
- node.js - 将数据从数据库传递到 ejs 文件时,ejs 文件中的 forEach 错误
- php - symfony 学说鉴别器错误序列化器
- sql - 参考之前的迭代在 SQL 中创建循环
- spring - 使用 @requestBody 时发布请求返回 400