Portable DataParallel Surface Reconstruction on a Uniform Rectilinear Grid
With the increasing heterogeneity and onnode parallelism of highperformance computing hardware, a major challenge is to develop portable and efficient algorithms and software. In this work, we present our implementation of a portable code to perform surface reconstruction using NVIDIA's Thrust library. Surface reconstruction is a technique commonly used in volume tracking methods for simulations of multimaterial flow with interfaces. Here, we have designed a 3D mesh data structure that is easily mapped to the 1D vectors used by Thrust and at the same time is simple to use and uses familiar data structure terminology (such as cells, faces, vertices, and edges). With this new data structure in place, we have implemented a piecewise linear interface reconstruction algorithm in 3 dimensions that effectively exploits the symmetry present in a uniform rectilinear computational cell. Finally, we report performance results, which show that a single implementation of these algorithms can be compiled to multiple backends (specifically, multicore CPUs, NVIDIA GPUs, and Intel Xeon Phi processors), making efficient use of the available parallelism on each. We also compare performance of our implementation to a legacy FORTRAN implementation in Message Passing Interface (MPI) and show performance parity on single and multicore CPU and achievedmore »
 Authors:

^{[1]}
;
^{[1]}
;
^{[1]};
^{[1]}
 Los Alamos National Lab. (LANL), Los Alamos, NM (United States)
 Publication Date:
 Report Number(s):
 LAUR1621452
Journal ID: ISSN 02712091
 Grant/Contract Number:
 AC5206NA25396
 Type:
 Accepted Manuscript
 Journal Name:
 International Journal for Numerical Methods in Fluids
 Additional Journal Information:
 Journal Volume: 86; Journal Issue: 2; Journal ID: ISSN 02712091
 Publisher:
 Wiley
 Research Org:
 Los Alamos National Lab. (LANL), Los Alamos, NM (United States)
 Sponsoring Org:
 USDOE National Nuclear Security Administration (NNSA)
 Country of Publication:
 United States
 Language:
 English
 Subject:
 97 MATHEMATICS AND COMPUTING; VolumeofFluid method; interface reconstruction; data parallel models for multicore; mesh data structures
 OSTI Identifier:
 1458933
Francois, Marianne M., Lo, LiTa, Sewell, Christopher Meyer, and Velechovsky, Jan. Portable DataParallel Surface Reconstruction on a Uniform Rectilinear Grid. United States: N. p.,
Web. doi:10.1002/fld.4410.
Francois, Marianne M., Lo, LiTa, Sewell, Christopher Meyer, & Velechovsky, Jan. Portable DataParallel Surface Reconstruction on a Uniform Rectilinear Grid. United States. doi:10.1002/fld.4410.
Francois, Marianne M., Lo, LiTa, Sewell, Christopher Meyer, and Velechovsky, Jan. 2018.
"Portable DataParallel Surface Reconstruction on a Uniform Rectilinear Grid". United States.
doi:10.1002/fld.4410.
@article{osti_1458933,
title = {Portable DataParallel Surface Reconstruction on a Uniform Rectilinear Grid},
author = {Francois, Marianne M. and Lo, LiTa and Sewell, Christopher Meyer and Velechovsky, Jan},
abstractNote = {With the increasing heterogeneity and onnode parallelism of highperformance computing hardware, a major challenge is to develop portable and efficient algorithms and software. In this work, we present our implementation of a portable code to perform surface reconstruction using NVIDIA's Thrust library. Surface reconstruction is a technique commonly used in volume tracking methods for simulations of multimaterial flow with interfaces. Here, we have designed a 3D mesh data structure that is easily mapped to the 1D vectors used by Thrust and at the same time is simple to use and uses familiar data structure terminology (such as cells, faces, vertices, and edges). With this new data structure in place, we have implemented a piecewise linear interface reconstruction algorithm in 3 dimensions that effectively exploits the symmetry present in a uniform rectilinear computational cell. Finally, we report performance results, which show that a single implementation of these algorithms can be compiled to multiple backends (specifically, multicore CPUs, NVIDIA GPUs, and Intel Xeon Phi processors), making efficient use of the available parallelism on each. We also compare performance of our implementation to a legacy FORTRAN implementation in Message Passing Interface (MPI) and show performance parity on single and multicore CPU and achieved good parallel speedups on GPU. In conclusion, our research demonstrates the advantage of performance portability of the underlying dataparallel programming model.},
doi = {10.1002/fld.4410},
journal = {International Journal for Numerical Methods in Fluids},
number = 2,
volume = 86,
place = {United States},
year = {2018},
month = {1}
}