Skip to main content

Using LAMA for efficient AMG on hybrid clusters


In this paper, we describe the implementation of an AMG solver for a hybrid cluster that exploits distributed and shared memory parallelization and uses the available GPU accelerators on each node. This solver has been written by using LAMA (Library for Accelerated Math Applications). This library does not only provide an easy-to-use framework for solvers that might run on different devices with different matrix formats, but also comes with features to optimize and hide communication and memory transfers between CPUs and GPUs. These features are explained and their impact on the efficiency of the AMG solver is shown in this paper. The benchmark results show that an efficient use of hybrid clusters is even possible for multi-level methods like AMG where fast solutions are needed on all levels for multiple problem sizes.

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8


  1. Open MPI 1.4.4. Tests with Intel MPI showed a similar behavior.


  1. Hypre homepage (2010), last viewed Jan 2012

  2. Lama software on Sourceforge (2011), last viewed Jan 2012

  3. ML homepage (2011), last viewed Jan 2012

  4. SAMG homepage (2011), last viewed Jan 2012

  5. Lama homepage (2012), last viewed Jan 2012

  6. MTL4 CG (2012), last viewed Jan 2012

  7. Ament M, Knittel G, Weiskopf D, Straßer W (2010) A parallel preconditioned conjugate gradient solver or the poisson problem on a multi-GPU platform. In: Parallel, distributed, and network based processing, pp 583–593

    Google Scholar 

  8. Bell N, Garland M (2009) Efficient sparse matrix-vector multiplication on CUDA. In: Proc ACM/IEEE conf supercomputing (SC), Portland, OR, USA

    Google Scholar 

  9. Brandt A, McCormick S, Ruge J (1984) Algebraic Multigrid (AMG) for sparse matrix equations. In: Evans DJ (ed) Sparsity and its Applications. Cambridge University Press, Cambridge

    Google Scholar 

  10. Catalyurek U, Aykanat C (2001) A hypergraph-partitioning approach for coarse-grain decomposition. In: SC2001, Denver, CO. ACM/IEEE, New York

    Google Scholar 

  11. Cevahir A, Nukada A, Matsuoka S (2009) Fast conjugate gradients with multiple GPUs. In: ICCS 2009, vol 5544, pp 893–903

    Chapter  Google Scholar 

  12. Cevahir A, Nukada A, Matsuoka S (2010) High performance conjugate gradient solver on multi-GPU clusters using hypergraph partitioning. Comput Sci Res Dev 25:83–91

    Article  Google Scholar 

  13. Förster M, Kraus J (2011) Scalable parallel AMG on CCNUMA machines with OpenMP. Springer, Berlin, pp 1–8

    Google Scholar 

  14. Haase G, Liebmann M, Douglas C, Plank G (2010) A parallel algebraic multigrid solver on graphics processing units. In: High performance computing and applications, pp 38–47

    Chapter  Google Scholar 

  15. Heuveline V, Lukarski D, Weiss JP (2012) Using multicore CPUs and GPUs. Springer, Berlin

    Google Scholar 

  16. Kraus J, Förster M (2012) Efficient AMG on heterogeneous systems Springer, Berlin, pp 133–146

    Google Scholar 

  17. Ruge J, Stüben K (1987) Algebraic Multigrid (AMG). In: McCormick SF (ed) Multigrid methods. Frontiers in applied mathematics, vol 3. SIAM, Philadelphia, pp 73–130

    Chapter  Google Scholar 

  18. Schubert G, Fehske H, Hager G, Wellein G (2011) Hybrid-parallel sparse matrix-vector multiplication with explicit communication overlap on current multicore-based systems. Parallel Process Lett 21(3):339–358

    Article  MathSciNet  Google Scholar 

  19. Strustrup B (2000) The C++ programming language. Special edition

    Google Scholar 

  20. Van Dyk D, Geveler M, Mallach S, Ribbrock D, Göddeke D, Gutwenger C (2009) Honei: a collection of libraries for numerical computations targeting multiple processor architectures. Comput Phys Commun 180(12):2534–2543

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations


Corresponding author

Correspondence to Jiri Kraus.

Additional information

Granted by Fraunhofer, ITEA2 project H4H—BMBF 01|S10036H, BMBF project GASPI 01|H11007F.

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Kraus, J., Förster, M., Brandes, T. et al. Using LAMA for efficient AMG on hybrid clusters. Comput Sci Res Dev 28, 211–220 (2013).

Download citation

  • Published:

  • Issue Date:

  • DOI:


  • LAMA
  • AMG
  • Hybrid
  • MPI
  • Multithreading
  • CUDA
  • OpenMP
  • Heterogeneous