Workshop:P3HPC: 2021 International Workshop on Performance, Portability, and Productivity in HPC
Authors: Amanda Dufek, Rahulkumar Gayatri, and Neil Mehta (Lawrence Berkeley National Laboratory (LBNL)); Douglas Doerfler (Lawrence Berkeley National Laboratory (retired)); Brandon Cook (Lawrence Berkeley National Laboratory (LBNL)); Yasaman Ghadar (Argonne National Laboratory (ANL)); and Carleton DeTar (University of Utah)
Abstract: In this paper, we introduce a GPU-friendly parallel implementation of Milc-Dslash that exposes multiple hierarchies of parallelism in the algorithm. Milc-Dslash was designed to serve as a benchmark with highly optimized matrix-vector multiplications to measure the resource utilization on the GPU systems. The parallel hierarchies in the Milc-Dslash algorithm are mapped onto a target hardware using Kokkos and SYCL programming models. We present the performance achieved by Kokkos and SYCL implementations of Milc-Dslash on NVIDIA A100 GPU, AMD MI100 GPU, and Intel Gen9 GPU. Additionally, we compare the Kokkos and SYCL performances with those obtained from the versions written in CUDA and HIP programming models on NVIDIA A100 GPU and AMD MI100 GPU, respectively.