论文阅读

[MPI]A Hierarchical and Load-Awa

2021-07-06  本文已影响0人  sagfugetabf

2021-07-06
地址:sc'20


泛:MPI3.0中引入了邻居集合通讯( Neighborhood Collectives)的概念。原因是,原本的MPI只定义了点对点和集合通讯。这个集合通讯的可拓展性非常不好,在写代码的一开始就要制定要集合的数量,并且规定好集合中的通讯模式,是broadcast还是all-to-all,对于其他的通讯方法,就只能通过点对点来解决了。这个样子很不方便。于是在新的版本中添加了邻居集合通讯,可以在重新将节点分组了。

精:别人的方法有创新,但是不够全面,

专:本文采百家之长,对稀疏大数据量的通讯模式有所助益。主要体现在,
“Hierarchical” approach,即将大数据直接传输,还是拆成小包传输,然后在接受节点做一次allgather。
拓扑感知:节点内的process 速度快于跨节点,快于 跨交换机
负载感知:一个节点可能同时出现在不同的邻居集合通讯里,这时该节点的负载很高,如果在分配数据时,考虑到负载的差异,可以有效提高效率。

要解决的问题:
1.如何感知下层的硬件,即拓扑感知
2.如何感知上层的负载,即负载感知
3.如何处理任意的通讯模式(讲道理,这个通讯模式怎么理解,还没明白)

实验:
一个字,大;规模很大,动不动就是28672个process,这个process和core的关系是啥,一个server有56个,56-core processors (448,448cores in total),所以实验是动用了4000个节点嘛,真是大手笔。

message size:64k--8m,也不是很大呀

找几个应用验证自己的结果
1.Moore Neighborhoods,这是个新概念,不太懂
2.Random Sparse Graph (RSG),这个是为了验证拓扑结构?
3.Sparse Matrix-Matrix Multiplication,SpMM,这个蛮有名的
4.NAS-DT,
5.Halo Exchange

相关工作:
小众领域,在3.0提出这个概念的时候,有一波研究,后面,隔两年才有一篇文章,4.0的出来了,19年附近又有几篇,
本文集几篇工作的优点,并在大规模的真实环境得到了验证。

总结和未来工作:
总结:主要是负载感知和拓扑感知提升了不少性能,层次化提升的部分非常有限。
未来:把本文的方法应用到深度学习的训练中。

上一篇下一篇

猜你喜欢

热点阅读