上一页 1 ··· 3 4 5 6 7
摘要: 部署完之后,代码也能正确跑起来了,也确实集群分散了。跑一下各种各样的代码,发现了一个错误: 这份代码是什么问题导致的呢?然后我不小心把 MPF_Finalize() 函数注释掉了,那么就是说明有一个进程先错误返回了。Master 进程捕获到了。 这里反映了一个事实: 集群中如果有一个进程挂掉了,那么 阅读全文
posted @ 2018-04-10 20:52 HelloWooo 阅读(5457) 评论(1) 推荐(0) 编辑
摘要: 版本: Open MPI 3.0.1 编译好可执行的C语言程序后,使用 mpirun -np 3 Test 命令,发现没有正常运行,而是报错: There are not enough slots available in the system to satisfy the 3 slotsthat 阅读全文
posted @ 2018-04-10 17:25 HelloWooo 阅读(5638) 评论(0) 推荐(0) 编辑
摘要: 现在有2台机器,希望可以尝试一下在多台机器上跑MPI的感觉,所以跑之前就得配置,先参考网址: https://www.cnblogs.com/awy-blog/p/3402949.html: 1. 配置自动ssh登录 这里主要是要各个机器之间能无密码访问,主要用到的就是SSH,因此需要一些设置。 首 阅读全文
posted @ 2018-04-10 14:54 HelloWooo 阅读(2566) 评论(0) 推荐(0) 编辑
摘要: 因为比较常用的是 TCP 协议,所以在 opal/mca/btl/tcp/btl_tcp.h 头文件中找到对应的 这里有定义了一个TCP的组件,以及 TCP模块 (这里我就没有贴出来了), 并且导出了这样一个变量。 接到上次说的话题,那么刚开始的时候,选择哪个通信协议呢? 通过在 PowerShel 阅读全文
posted @ 2018-04-10 10:24 HelloWooo 阅读(1652) 评论(2) 推荐(0) 编辑
摘要: MPI中的网络通信的原理,需要解决以下几个问题: 1. MPI使用什么网络协议进行通信? 2.中央数据库是存储在哪一台机器上? 3.集群中如果有一台机器挂掉了是否会影响其他机器? 参考: https://aosabook.org/en/openmpi.html 根据MCA, 每个框架下的模块是可变的 阅读全文
posted @ 2018-04-09 21:25 HelloWooo 阅读(3635) 评论(0) 推荐(0) 编辑
摘要: 上一篇文章中说道,我们在 rte.h 中发现了有价值的说明: 我们一块一块来分析,首先看到第一块,关于 Process name Object: 第二块,是关于集体信息交换的: 更多的Modex操作信息,唯一能找到的参考是: https://github.com/open-mpi/ompi/wiki 阅读全文
posted @ 2018-04-09 11:14 HelloWooo 阅读(899) 评论(0) 推荐(0) 编辑
摘要: 接着上一篇的疑问,我们说道,会执行 try_kill_peers 函数,它的函数定义在 ompi_mpi_abort.c 下: 这个时候,就得去看看 ompi_rte_abort_peers(procs, nprocs, errcode) 函数的定义, 它在 rte_orte.h 中其实是一个宏定义 阅读全文
posted @ 2018-04-09 09:24 HelloWooo 阅读(496) 评论(0) 推荐(0) 编辑
摘要: 上一篇文章说道,初始化失败会有一个函数调用: 所以这里简单地进入了 ompi_mpi_errors_are_fatal_comm_handler 函数:看到其头文件 errhandler_predefined.h : 跳去它的实现文件 errhandler_predefined.c 中看对应函数: 阅读全文
posted @ 2018-04-08 21:15 HelloWooo 阅读(1034) 评论(0) 推荐(0) 编辑
摘要: OpenMPI的底层实现: 我们知道,OpenMPI应用起来还是比较简单的,但是如果让我自己来实现一个MPI的并行计算,你会怎么设计呢?————这就涉及到比较底层的东西了。 回想起我们最简单的代码,通过comm_rank来决定做不同的事情,那么这个comm_rank是怎么得到的呢? 源代码从哪里看起 阅读全文
posted @ 2018-04-08 20:48 HelloWooo 阅读(2509) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7