容错MPI的对数缩放容错协议算法
1. 故障识别差异
在并行计算中,故障识别方式存在不同。FT - MPI要求所有存活进程全局识别每个进程故障,而RTS提案允许在每个通信器基础上进行本地故障识别。这种差异使得RTS提案能更灵活地支持库,并为更具可扩展性的容错解决方案打开了大门。
2. 两阶段提交算法
两阶段提交算法在Open MPI中用于支持MPI Comm validate all集体操作。其具体流程如下:
1. 协调器发起投票请求 :协调器向所有参与者广播投票请求,跳过故障进程。由于MPI Comm validate all是集体操作,所有存活进程最终都会进入该操作,因此可以消除投票请求轮次,减少消息复杂性,这被称为主动投票优化。
2. 参与者发送投票 :参与者进入MPI Comm validate all操作后,将投票发送给协调器。在Open MPI实现中,投票是该等级上本地已知故障进程的位域。
3. 协调器做出决策 :协调器收集每个参与者的贡献(跳过故障进程),创建一个决策,以全局已知故障进程列表表示,并将决策广播给所有存活参与者。
4. 处理协调器故障情况 :
- 如果协调器在参与者发送投票前故障,参与者可以安全地决定为未决定状态并退出算法。
- 如果协调器在参与者发送投票后但在参与者收到决策消息前故障,参与者处于不确定状态。没有可选的终止检测算法时,不确定的参与者会阻塞等待协调器恢复;有终止检测算法时,不确定的参与者会线性询问其他参与者是否已做出决定。
超级会员免费看
订阅专栏 解锁全文
1529

被折叠的 条评论
为什么被折叠?



