Achieving High Performance on Supercomputers with a Sequential Task-based Programming Model

Achieving High Performance on Supercomputers with a Sequential Task-based Programming Model
复制标题

使用基于顺序任务的编程模型在超级计算机上实现高性能

DOI:
10.1109/tpds.2017.2766064
复制
发表时间:
2017
影响因子:
5.3
通讯作者:
Samuel Thibault
Samuel Thibault
中科院分区:
计算机科学2区
文献类型:
--
作者:
E. Agullo;Olivier Aumage;Mathieu Faverge;N. Furmento;Florent Pruvost;Marc Sergent;Samuel Thibault

文献摘要

被引文献

相似文献

加速器作为超级计算机上的标准计算资源的出现以及随后的架构复杂性的增加重新唤起了对高级并行编程范式的需求。基于顺序任务的编程模型已被证明可以在单个多核节点上有效地应对这一挑战,该节点可能通过加速器进行增强,这促使其在OpenMP 4.0标准中得到支持。在本文中,我们表明,这种模式也可以用来实现高性能的现代超级计算机组成的多个这样的节点,在用户代码的变化非常有限。为了证明这一点,我们扩展了StarPU运行时系统,增加了一个高级节点间数据管理层,通过自动发布通信来支持该模型。我们用基于任务的瓦片Cholesky算法来说明我们的讨论,我们在这个新的运行时系统层上实现了该算法。我们表明,它允许非常高的生产率,同时实现了性能竞争力的纯消息传递接口(MPI)的ScaLAPACK Cholesky参考实现和DPLASMA Cholesky代码,实现另一个(非顺序)基于任务的编程范式。
The emergence of accelerators as standard computing resources on supercomputers and the subsequent architectural complexity increase revived the need for high-level parallel programming paradigms. Sequential task-based programming model has been shown to efficiently meet this challenge on a single multicore node possibly enhanced with accelerators, which motivated its support in the OpenMP 4.0 standard. In this paper, we show that this paradigm can also be employed to achieve high performance on modern supercomputers composed of multiple such nodes, with extremely limited changes in the user code. To prove this claim, we have extended the StarPU runtime system with an advanced inter-node data management layer that supports this model by posting communications automatically. We illustrate our discussion with the task- based tile Cholesky algorithm that we implemented on top of this new runtime system layer. We show that it allows for very high productivity while achieving a performance competitive with both the pure Message Passing Interface (MPI)-based ScaLAPACK Cholesky reference implemen- tation and the DPLASMA Cholesky code, which implements another (non sequential) task-based programming paradigm.