×

Parallel lattice Boltzmann method with blocked partitioning. (English) Zbl 1186.68074

Summary: This paper presents and discusses a blocked parallel implementation of bi- and three-dimensional versions of the Lattice Boltzmann Method. This method is used to represent and simulate fluid flows following a mesoscopic approach. Most traditional parallel implementations use simple data distribution strategies to parallelize the operations on the regular fluid data set. However, it is well known that block partitioning is usually better. Such a parallel implementation is discussed and its communication cost is established. Fluid flows simulations crossing a cavity have also been used as a real-world case study to evaluate our implementation. The presented results with our blocked implementation achieve a performance up to 31% better than non-blocked versions, for some data distributions. Thus, this work shows that blocked, parallel implementations can be efficiently used to reduce the parallel execution time of the method.

MSC:

68M20 Performance evaluation, queueing, and scheduling in the context of computer systems

Software:

MPI; LUDWIG
Full Text: DOI

References:

[1] Anderson J.D.: Computational Fluid Dynamics. McGraw-Hill, New York (1995)
[2] Artoli A., Hoekstra A., Sloot P.: Optimizing Lattice Boltzmann simulations for unsteady flows. Comput. Fluids 35(2), 227–240 (2005) · Zbl 1099.76051 · doi:10.1016/j.compfluid.2004.12.002
[3] Batchelor G.K.: An Introduction to Fluid Dynamics. Cambridge University Press, Cambridge, MA (1987) · Zbl 0958.76001
[4] Buick, JM.: Lattice Boltzmann methods in interfacial wave modelling. Ph.D. Dissertation, University of Edinburgh, Fluid Dynamics Group, Feb. 1997
[5] Carter, J., Oliker, L.: Performance evaluation of Lattice-Boltzmann magnetohydrodynamics simulations on modern parallel vector systems. Lawrence Berkeley National Laboratory, Paper LBNL-59340, Jan. 2006 · Zbl 1303.76113
[6] Chen S., Doolen G.D.: Lattice Boltzmann method for fluid flows. Annu. Rev. Fluid Mech. 30, 329–364 (1998) · Zbl 1398.76180 · doi:10.1146/annurev.fluid.30.1.329
[7] Chung T.: Computational Fluid Dynamics. Cambridge University Press, Cambridge (2003)
[8] Desplat J.-C., Pagonabarraga I., Bladon P.: Ludwig: a parallel Lattice-Boltzmann code for complex fluids. Comput. Phys. Commun. 134(3), 273–290 (2001) · Zbl 1032.76055 · doi:10.1016/S0010-4655(00)00205-8
[9] Dongarra, J., Foster, I., Fox, G., Gropp, W., Kennedy, K., Torczon, L., White, A., (eds.): The Sourcebook of Parallel Computing. The Morgan Kaufmann Series in Computer Architecture and Design. Elsevier, Nov. 2002
[10] Dupuis, A.: From a Lattice Boltzmann model to a parallel and reusable implementation of a virtual river. Ph.D. Dissertation, University of Geneva, CUI, Computer Science Departement, University of Geneva (2002)
[11] Elmroth E., Gustavson F., Jonsson I., Kagström B.: Recursive blocked algorithms and hybrid data structures for dense matrix library software. SIAM Rev. 46(1), 3–45 (2004) · Zbl 1068.65040 · doi:10.1137/S0036144503428693
[12] Ferziger J.H., Peric M.: Computational Methods for Fluid Dynamics. Springer-Verlag, London (2002)
[13] Flekkøy E.G.: Lattice Bhatnagar-Gross-Krook models for miscible fluids. Phys. Rev. E 47(6), 4247–4257 (1993) · doi:10.1103/PhysRevE.47.4247
[14] Foster I.: Designing and Building Parallel Programs: Concepts and Tools for Parallel Software Engineering. Addison Wesley, Reading, MA (1995) · Zbl 0844.68040
[15] Gropp W., Lusk E., Skjellum A.: Using MPI: Portable Parallel Programming with the Message Passing Interface. MIT Press, Cambridge, Massachusetts, USA (1994) · Zbl 0875.68206
[16] He X., Luo L.-S.: Lattice Boltzmann model for the incompressible Navier-Stokes equation. J. Stat. Phys. 88, 927–944 (1997) · Zbl 0939.82042 · doi:10.1023/B:JOSS.0000015179.12689.e4
[17] He X., Luo L.-S.: Theory of the Lattice Boltzmann equation: from Boltzmann equation to Lattice Boltzmann equation. Phys. Rev. E 56, 6811–6817 (1997) · doi:10.1103/PhysRevE.56.6811
[18] Jonsson I., Kagström B.: Recursive blocked algorithms for solving triangular systems–Part I: one-sided and coupled Sylvester-type matrix equations. ACM Trans. Math. Softw. 28(4), 392–415 (2002) · Zbl 1072.65061 · doi:10.1145/592843.592845
[19] Kandhai D., Koponen A., Hoekstra A., amd K.M., Timonen J., Sloot P.: Lattice-Boltzmann hydrodynamics on parallel systems. Comput. Phys. Commun. 111, 14–26 (1998) · Zbl 0942.76062 · doi:10.1016/S0010-4655(98)00025-3
[20] Körner, C., Pohl, T., Rüde, U., Thürey, N., and Zeiser, T.: Parallel Lattice Boltzmann methods for CFD applications. In: Bruaset, A., Tveito, A. (eds.) Numerical Solution of Partial Differential Equations on Parallel Computers, vol. 51 of Lecture Notes for Computational Science and Engineering, Chap. 5, pp. 439–465. Springer-Verlag, London (2005). ISBN 3-540-29076-1 · Zbl 1142.76045
[21] Lam, M.D., Rothberg, E.E., Wolf, M.E.: The cache performance and optimizations of blocked algorithms. In ASPLOS-IV: Proceedings of the 4th International Conference on Architectural Support for Programming Languages and Operating Systems, pp. 63–74. ACM Press, New York, NY, USA (1991)
[22] McNamara G., Zanetti G.: Use of the Boltzmann equation to simulate Lattice-Gas Automata. Phys. Rev. Lett. 61, 2332–2335 (1988) · doi:10.1103/PhysRevLett.61.2332
[23] Pan C., Prins J.F., Miller C.T.: A high-performance Lattice Boltzmann implementation to model flow in porous media. Comput. Phys. Commun. 158(2), 89–105 (2004) · Zbl 1196.76069 · doi:10.1016/j.cpc.2003.12.003
[24] Pohl, T., Thürey, N., Deserno, F., Rüde, U., Lammers, P., Wellein, G., Zeiser, T.: Performance Evaluation of Parallel Large-Scale Lattice Boltzmann Applications on Three Supercomputing Architectures. Supercomputing (2004)
[25] Snir M., Otto S., Huss-Lederman S., Walker D., Dongarra J.: MPI: the Complete Reference, vol. 1 and 2. The MIT Press, Cambridge, MA (1998)
[26] Succi S.: The Lattice Boltzmann Equation for Fluid Dynamics and Beyond. Oxford University Press, New York, USA (2001) · Zbl 0990.76001
[27] Wilkinson B., Allen M.: Parallel Programming: Using Networked Workstations and Parallel Computers. Prentice Hall, USA (1998)
[28] Wolf-Gladrow D.A.: Lattice-Gas Cellular Automata and Lattice Boltzmann Models: an Introduction. Springer, Berlin (2000) · Zbl 0999.82054
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. In some cases that data have been complemented/enhanced by data from zbMATH Open. This attempts to reflect the references listed in the original paper as accurately as possible without claiming completeness or a perfect matching.