Vectorization, threading, and cache-blocking considerations for hydrocodes on emerging architectures
- Los Alamos National Lab. (LANL), Los Alamos, NM (United States)
- Univ. of California, Santa Cruz, CA (United States)
- Stanford Univ., CA (United States)
This work reports on considerations for improving computational performance in preparation for current and expected changes to computer architecture. The algorithms studied will include increasingly complex prototypes for radiation hydrodynamics codes, such as gradient routines and diffusion matrix assembly (e.g., in [1-6]). The meshes considered for the algorithms are structured or unstructured meshes. The considerations applied for performance improvements are meant to be general in terms of architecture (not specifically graphical processing unit (GPUs) or multi-core machines, for example) and include techniques for vectorization, threading, tiling, and cache blocking. Out of a survey of optimization techniques on applications such as diffusion and hydrodynamics, we make general recommendations with a view toward making these techniques conceptually accessible to the applications code developer. Published 2015. This article is a U.S. Government work and is in the public domain in the USA.
- Research Organization:
- Los Alamos National Lab. (LANL), Los Alamos, NM (United States)
- Sponsoring Organization:
- USDOE
- Grant/Contract Number:
- AC52-06NA25396
- OSTI ID:
- 1214827
- Report Number(s):
- LA-UR-14-21299
- Journal Information:
- International Journal for Numerical Methods in Fluids, Vol. 79, Issue 11; ISSN 0271-2091
- Publisher:
- WileyCopyright Statement
- Country of Publication:
- United States
- Language:
- English
Similar Records
Deploy threading in Nalu solver stack
Data Locality Enhancement of Dynamic Simulations for Exascale Computing (Final Report)