Commenced in January 2007
Frequency: Monthly
Edition: International
Paper Count: 30685
Lattice Boltzmann Simulation of Binary Mixture Diffusion Using Modern Graphics Processors

Authors: Mohammad Amin Safi, Mahmud Ashrafizaadeh, Amir Ali Ashrafizaadeh


A highly optimized implementation of binary mixture diffusion with no initial bulk velocity on graphics processors is presented. The lattice Boltzmann model is employed for simulating the binary diffusion of oxygen and nitrogen into each other with different initial concentration distributions. Simulations have been performed using the latest proposed lattice Boltzmann model that satisfies both the indifferentiability principle and the H-theorem for multi-component gas mixtures. Contemporary numerical optimization techniques such as memory alignment and increasing the multiprocessor occupancy are exploited along with some novel optimization strategies to enhance the computational performance on graphics processors using the C for CUDA programming language. Speedup of more than two orders of magnitude over single-core processors is achieved on a variety of Graphical Processing Unit (GPU) devices ranging from conventional graphics cards to advanced, high-end GPUs, while the numerical results are in excellent agreement with the available analytical and numerical data in the literature.

Keywords: graphical processing unit, Lattice Boltzmann model, Binary mixture diffusion, Optimized algorithm

Digital Object Identifier (DOI):

Procedia APA BibTeX Chicago EndNote Harvard JSON MLA RIS XML ISO 690 PDF Downloads 1190


[1] X. Shan and J. Doolen, "Diffusion in a multicomponent Lattice Boltzmann model," in , Physical Review E., Vol. 54, 1996.
[2] L .S. Luo and S. S. Girimaji, "Theory of Lattice Boltzmann Method: Two fluid model for binary," in Physical Review E., Vol. 67, 2003.
[3] M. E. McCracken and J. Abraham, "Lattice Boltzmann Method for binary mixtures with different molecular weights," in Physical Review E., Vol. 71, 2005.
[4] S. Arcidiacono, S. Ansumli, I. V. Karlin J. Mantzaras and K.B. Boulouchos, "Entropic Lattice Boltzmann Method for simulation of binary mixtures," in Mathematics and Computers in simulation, Vol. 72, No. 2-6, pp. 79-83, 2006.
[5] S. Arcidiacono, I. V. Karlin J. Mantzaras and C. Foruzakis, "Lattice Boltzmann model for the simulation of multicomponent mixtures," in Physical Review E., Vol. 78, No. 4, 2008.
[6] S. Arcidiacono, J. Mantzaras and I. V. Karlin "Lattice Boltzmann simulation of catalytic reactions," in Physical Review E., Vol. 76, No. 4, 2007.
[7] W. Li, Z. Fan, X. Wei and A. Kaufman, "GPU-based flow simulation with complex boundaries," in GPU Gems 2Pharr M., (ed) Addison Wesley: Boston, MA, 747-764, 2005.
[8] H. Zhu, X. Liu, Y. Liu and E. Wu, "Simulation of miscible binary mixtures based on Lattice Boltzmann method," in Comp. Anim. Virtual Worlds, 17, 403-410, 2008.
[9] J. Tolke, "Implementation of a Lattice Boltzmann kernel using the compute unified device architecture," in computing and Visualization in Science, 2008.
[10] J. Tolke and M. Krafczyk, "TeraFLOP computing on a desktop PC with GPUs for 3D CFD," in International Journal of Computational Fluid Dynamics, Vol. 22, No. 7, 2008.
[11] A. Kaufman, Z. Fan and K. Petkof, "Implementing the Lattice Boltzmann model on commodity graphics hardware," in Journal of Statistical Mechanics: Theory and Experiment, 2009.
[12] F. Kuznik, C. Obrecht, G. Rusaouen and J. Roux, "LBM Based flow simulation using GPU computing processor," in Comp. and Math. With App. Volume 59, Issue 7, pp. 2380-2392, 2010.
[13] A. Zahehgol, M. Ashrafizaadeh, and M.A. Safi, "GPU implementation of a lattice Boltzmann flow solver", in Proc. 18th Annual International Conference on Mechanical Engineering, Sharif University of Technology, Tehran, 2010.
[14] M. Bernasch, M. Fatica, S. Melchionna, S. Succi and E. Kaxiras, "A flexible high-performance Lattice Boltzmann GPU code for simulation of fluid flows in complex geometries," in Concurrency and Computation: Prac. Exper. 22, pp 1-14, 2010.
[15] D. Ribbrock, M. Geveler, D. Goddeke and S. Turek, "Performance and accuracy of Lattice Boltzmann kernels on multi- and manycore architectures," in Procedia Computer science 1, pp 239-247, 2010.
[16] C. Obrecht, F. Kuznik, B. Tourancheau and J. Roux, "A new approach to the lattice Boltzman method for graphics processing units," in Comp. Math. with App. 2010, to be published.
[17] M. A. Safi, M. Ashrafizaadeh, and A. Zahehgol, "Implementing lattice Boltzmann fluid flow simulations on graphics processors", in Proc. 13 Annual and 2nd international Fluid Dynamics Conference, University of Shiraz, Shiraz, 2010, submitted for publication.
[18] Rastegari, A., "Simulation of gaseous mixtures in a packed bed of unfixed particles," Msc. Thesis, Isfahan University of Technology, 2008.
[19] A.N. Ghorban and I. V. Karlin, in Physica A 206, 40, 1994.
[20] nVIDIA, CUDA Programming Guide V3.0, 2010.
[21] nVIDIA, CUDA Best Practice Guide V3.0, 2010.
[22] nVIDIA, CUDA Visual Profiler V3.0.23, 2010.
[23] S. S. Chikatamarla, S. Ansumali, and I. V. Karlin, in Europhys. Lett. 74, 215, 2006.