中文

JUWELS集群上基于分块张量-矩阵乘法的3D-DFT可扩展性

计算物理 2024-07-10 v1 分布式、并行与集群计算

摘要

三维离散傅里叶变换(DFT)是一种用于解决不同领域问题的技术。如今,3D-DFT的常用实现源自快速傅里叶变换(FFT)算法。然而,有证据表明分布式内存3D-FFT算法由于其全交换通信而扩展性不佳。在此,基于Sedukhin等人[Proceedings of the 30th International Conference on Computers and Their Applications, CATA 2015 pp. 193-200 (01 2015)]的工作,我们重新审视通过一种使用点对点通信但算术复杂度更高的替代方法来改善3D-DFT扩展性的可能性。新算法通过三种特别适配的Cannon算法变体在体积分解的域上利用张量-矩阵乘法。它已被实现为名为S3DFT的C++库,并在Jülich超级计算中心的JUWELS集群上进行了测试。我们的共享内存张量-矩阵乘法实现达到了单节点理论峰值性能的88%。分布式内存张量-矩阵乘法的一种变体表现出优异的扩展性,而另外两种变体性能较差,这可归因于其固有的通信模式。S3DFT与Intel MKL和FFTW3库的比较表明,目前iMKL总体表现最佳,依次为FFTW3和S3DFT。随着算法的进一步改进和/或在具有高延迟网络连接的集群(例如云平台)上运行,这一局面可能会改变。

关键词

引用

@article{arxiv.2303.13337,
  title  = {Scalability of 3D-DFT by block tensor-matrix multiplication on the JUWELS Cluster},
  author = {Nitin Malapally and Viacheslav Bolnykh and Estela Suarez and Paolo Carloni and Thomas Lippert and Davide Mandelli},
  journal= {arXiv preprint arXiv:2303.13337},
  year   = {2024}
}

备注

18 pages, 8 figures