Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

Julia as a unifying end-to-end workflow language on the Frontier exascale system

Conference ·

We evaluate Julia as a single language and ecosystem paradigm powered by LLVM to develop workflow components for high-performance computing. We run a Gray-Scott, 2-variable diffusion-reaction application using a memory-bound, 7-point stencil kernel on Frontier, the US Department of Energy’s first exascale supercomputer. We evaluate the performance, scaling, and trade-offs of (i) the computational kernel on AMD’s MI250x GPUs, (ii) weak scaling up to 4,096 MPI processes/GPUs or 512 nodes, (iii) parallel I/O writes using the ADIOS2 library bindings, and (iv) Jupyter Notebooks for interactive analysis. Results suggest that although Julia generates a reasonable LLVM-IR, a nearly 50% performance difference exists vs. native AMD HIP stencil codes when running on the GPUs. As expected, we observed near-zero overhead when using MPI and parallel I/O bindings for system-wide installed implementations. Consequently, Julia emerges as a compelling high-performance and high-productivity workflow composition language, as measured on the fastest supercomputer in the world.

Research Organization:
Oak Ridge National Laboratory (ORNL), Oak Ridge, TN (United States)
Sponsoring Organization:
USDOE Office of Science (SC)
DOE Contract Number:
AC05-00OR22725
OSTI ID:
2217706
Resource Relation:
Conference: The International Conference for High Performance Computing, Networking, Storage, and Analysis - Denver, Colorado, United States of America - 11/12/2023 5:00:00 AM-11/17/2023 5:00:00 AM
Country of Publication:
United States
Language:
English

References (30)

RAJA: Portable Performance for Large-Scale Scientific Applications conference November 2019
Workflows are the New Applications: Challenges in Performance, Portability, and Productivity conference November 2020
Julia: A Fresh Approach to Numerical Computing journal January 2017
Kokkos: Enabling manycore performance portability through polymorphic memory access patterns journal December 2014
Makie.jl: Flexible high-performance data visualization for Julia journal September 2021
Stencil computation optimization and auto-tuning on state-of-the-art multicore architectures conference November 2008
The future of scientific workflows journal April 2017
Flexible Performant GEMM Kernels on GPUs journal September 2022
A Community Roadmap for Scientific Workflows Research and Development conference November 2021
A characterization of workflow management systems for extreme-scale applications journal October 2017
Productivity meets Performance: Julia on A64FX conference September 2022
FAIR Computational Workflows journal January 2020
Introduction of Parallel GPGPU Acceleration Algorithms for the Solution of Radiative Transfer journal January 2011
ADIOS 2: The Adaptable Input Output System. A framework for high-performance data management journal July 2020
Evaluating performance and portability of high-level programming models: Julia, Python/Numba, and Kokkos on exascale nodes conference May 2023
High-performance code generation for stencil computations on GPU architectures conference January 2012
Benchmarking Julia’s Communication Performance: Is Julia HPC ready or Full HPC? conference November 2020
Efficient 3D stencil computations using CUDA journal October 2013
Numba: a LLVM-based Python JIT compiler conference January 2015
LLVM: A compilation framework for lifelong program analysis & transformation conference January 2004
Comparing Julia to Performance Portable Parallel Programming Models for HPC conference November 2021
Bring the BitCODE-Moving Compute and Data in Distributed Heterogeneous Systems conference September 2022
Complex Patterns in a Simple System journal July 1993
Fides: A General Purpose Data Model Library for Streaming Data book January 2021
Cataloging the visible universe through Bayesian inference in Julia at petascale journal May 2019
Large-Scale Simulation of Quantum Computational Chemistry on a New Sunway Supercomputer conference November 2022
Automatic, Efficient and Scalable Provenance Registration for FAIR HPC Workflows conference November 2022
Python Workflows on HPC Systems conference November 2020
Extreme Heterogeneity 2018 - Productive Computational Science in the Era of Extreme Heterogeneity: Report for DOE ASCR Workshop on Extreme Heterogeneity report December 2018
GPU-Aware Non-contiguous Data Movement In Open MPI
  • Wu, Wei; Bosilca, George; vandeVaart, Rolf
  • Proceedings of the 25th ACM International Symposium on High-Performance Parallel and Distributed Computing - HPDC '16 https://doi.org/10.1145/2907294.2907317
conference January 2016