Parallel Smoothers for Matrix-Based Geometric Multigrid Methods on Locally Refined Meshes Using Multicore CPUs and GPUs

  • Vincent Heuveline
  • Dimitar Lukarski
  • Nico Trost
  • Jan-Philipp Weiss
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7174)


Multigrid methods are efficient and fast solvers for problems typically modeled by partial differential equations of elliptic type. We use the approach of matrix-based geometric multigrid that has high flexibility with respect to complex geometries and local singularities. Furthermore, it adapts well to the exigences of modern computing platforms. In this work we investigate multi-colored Gauß-Seidel type smoothers, the power(q)-pattern enhanced multi-colored ILU(p,q) smoothers with fill-ins, and factorized sparse approximate inverse (FSAI) smoothers. These approaches provide efficient smoothers with a high degree of parallelism. We describe the configuration of our smoothers in the context of the portable lmpLAtoolbox and the HiFlow3 parallel finite element package. In our approach, a single source code can be used across diverse platforms including multicore CPUs and GPUs. Highly optimized implementations are hidden behind a unified user interface. Efficiency and scalability of our multigrid solvers are demonstrated by means of a comprehensive performance analysis on multicore CPUs and GPUs.


Parallel smoothers matrix-based geometric multigrid multi-coloring power(q)-pattern method FSAI multi-core GPUs 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Anzt, H., et al.: HiFlow3 – a flexible and hardware-aware parallel finite element package. Tech. Rep. 2010-06, EMCL, KIT (2010),
  2. 2.
    Bell, N., Garland, M.: Implementing sparse matrix-vector multiplication on throughput-oriented processors. In: SC 2009: Proc. of the Conf. on High Perf. Computing Networking, Storage and Analysis, pp. 1–11. ACM, New York (2009)Google Scholar
  3. 3.
    Bröker, O.: Parallel multigrid methods using sparse approximate inverses. Ph.D. thesis, Dept. of Computer Science, ETH Zürich (2003)Google Scholar
  4. 4.
    Bröker, O., Grote, M.: Sparse approximate inverse smoothers for geometric and algebraic multigrid. Applied Numerical Mathematics 41 (2002)Google Scholar
  5. 5.
    Bröker, O., Grote, M., Mayer, C., Reusken, A.: Robust parallel smoothing for multigrid via sparse approximate inverses. SIAM J. of Scient. Comput. 23 (2001)Google Scholar
  6. 6.
    Geveler, M., Ribbrock, D., Göddeke, D., Zajac, P., Turek, S.: Efficient finite element geometric multigrid solvers for unstructured grids on GPUs. In: Iványi, P., Topping, B.H. (eds.) Second Int. Conf. on Parallel, Distributed, Grid and Cloud Computing for Engineering (2011), doi:10.4203/ccp.95.22Google Scholar
  7. 7.
    Geveler, M., Ribbrock, D., Göddeke, D., Zajac, P., Turek, S.: Towards a complete FEM-based simulation toolkit on GPUs: Geometric multigrid solvers. In: 23rd Int. Conf. on Parallel Computational Fluid Dynamics, ParCFD 2011 (2011)Google Scholar
  8. 8.
    Göddeke, D.: Fast and accurate finite-element multigrid solvers for PDE simulations on GPU clusters. Ph.D. thesis, Technische Universität Dortmund (2010)Google Scholar
  9. 9.
    Grote, M., Huckle, T.: Parallel preconditioning with sparse approximate inverses. SIAM J. of Scient. Comput. 18 (1997)Google Scholar
  10. 10.
    Haase, G., Liebmann, M., Douglas, C.C., Plank, G.: A Parallel Algebraic Multigrid Solver on Graphics Processing Units. In: Zhang, W., Chen, Z., Douglas, C.C., Tong, W. (eds.) HPCA 2009. LNCS, vol. 5938, pp. 38–47. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  11. 11.
    Hackbusch, W.: Multi-grid methods and applications. Springer, Berlin (2003)zbMATHGoogle Scholar
  12. 12.
    Heuveline, V., et al.: HiFlow3 - parallel finite element software (2011),
  13. 13.
    Heuveline, V., Lukarski, D., Subramanian, C., Weiss, J.P.: Parallel preconditioning and modular finite element solvers on hybrid CPU-GPU systems. In: Iványi, P., Topping, B.H. (eds.) Proc. of the 2nd Int. Conf. on Parallel, Distr., Grid and Cloud Comp. for Eng., Paper 36, Civil-Comp Press (2011)Google Scholar
  14. 14.
    Heuveline, V., Lukarski, D., Trost, N., Weiss, J.P.: Parallel smoothers for matrix-based multigrid methods on unstructured meshes using multicore CPUs and GPUs. Tech. Rep. 2011-09, EMCL, KIT (2011),
  15. 15.
    Heuveline, V., Lukarski, D., Weiss, J.-P.: Scalable Multi-coloring Preconditioning for Multi-core CPUs and GPUs. In: Guarracino, M.R., Vivien, F., Träff, J.L., Cannatoro, M., Danelutto, M., Hast, A., Perla, F., Knüpfer, A., Di Martino, B., Alexander, M. (eds.) Euro-Par-Workshop 2010. LNCS, vol. 6586, pp. 389–397. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  16. 16.
    Heuveline, V., Lukarski, D., Weiss, J.P.: Enhanced parallel ILU(p)-based preconditioners for multi-core CPUs and GPUs – the power(q)-pattern method. Tech. Rep. 2011-08, EMCL, KIT (2011),
  17. 17.
    Heuveline, V., Subramanian, C., Lukarski, D., Weiss, J.P.: A multi-platform linear algebra toolbox for finite element solvers on heterogeneous clusters. In: PPAAC 2010, IEEE Cluster 2010 Workshops (2010)Google Scholar
  18. 18.
    Hülsemann, F., Kowarschik, M., Mohr, M., Rüde, U.: Parallel geometric multigrid. In: Numerical Solution of Partial Differential Equations on Parallel Computers. LNCSE, ch. 5, vol. 51, pp. 165–208 (2005)Google Scholar
  19. 19.
    Kallischko, A.: Modified sparse approximate inverses (MSPAI) for parallel preconditioning. Ph.D. thesis, Fakultät für Mathematik, Technische Universität München (2008)Google Scholar
  20. 20.
    Kolotilina, L., Yeremin, A.: Factorized sparse approximate inverse preconditionings, I: theory. SIAM J. Matrix Anal. Appl. (1993)Google Scholar
  21. 21.
    Trottenberg, U.: Multigrid. Academic Press, Amsterdam (2001)zbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Vincent Heuveline
    • 1
  • Dimitar Lukarski
    • 1
    • 2
  • Nico Trost
    • 1
  • Jan-Philipp Weiss
    • 1
    • 2
  1. 1.Engineering Mathematics and Computing Lab (EMCL)Germany
  2. 2.SRG New Frontiers in High Performance ComputingKarlsruhe Institute of TechnologyGermany

Personalised recommendations