Load Balancing for Computational Fluid Dynamics Calculations

An introduction
  • M. Streng
Conference paper
Part of the ERCOFTAC Series book series (ERCO, volume 3)


Many problems in computational fluid dynamics can be solved numerically by representing the flow on a finite set of points, the grid. The solution procedure typically proceeds by repeated application of some calculations for each point x in the grid, using the values of the flow-field in several grid points in a neighbourhood of x. Provided this neighbourhood is not too large, a common way to perform these calculations on a parallel computer, is by employing domain-decomposition. In such a technique, the computational domain is partitioned into subdomains. Each subdomain contains a subset of all the points in the original grid, and is assigned to a processor of the parallel machine. Each processor performs the calculations for the points in the subdomain(s) assigned to it. For the computations for the points on the boundaries between two subdomains, information is needed concerning the flow-field in some points in the neighbouring subdomains. Therefore, the processors have to communicate at regular intervals. E g in the solution of a time-dependent flow-problem, communication will typically take place (at least) every timestep. The parallel computer is used optimally if none of the processors have to wait for information they need from other processors. Therefore it is important to assign subdomains representing appropriate amounts of work to each processor.


Grid Point Computational Fluid Dynamic Load Balance Parallel Machine Bisection Method 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    B. Baldwin and H. Lomax. Thin layer approximation and algebraic model for separated turbulent flows, AIAA-78-257, 1978.Google Scholar
  2. 2.
    S.T. Barnard and H.D. Simon. Fast multilevel implementation of of recursive spectral bisection for partitioning unstructured problems. Concurrency: practice and experience, 6(2) 101–117, 1994.CrossRefGoogle Scholar
  3. 3.
    B.E. Bauer. Practical parallel programming. Academic press, San Diego, 1991.Google Scholar
  4. 4.
    J.E. Boillat. Load-balancing and poisson equation in a graph. Concurrency: practice and experience, 2(4)289–313, 1990.CrossRefGoogle Scholar
  5. 5.
    J.E. Boillat, F. Brugè, and P.G. Kropf. A dynamic load-balancing algorithm for molecular dynamics simulation on multi-processor systems. Journal of computational physics, 96:1–14, 1991.CrossRefGoogle Scholar
  6. 6.
    T. Bui, C. Heigham, C. Jones, and T. Leighton. Improving the performance of the Kernighan-Lin and simulated annealing graph bisection algorithm. In 26th ACM/IEEE design automation conference, page 775. IEEE, 1989.Google Scholar
  7. 7.
    C.H. Cap and V. Strumpen. Efficient parallel computing in distributed workstation environments. Parallel computing, 19:1221–1234, 1993.CrossRefGoogle Scholar
  8. 8.
    G. Cybenko. Dynamic load-balancing for distributed memory multiprocessors. Journal of parallel and distributed computing, 7:279–301, 1989.CrossRefGoogle Scholar
  9. 9.
    H.L. deCougny et al. Load balancing for the parallel adaptive solution of partial differential equations. Applied numerical mathematics, 16:157–182, 1994.MathSciNetzbMATHCrossRefGoogle Scholar
  10. 10.
    R. Van Driessche and D. Roose. Load balancing computational fluid dynamics calculations on unstructured grids. In Special course on parallel computing in CFD, number R-807 in AGARD report, pages 2-1 - 2-26, 1995.Google Scholar
  11. 11.
    Y.P. Chien et al. Dynamic load balancing on a network of workstations for solving computational fluid dynamics problems. Computer methods in applied mechanics and engineering, 119:17–33, 1994.zbMATHCrossRefGoogle Scholar
  12. 12.
    C. Farhata. A simple and efficient automatic FEM domain decomposer. Computers and structures, 28(5)579–602, 1988.CrossRefGoogle Scholar
  13. 13.
    C. Farhat and M. Lesoinne. Automatic partitioning of unstructured meshes for the parallel solution of problems in computational mechanics. International Journal for numerical methods in engineering, 36:745–764, 1993.zbMATHCrossRefGoogle Scholar
  14. 14.
    C. Farhat and F.X. Roux. Implicit parallel processing in structural mechanics. Computational mechanics advances, 2:1–124, 1993.MathSciNetGoogle Scholar
  15. 15.
    R.D. Ferraro, P.C. Liewer, and V.K. Decyk. Dynamic load balancing for a 2d concurrent plasma PIC code. Journal of computational physics, 109:329–241, 1993.zbMATHCrossRefGoogle Scholar
  16. 16.
    M. Fiedler. Algebraic connectivity of graphs. Czechoslovak mathematical journal, 23(98) :298–305, 1973.MathSciNetGoogle Scholar
  17. 17.
    M. Fiedler. A property of eigenvectors of nonnegative symmetric matrices and its application to graph theory. Czechoslovak mathematical journal, 25(100)619–633, 1975.MathSciNetGoogle Scholar
  18. 18.
    G.H. Golub and C.F.Van Loan. Matrix computations. Johns Hopkins University Press, Baltimore, MD, 1989.zbMATHGoogle Scholar
  19. 19.
    G. Horton. A multi-level diffusion method for dynamic load-balancing. Parallel computing, 19(2)209–218, 1993.zbMATHCrossRefGoogle Scholar
  20. 20.
    B. Kernighan and S. Lin. An effective heuristic procedure for partitioning graphs. Bell systems technical journal, 49:291–308, 1970.zbMATHGoogle Scholar
  21. 21.
    J. De Keyser, K. Lust, and D. Roose. Runtime load-balancing support for a parallel multiblock Euler/Navier-Stokes code with adaptive refinement on distributed memory computers. Parallel computing, 20:1069–1088, 1994.zbMATHCrossRefGoogle Scholar
  22. 22.
    J. De Keyser and D. Roose. Run-time load balancing techniques for a parallel unstructured multi-grid euler solver with adaptive grid refinement. Parallel computing, 21:179–198, 1995.MathSciNetzbMATHCrossRefGoogle Scholar
  23. 23.
    R. Leland and B. Hendrickson. An empirical study of static load balancing algorithms. In Proceedings of the scalable high-performance computing conference, pages 682-685, 1994.Google Scholar
  24. 24.
    O.C. Martin and S.W. Otto. Partitioning of unstructured meshes for load balancing. Concurrency: practice and experience, 7(4)303–314, 1995.CrossRefGoogle Scholar
  25. 25.
    A. Pothen, H.D. Simon, and K.-P Liou. Partitioning sparse matrices with eigenvectors of graphs. SI AM Journal of Matrix Analysis and Applications, ll(3):430–452, 1990.MathSciNetCrossRefGoogle Scholar
  26. 26.
    J. Schabernack. Load balancing algorithms in distributed systems survey and taxonomy. Informationstechnik (IT), 34(5)280–295, 1992.Google Scholar
  27. 27.
    H.D. Simon. Partitioning of unstructured problems for parallel processing. Computing systems in engineering, 2(2/3):135–148, 1991.CrossRefGoogle Scholar
  28. 28.
    J. Song. A partially asynchronous and iterative algorithm for distributed loadbalancing. Parallel computing, 20:853–868, 1994.MathSciNetCrossRefGoogle Scholar
  29. 29.
    M. Streng, H.H. ten Cate, B.J. Geurts, and J.G.M. Kuerten. Simulation of compressible viscous flow on workstation clusters. Memorandum no. 1265, University of Twente, Enschede, 1995.Google Scholar
  30. 30.
    R. v. Hanxleden and L.R. Scott. Load balancing on message passing architectures. Journal of parallel and distributed computing, 13:312–324, 1991.CrossRefGoogle Scholar
  31. 31.
    A.J. van der Steen, editor. Aspects of computational science. National Computing Facilities Foundation, The Hague, The Netherlands, 1995.Google Scholar
  32. 32.
    R. van Driessche and D. Roose. An efficient spectral bisection algorithm for dynamicLeuven, Belgium, 1994.Google Scholar
  33. 33.
    R. van Driessche and D. Roose. A graph contraction algorithm for the fast calculation of the Fiedler vector of a graph. In D.H. Bailey etal. , editor, Proceedings of the seventh SI AM Conference on parallel processing for scientific computing, pages 621-626. SIAM, 1995.Google Scholar
  34. 34.
    R. van Driessche and D. Roose. An improved spectral bisection algorithm and its application to dynamic load balancing. Parallel computing, 21:29–48, 1995.MathSciNetzbMATHCrossRefGoogle Scholar
  35. 35.
    P.J.M. van Laarhoven and E.H.L. Aarts. Simulated annealing: theory and applications. D. Reidel publishing company, Dordrecht, The Netherlands, 1987.zbMATHGoogle Scholar
  36. 36.
    A. Vidwans, Y. Kallinderis, and V. Venkatakrishnan. Parallel dynamic loadbalancing algorithm for three-dimensional adaptive unstructured grids. AIAA Journal, 32(3)497–505, 1994.zbMATHCrossRefGoogle Scholar
  37. 37.
    C. Walshaw and M. Berzins. Dynamic load-balancing for PDE solvers on adaptive unstructured meshes. Concurrency: practice and experience, 7(l)17–28, 1995.CrossRefGoogle Scholar
  38. 38.
    R.D. Williams. Performance of dynamic load balancing algorithms for unstructured mesh calculations. Concurrency: practice and experience, 3(5)457—481, 1991.CrossRefGoogle Scholar
  39. 39.
    C.Z. Xu and F.C.M.Lau. Analysis of the generalized dimension exchange method for dynamic load-balancing. Journal of parallel and distributed computing, 16(4)385–393, 1992.MathSciNetzbMATHCrossRefGoogle Scholar
  40. 40.
    C.Z. Xu and F.C.M.Lau. Iterative load-balancing on multicomputers. Journal of the operational research society, 45(7)786–796, 1994.zbMATHGoogle Scholar
  41. 41.
    C.Z. Xu, F.C.M. Lau, B. Monien, and R. Lüling. Nearest-neighbor algorithms for load-balancing in parallel computers. Concurrency: practice and experience, 7(7)707–736, 1995.CrossRefGoogle Scholar
  42. 42.
    S. Zhou. LSF: load sharing and batch queueing software. Platform Computing Corporation, http://www. plat form. com.Google Scholar

Copyright information

© Kluwer Academic Publishers 1996

Authors and Affiliations

  • M. Streng
    • 1
  1. 1.Department of Applied MathematicsUniversity of TwenteEnschedeThe Netherlands

Personalised recommendations