Using HPX and LibGeoDecomp for scaling HPC applications on heterogeneous supercomputers

Using HPX and LibGeoDecomp for scaling HPC applications on heterogeneous supercomputers
复制标题

使用 HPX 和 LibGeoDecomp 在异构超级计算机上扩展 HPC 应用程序

DOI:
10.1145/2530268.2530269
复制
发表时间:
2013
期刊:
SIGMETRICS Perform. Evaluation Rev.
影响因子:
--
通讯作者:
D. Fey
D. Fey
中科院分区:
--
文献类型:
--
作者:
T. Heller;Hartmut Kaiser;Andreas Schäfer;D. Fey

文献摘要

被引文献

相似文献

随着PetaFLOP集群的普遍可用性和配备特殊加速卡(如Xeon Phi)的异构机器的出现,计算机科学家面临着提高应用程序可扩展性的艰巨任务,超越了当今传统技术和编程模型的可能性。此外,对高度自适应的运行时算法和处理高度不均匀数据的应用程序的需求进一步阻碍了我们有效编写性能和扩展性良好的代码的能力。 在本文中,我们介绍了使用HPX[19,3,29]的优点,HPX是一种通用并行运行时系统,适用于任何规模的应用程序,作为LibGeoDecomp[25]的后端,用于实现具有局部交互的三维N-Body模拟。我们比较了在LibGeoDecomp中使用HPX和MPI后端时该应用程序的扩展和性能结果。LibGeoDecomp是一个用于几何分解代码的库,实现了用户提供的仿真模型的想法,其中库处理空间和时间循环以及数据存储。 所呈现的结果是从各种同构和异构运行中获得的,包括在TACC的Stampede超级计算机上结合多达1024个节点(16384个传统核心)和多达16个Xeon Phi加速器(3856个硬件线程)。在使用HPX后端的配置中,已经实现了超过0.35 PFLOPS,这对应于大约79%的并行应用程序效率。我们的测量结果表明,使用本质上异步和消息驱动的编程模型暴露的HPX,使更好的延迟隐藏,细到中等粒度的并行性,和基于约束的同步的优势。HPX的统一编程模型简化了为异构资源编写高度并行的代码。
With the general availability of PetaFLOP clusters and the advent of heterogeneous machines equipped with special accelerator cards such as the Xeon Phi[2], computer scientist face the difficult task of improving application scalability beyond what is possible with conventional techniques and programming models today. In addition, the need for highly adaptive runtime algorithms and for applications handling highly inhomogeneous data further impedes our ability to efficiently write code which performs and scales well. In this paper we present the advantages of using HPX[19, 3, 29], a general purpose parallel runtime system for applications of any scale as a backend for LibGeoDecomp[25] for implementing a three-dimensional N-Body simulation with local interactions. We compare scaling and performance results for this application while using the HPX and MPI backends for LibGeoDecomp. LibGeoDecomp is a Library for Geometric Decomposition codes implementing the idea of a user supplied simulation model, where the library handles the spatial and temporal loops, and the data storage. The presented results are acquired from various homogeneous and heterogeneous runs including up to 1024 nodes (16384 conventional cores) combined with up to 16 Xeon Phi accelerators (3856 hardware threads) on TACC's Stampede supercomputer[1]. In the configuration using the HPX backend, more than 0.35 PFLOPS have been achieved, which corresponds to a parallel application efficiency of around 79%. Our measurements demonstrate the advantage of using the intrinsically asynchronous and message driven programming model exposed by HPX which enables better latency hiding, fine to medium grain parallelism, and constraint based synchronization. HPX's uniform programming model simplifies writing highly parallel code for heterogeneous resources.