Exploring Shared-Memory Optimizations for an Unstructured Mesh CFD Application on Modern Parallel Systems
Type
Conference PaperAuthors
Mudigere, DheevatsaSridharan, Srinivas
Deshpande, Anand
Park, Jongsoo
Heinecke, Alexander
Smelyanskiy, Mikhail
Kaul, Bharat
Dubey, Pradeep
Kaushik, Dinesh
Keyes, David E.

KAUST Department
Computer, Electrical and Mathematical Sciences and Engineering (CEMSE) DivisionApplied Mathematics and Computational Science Program
Extreme Computing Research Center
Date
2015-05Permanent link to this record
http://hdl.handle.net/10754/577110
Metadata
Show full item recordAbstract
In this work, we revisit the 1999 Gordon Bell Prize winning PETSc-FUN3D aerodynamics code, extending it with highly-tuned shared-memory parallelization and detailed performance analysis on modern highly parallel architectures. An unstructured-grid implicit flow solver, which forms the backbone of computational aerodynamics, poses particular challenges due to its large irregular working sets, unstructured memory accesses, and variable/limited amount of parallelism. This code, based on a domain decomposition approach, exposes tradeoffs between the number of threads assigned to each MPI-rank sub domain, and the total number of domains. By applying several algorithm- and architecture-aware optimization techniques for unstructured grids, we show a 6.9X speed-up in performance on a single-node Intel® XeonTM1 E5 2690 v2 processor relative to the out-of-the-box compilation. Our scaling studies on TACC Stampede supercomputer show that our optimizations continue to provide performance benefits over baseline implementation as we scale up to 256 nodes.Citation
Mudigere, D., Sridharan, S., Deshpande, A., Park, J., Heinecke, A., Smelyanskiy, M., … Keyes, D. (2015). Exploring Shared-Memory Optimizations for an Unstructured Mesh CFD Application on Modern Parallel Systems. 2015 IEEE International Parallel and Distributed Processing Symposium. doi:10.1109/ipdps.2015.114ae974a485f413a2113503eed53cd6c53
10.1109/IPDPS.2015.114