Lattice Boltzmann Simulations on a GPU: An optimization approach using C++ AMP
Master thesis
![Thumbnail](/ntnu-xmlui/bitstream/handle/11250/238308/566322_COVER01.pdf.jpg?sequence=6&isAllowed=y)
Date
2012Metadata
Show full item recordCollections
- Institutt for marin teknikk [3437]
Abstract
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 today s 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.