中文

Julia 作为 Frontier 百亿亿次系统上统一的端到端工作流语言

分布式、并行与集群计算 2023-09-29 v3 编程语言

摘要

我们评估 Julia 作为一种由 LLVM 驱动的单一语言与生态系统范式,用于开发高性能计算的工作流组件。我们在美国能源部首台百亿亿次超级计算机 Frontier 上运行了一个 Gray-Scott 双变量扩散-反应应用,其使用内存受限的 7 点模板核。我们评估了以下方面的性能、扩展性与权衡:(i)AMD MI250x GPU 上的计算核,(ii)弱扩展至 4,096 个 MPI 进程/GPU 或 512 个节点,(iii)使用 ADIOS2 库绑定的并行 I/O 写入,以及(iv)用于交互式分析的 Jupyter Notebooks。结果表明,尽管 Julia 生成了合理的 LLVM-IR,但在 GPU 上运行时与原生 AMD HIP 模板代码相比存在近 50% 的性能差距。正如预期,在使用系统级安装的 MPI 与并行 I/O 绑定时,我们观察到近乎零的开销。因此,Julia 作为一种兼具高性能与高生产力的工作流组合语言脱颖而出,此结论基于在全球最快超级计算机上的实测。

关键词

引用

@article{arxiv.2309.10292,
  title  = {Julia as a unifying end-to-end workflow language on the Frontier exascale system},
  author = {William F. Godoy and Pedro Valero-Lara and Caira Anderson and Katrina W. Lee and Ana Gainaru and Rafael Ferreira da Silva and Jeffrey S. Vetter},
  journal= {arXiv preprint arXiv:2309.10292},
  year   = {2023}
}

备注

11 pages, 8 figures, accepted at the 18th Workshop on Workflows in Support of Large-Scale Science (WORKS23), IEEE/ACM The International Conference for High Performance Computing, Networking, Storage, and Analysis, SC23