kEDM: A Performance-portable Implementation of Empirical Dynamic Modeling using Kokkos

kEDM: A Performance-portable Implementation of Empirical Dynamic Modeling using Kokkos
复制标题

DOI:
10.1145/3437359.3465571
复制
发表时间:
2021-05
期刊:
Practice and Experience in Advanced Research Computing
影响因子:
--
通讯作者:
Keichi Takahashi;Wassapon Watanakeesuntorn;Koheix Ichikawa;Joseph Park;Ryousei Takano;J. Haga;G. Sugihara;G. Pao
Keichi Takahashi;Wassapon Watanakeesuntorn;Koheix Ichikawa;Joseph Park;Ryousei Takano;J. Haga;G. Sugihara;G. Pao
中科院分区:
其他
文献类型:
--
作者:
Keichi Takahashi;Wassapon Watanakeesuntorn;Koheix Ichikawa;Joseph Park;Ryousei Takano;J. Haga;G. Sugihara;G. Pao

文献摘要

被引文献

相似文献

经验动态建模(EDM)是一种最先进的非线性时间序列分析框架。尽管EDM具有广泛的适用性,但由于其昂贵的计算成本,它不能扩展到大型数据集。为了克服这一障碍,研究人员从算法和实现两个方面尝试并成功地加速了EDM。在以前的工作中,我们开发了一个针对HPC系统的大规模并行EDM实现(MpEDM)。但是,mpEDM为不同的体系结构维护不同的后端。在移植到新硬件时,这种设计成为日益多样化的HPC系统的负担。本文在Kokkos性能可移植框架(KEDM)的基础上,设计并开发了一种性能可移植的EDM实现,该框架可以同时运行在CPU和GPU上,并且基于单个代码库。此外,我们针对EDM计算对单个核进行了优化,并使用真实数据集展示了与mpEDM相比,收敛交叉映射计算的加速比高达5.5倍。
Empirical Dynamic Modeling (EDM) is a state-of-the-art non-linear time-series analysis framework. Despite its wide applicability, EDM was not scalable to large datasets due to its expensive computational cost. To overcome this obstacle, researchers have attempted and succeeded in accelerating EDM from both algorithmic and implementational aspects. In previous work, we developed a massively parallel implementation of EDM targeting HPC systems (mpEDM). However, mpEDM maintains different backends for different architectures. This design becomes a burden in the increasingly diversifying HPC systems, when porting to new hardware. In this paper, we design and develop a performance-portable implementation of EDM based on the Kokkos performance portability framework (kEDM), which runs on both CPUs and GPUs while based on a single codebase. Furthermore, we optimize individual kernels specifically for EDM computation, and use real-world datasets to demonstrate up to 5.5 × speedup compared to mpEDM in convergent cross mapping computation.