并行计算中的事件聚合与MPI派生数据类型应用
1. 顺序保持事件聚合
1.1 基于通道ID的扩展算法
在TBONs(Tree-Based Overlay Networks)中,为解决事件聚合问题,提出了一种基于通道ID的扩展算法。该算法通过为每个事件分配通道ID,而非记录参与事件的进程列表,解决了原算法的可扩展性限制。
例如,在处理事件流时,若事件C0和C1不属于某个节点,该算法可将这些事件从节点0的队列移动到它们所属的节点。不过,这种粗粒度的挂起机制可能导致循环等待情况,即多个事件类型聚合时无法完成聚合。为解决此问题,GTI实现的基于通道ID的挂起机制包含超时机制,可在发生死锁时中止聚合集以解决死锁。
1.2 性能结果
为验证算法的可扩展性,在一个每节点16核、共864个节点且采用QDR InfiniBand网络的Opteron Linux集群上进行了两个合成测试用例。
- 单类型事件聚合 :如图6(a)所示,对一种不进行进程间通信的空操作事件进行聚合。将慢化率归一化到32个任务的最快测量运行结果,并使用五种不同的树配置。除了单工具层配置p外,慢化率随进程数增加缓慢上升,当扇入为4时,从32个进程增加到2048个进程,慢化率增加两倍。对于2048个任务,基于GTI的工具每秒每个任务可聚合超过10,000个事件。
- MPI屏障事件聚合 :如图6(b)所示,计算基于未插桩版本基准的慢化率。随着屏障事件通信成本随规模增加,除配置p外,所有扇入的工具开销实际上都在降低。
超级会员免费看
订阅专栏 解锁全文
8620

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



