X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/book_gpu.git/blobdiff_plain/a79be71669f1b6fa38df1cc606be8e2b39fc4428..b1fd489e34a8d46d286a0d271c38cbfb442f511f:/BookGPU/Chapters/chapter14/ch14.tex?ds=sidebyside diff --git a/BookGPU/Chapters/chapter14/ch14.tex b/BookGPU/Chapters/chapter14/ch14.tex index 2ce9331..89a72fd 100755 --- a/BookGPU/Chapters/chapter14/ch14.tex +++ b/BookGPU/Chapters/chapter14/ch14.tex @@ -8,7 +8,7 @@ application} \section{Introduction} -The lattice Boltzmann (LB) method \index{Lattice Boltzmann method} (for an overview see, e.g., +The lattice Boltzmann (LB) method \index{lattice Boltzmann method} (for an overview see, e.g., \cite{succi-book}) has become a popular approach to a variety of fluid dynamics problems. It provides a way to solve the incompressible isothermal Navier-Stokes equations and has the attractive features of @@ -156,7 +156,7 @@ site, may be thought of as follows. A matrix-vector multiplication ${\cal M}_{ij}f_j$ is used to transform the distributions into the hydrodynamic quantities, where ${\cal M}_{ij}$ is a constant 19x19 matrix related to the choice of -$\mathbf{c}_i$. The non-conserved hydrodynamic quantities are then +$\mathbf{c}_i$. The nonconserved hydrodynamic quantities are then relaxed toward their (known) equilibrium values and are transformed back to new post-collision distributions via the inverse transformation ${\cal M}^{-1}_{ij}$. This gives rise to the need for a minimum of $2\times 19^2$ @@ -252,7 +252,7 @@ For the D3Q19 model, this reduces the volume of data traffic from 19 to version, the necessary transfers are implemented in place using a vector of MPI datatypes with appropriate stride for each direction. - +\clearpage \section{Single GPU implementation}\label{ch14:sec:singlegpu} @@ -744,7 +744,7 @@ we have tried to maintain the modular structure of the CPU where possible. For each data structure, such as the distribution, a separate analogue is maintained in both the CPU and GPU memory spaces. However, the GPU copy does not include the complete CPU structure: in -particular, non-intrinsic datatypes such as MPI datatypes are not +particular, nonintrinsic datatypes such as MPI datatypes are not required on the GPU. Functions to marshal data between CPU and GPU are provided for each data structure, abstracting the underlying CUDA implementation. (This reasonably lightweight abstraction layer @@ -773,7 +773,7 @@ keep the entire problem resident on the device. - +\clearpage \section{Summary} \label{ch14:sec:summary} @@ -967,6 +967,7 @@ by UK EPSRC under grant EV/J007404/1. % set second argument of \begin to the number of references % (used to reserve space for the reference number labels box) +\clearpage \putbib[Chapters/chapter14/biblio14] %\begin{thebibliography}{1}