MPI derived datatypes are an abstraction that simplifies handling of non-contiguous data in MPI applications. These datatypes are recursively constructed at runtime from primitive Named Types defined in the MPI standard. More recently, the development and deployment of CUDA-aware MPI implementations has encouraged the transition of distributed high-performance MPI codes to use GPUs. Such implementations allow MPI functions to directly operate on GPU buffers, easing integration of GPU compute into MPI codes. This work first presents a novel datatype handling strategy for nested strided datatypes, which finds a middle ground between the specialized or generic handling in prior work. This work also shows that the performance characteristics of non-contiguous data handling can be modeled with empirical system measurements, and used to transparently improve MPI_Send/Recv latency. Finally, despite substantial attention to non-contiguous GPU data and CUDA-aware MPI implementations, good performance cannot be taken for granted. This work demonstrates its contributions through an MPI interposer library, TEMPI. TEMPI can be used with existing MPI deployments without system or application changes. Ultimately, the interposed-library model of this work demonstrates MPI_Pack speedup of up to 242000x and MPI_Send speedup of up to 59000x compared to the MPI implementation deployed on a leadership-class supercomputer. This yields speedup of more than 917x in a 3D halo exchange with 3072 processes.


翻译:MPI 衍生数据类型是一种抽象, 简化了对 MPI 应用程序中非连接数据的处理。 这些数据类型是从 MPI 标准中定义的原始命名类型在运行时根据运行时根据原始命名类型递归构建的。 最近, CUDA- 觉察到 MPI 执行的开发和部署鼓励了分布式高性能 MPI 代码的转换到使用 GPU。 这种执行允许 MPI 函数直接在 GPU 缓冲上运行, 简化了 GPU 的整合到 MPI 代码中。 这项工作首先为嵌套套式数据类型数据类型提供了一个新颖的数据类型处理战略, 在先前工作中的专用或通用处理中找到一个中间点。 这项工作还表明, 非连接性数据处理的性能特性可以建模, 并用于透明地改进 MPI_ Send/ recv 透明地改进 MPI MPI 。 最后, 尽管对非连带性 GPUDA 2000 和 CUDA-awa MPI 执行过程进行大量关注, 但不能将良好的性能用于 。 在 MIPI IMI IML_ IMFI IMFI IML IMI IML 30 流 流 流 流 流 的运行 的运行中, 中, 的运行中, 的运行中, IMIS 的运行中, 3 IMPI 的运行中, 的运行 的运行中将 3 IMPL 。

0
下载
关闭预览

相关内容

【图与几何深度学习】Graph and geometric deep learning,49页ppt
Linux导论,Introduction to Linux,96页ppt
专知会员服务
76+阅读 · 2020年7月26日
Python分布式计算,171页pdf,Distributed Computing with Python
专知会员服务
105+阅读 · 2020年5月3日
Keras François Chollet 《Deep Learning with Python 》, 386页pdf
专知会员服务
144+阅读 · 2019年10月12日
开源书:PyTorch深度学习起步
专知会员服务
49+阅读 · 2019年10月11日
【SIGGRAPH2019】TensorFlow 2.0深度学习计算机图形学应用
专知会员服务
39+阅读 · 2019年10月9日
分布式并行架构Ray介绍
CreateAMind
9+阅读 · 2019年8月9日
通过Docker安装谷歌足球游戏环境
CreateAMind
11+阅读 · 2019年7月7日
TorchSeg:基于pytorch的语义分割算法开源了
极市平台
20+阅读 · 2019年1月28日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
分布式TensorFlow入门指南
机器学习研究会
4+阅读 · 2017年11月28日
前端高性能计算(4):GPU加速计算
前端大全
7+阅读 · 2017年10月26日
【学习】Hierarchical Softmax
机器学习研究会
4+阅读 · 2017年8月6日
使用 MPI for Python 并行化遗传算法
Python开发者
5+阅读 · 2017年8月4日
Financial Time Series Representation Learning
Arxiv
10+阅读 · 2020年3月27日
Arxiv
6+阅读 · 2017年7月17日
VIP会员
相关资讯
分布式并行架构Ray介绍
CreateAMind
9+阅读 · 2019年8月9日
通过Docker安装谷歌足球游戏环境
CreateAMind
11+阅读 · 2019年7月7日
TorchSeg:基于pytorch的语义分割算法开源了
极市平台
20+阅读 · 2019年1月28日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
分布式TensorFlow入门指南
机器学习研究会
4+阅读 · 2017年11月28日
前端高性能计算(4):GPU加速计算
前端大全
7+阅读 · 2017年10月26日
【学习】Hierarchical Softmax
机器学习研究会
4+阅读 · 2017年8月6日
使用 MPI for Python 并行化遗传算法
Python开发者
5+阅读 · 2017年8月4日
Top
微信扫码咨询专知VIP会员