避通信编程技术的高层刻画与推广
分布式、并行与集群计算
2019-10-01 v2
摘要
当今硬件并发性的爆发,加上我们在机器学习与科学模拟中所依托数据的爆发,对我们编写代码的方式有着多方面的影响。它们改变了我们对性能的认知,从而也改变了对好代码的定义:好代码首先必须能够利用前所未有的并行水平。为此,它必须设法将数据及时移入计算设施。由于通信与内存带宽无法跟上计算能力增长的步伐,且延迟在增加——至少相对于硬件本可做到的水平而言——避通信技术愈发重要。我们对避通信算法领域进行刻画与分类。借助我们的新术语对一些避通信编程实例的回顾表明,我们宜拓宽“避通信”的概念并超越数值线性代数去审视。对该术语的抽象、推广与弱化丰富了我们应对数据移动挑战的工具集。由此,我们最终获得更丰富的工具集,可用于为当前及未来硬件代际交付恰当的代码。
引用
@article{arxiv.1909.10853,
title = {A high-level characterisation and generalisation of communication-avoiding programming techniques},
author = {Tobias Weinzierl},
journal= {arXiv preprint arXiv:1909.10853},
year = {2019}
}