Lattice Boltzmann Simulations on a GPU: An optimization approach using C++ AMP
The lattice Boltzmann method has become a valuable tool in computational fluid dynamics, one of the reasons is due to the simplicity of its coding. In order to maximize the performance potential of todays computers, code has to be optimized for parallel execution.
In order to achieve parallel execution of the lattice Boltzmann method, the data dependency has to be solved. And to get good performance, the memory has to be organized for unit stride access. Here we investigate the most known algorithms for lattice Boltzmann, and implement a code which runs on a parallel graphics processor, using a library for parallelization called C++ AMP. Furthermore, we show how the code compares to known solutions of fluid flows to verify the numerical results. The optimized parallel code achieves a speed up of 650 times the un-optimized code, on a current generation high-end graphics card.
Place, publisher, year, edition, pages
Institutt for marin teknikk , 2012. , 71 p.
ntnudaim:7271, MIMART Marin teknikk (2 årig), Marin hydrodynamikk
IdentifiersURN: urn:nbn:no:ntnu:diva-18854Local ID: ntnudaim:7271OAI: oai:DiVA.org:ntnu-18854DiVA: diva2:566322
Holm, Håvard, Førsteamanuensis