Presentation
JACC: Easy CPU/GPU Performance Portability for Scientific Applications in Julia
DescriptionOur JACC poster for SC25 presents a completely updated version of the Best Poster finalist at SC24, showcasing the latest added features in the JACC library and ecosystem for productive scientific computing. First, we describe the new and stable JACC API components: (i) a portable memory model, (ii) kernel launching, and (iii) CPU/GPU backend selection without code changes. Second, we present two added features: (i) JACC’s shared, for exploiting cached shared memory among threads, and (ii) JACC’s Multi module to program nodes with an increasing number of GPUs. Third, we present JACC ports of five science applications: XSBench, miniBUDE, LULESH, BabelStream, and Hartree–Fock, showing performance comparisons against C++ programming models for the first three on NVIDIA’s A100 and H100, and AMD’s MI100 and MI250X (Frontier’s) GPUs. Our work shows that as JACC and Julia continue to mature they allow developing performance-portable science codes at a fraction of the cost.

Event Type
Research and ACM SRC Posters
TimeTuesday, 18 November 20258:00am - 5:00pm CST
LocationSecond Floor Atrium
Archive
view




