Skip to main content
SHARE
Publication

Abstractions and Directives for Adapting Wavefront Algorithms to Future Architectures

by Robert Searles, Sunita Chandrasekaran, Wayne D Joubert, Oscar R Hernandez Mendoza
Publication Type
Conference Paper
Book Title
PASC '18: Proceedings of the Platform for Advanced Scientific Computing Conference
Publication Date
Page Number
4
Issue
0
Publisher Location
New York, United States of America
Conference Name
Platform for Advanced Scientific Computing (PASC18) 2018
Conference Location
Basel, Switzerland
Conference Sponsor
ACM SIGHPC, CSCS
Conference Date
-

Architectures are rapidly evolving, and exascale machines are expected to offer billion-way concurrency. We need to rethink algorithms, languages and programming models among other components in order to migrate large scale applications and explore parallelism on these machines. Although directive-based programming models allow programmers to worry less about programming and more about science, expressing complex parallel patterns in these models can be a daunting task especially when the goal is to match the performance that the hardware platforms can offer. One such pattern is wavefront. This paper extensively studies a wavefront-based miniapplication for Denovo, a production code for nuclear reactor modeling. We parallelize the Koch-Baker-Alcouffe (KBA) parallel-wavefront sweep algorithm in the main kernel of Minisweep (the miniapplication) using CUDA, OpenMP and OpenACC. Our OpenACC implementation running on NVIDIA's next-generation Volta GPU boasts an 85.06x speedup over serial code, which is larger than CUDA's 83.72x speedup over the same serial implementation. Our experimental platform includes SummitDev, an ORNL representative architecture of the upcoming Summit supercomputer. Our parallelization effort across platforms also motivated us to define an abstract parallelism model that is architecture independent, with a goal of creating software abstractions that can be used by applications employing the wavefront sweep motif.