Skip to main content

Hybrid Solver for Quasi Block Diagonal Linear Systems

  • Conference paper
  • First Online:
Book cover Parallel Processing and Applied Mathematics (PPAM 2019)

Abstract

We present a solver for a class of sparse linear systems that we call quasi block diagonal. The solver combines multi-processors and multi-threaded parallelisms using MPI and OpenMP to implement preconditioned Jacobi. Specific formats for sparse matrices are exploited in order to reduce memory storage requirements. Our experiments show that communication costs are negligible, so as that speed-up and efficiency with respect to the sequential implementation are very high. Our hybrid implementation is tested on a cluster and compared to Intel MKL PARDISO linear solver.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 69.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 89.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    More details on Intel MKL cluster_sparse_solver available options can be found on page: https://software.intel.com/en-us/mkl-developer-reference-c-cluster-sparse-solver-iparm-parameter.

References

  1. Amodio, P., et al.: Almost block diagonal linear systems: sequential and parallel solution techniques, and applications. Numerical Linear Algebra Appl. 7(5), 275–317 (2000). https://doi.org/10.1002/1099-1506(200007/08)7:5<275::AID-NLA198>3.0.CO;2-G

    Article  MathSciNet  MATH  Google Scholar 

  2. Bertsekas, D., Tsitsiklis, J.: Some aspects of parallel and distributed iterative algorithms - a survey. Automatica 27(1), 3–21 (1991). https://doi.org/10.1016/0005-1098(91)90003-K

    Article  MathSciNet  MATH  Google Scholar 

  3. Bolukbasi, E.S., Manguoglu, M.: A multithreaded recursive and nonrecursive parallel sparse direct solver. In: Bazilevs, Y., Takizawa, K. (eds.) Advances in Computational Fluid-Structure Interaction and Flow Simulation. MSSET, pp. 283–292. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-40827-9_22

    Chapter  MATH  Google Scholar 

  4. D’Alessandro, N.: Comparison of direct and iterative methods applied to almost block diagonal matrices. Master thesis, Sapienza University of Rome, Italy, Computer Science Department (2019)

    Google Scholar 

  5. Developer Reference for Intel® Math Kernel Library 2019 - C (2019). https://software.intel.com/en-us/download/developer-reference-for-intel-math-kernel-library-c. Accessed 30 Oct 2019

  6. Eijkhout, V., van de Geijn, R.: The spike factorization as domain decomposition method; equivalent and variant approaches. In: Berry, M., et al. (eds.) High-Performance Scientific Computing, pp. 157–169. Springer, London (2012). https://doi.org/10.1007/978-1-4471-2437-5_7

    Chapter  Google Scholar 

  7. Elman, H., Silvester, D., Wathen, A.: Finite Elements and Fast Iterative Solvers: With Applications in Incompressible Fluid Dynamics. Oxford University Press, Oxford (2014). https://doi.org/10.1093/acprof:oso/9780199678792.001.0001

    Book  MATH  Google Scholar 

  8. Ferronato, M., Janna, C., Pini, G.: A generalized block FSAI preconditioner for nonsymmetric linear systems. J. Comput. Appl. Math. 256, 230–241 (2014). https://doi.org/10.1016/j.cam.2013.07.049

    Article  MathSciNet  MATH  Google Scholar 

  9. Kalinkin, A., Arturov, K.: Asynchronous approach to memory management in sparse multifrontal methods on multiprocessors. Appl. Math. 4(12), 33 (2013). https://doi.org/10.4236/am.2013.412A004

    Article  Google Scholar 

  10. Larson, M., Bengzon, F.: The Finite Element Method: Theory, Implementation, and Applications, vol. 10. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-33287-6

    Book  MATH  Google Scholar 

  11. Manguoglu, M.: A domain-decomposing parallel sparse linear system solver. J. Comput. Appl. Math. 236(3), 319–325 (2011). https://doi.org/10.1016/j.cam.2011.07.017

    Article  MathSciNet  MATH  Google Scholar 

  12. Manguoglu, M., Sameh, A.H., Schenk, O.: PSPIKE: a parallel hybrid sparse linear system solver. In: Sips, H., Epema, D., Lin, H.-X. (eds.) Euro-Par 2009. LNCS, vol. 5704, pp. 797–808. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-03869-3_74

    Chapter  Google Scholar 

  13. Mendiratta, K., Polizzi, E.: A threaded SPIKE algorithm for solving general banded systems. Parallel Comput. 37(12), 733–741 (2011). https://doi.org/10.1016/j.parco.2011.09.003

    Article  Google Scholar 

  14. Polizzi, E., Sameh, A.: A parallel hybrid banded system solver: the SPIKE algorithm. Parallel Comput. 32(2), 177–194 (2006). https://doi.org/10.1016/j.parco.2005.07.005

    Article  MathSciNet  Google Scholar 

  15. Polizzi, E., Sameh, A.: SPIKE: a parallel environment for solving banded linear systems. Comput. Fluids 36(1), 113–120 (2007). https://doi.org/10.1016/j.compfluid.2005.07.005

    Article  MathSciNet  MATH  Google Scholar 

  16. Saad, Y.: Iterative Methods for Sparse Linear Systems, 2nd edn. Society for Industrial and Applied Mathematics, Philadelphia (2003). https://doi.org/10.1137/1.9780898718003

    Book  MATH  Google Scholar 

  17. Saad, Y., Van Der Vorst, H.: Iterative solution of linear systems in the 20th century. J. Comput. Appl. Math. 123(1–2), 1–33 (2000). https://doi.org/10.1016/S0377-0427(00)00412-X

    Article  MathSciNet  MATH  Google Scholar 

  18. Shi, A., Shen, W., Li, Y., He, L., Zhao, D.: Implementation and analysis of Jacobi iteration based on hybrid programming. In: International Conference on Computer Design and Applications (2010). https://doi.org/10.1109/ICCDA.2010.5541479

  19. Simoncini, V., Szyld, D.: Recent computational developments in Krylov subspace methods for linear systems. Numerical Linear Algebra Appl. 14(1), 1–59 (2007). https://doi.org/10.1002/nla.499

    Article  MathSciNet  MATH  Google Scholar 

  20. UG3.3: GALILEO UserGuide (2018). https://wiki.u-gov.it/confluence/display/SCAIUS/UG3.3%3A+GALILEO+UserGuide. Accessed 30 Oct 2019

  21. Yang, W., Li, K., Li, K.: A parallel solving method for block-tridiagonal equations on CPU-GPU heterogeneous computing systems. J. Supercomput. 73(5), 1760–1781 (2017). https://doi.org/10.1007/s11227-016-1881-x

    Article  Google Scholar 

Download references

Acknowledgements

This work has been partially supported by MIUR grant Excellence Departments 2018–2022, assigned to the Computer Science Department of Sapienza University of Rome. The experimental part has been run on the Galileo cluster, located at Cineca, Bologna, Italy, thanks to Class C ISCRA Project n. HP10CCM8RG.

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to Viviana Arrigoni or Annalisa Massini .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Arrigoni, V., Massini, A. (2020). Hybrid Solver for Quasi Block Diagonal Linear Systems. In: Wyrzykowski, R., Deelman, E., Dongarra, J., Karczewski, K. (eds) Parallel Processing and Applied Mathematics. PPAM 2019. Lecture Notes in Computer Science(), vol 12043. Springer, Cham. https://doi.org/10.1007/978-3-030-43229-4_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-43229-4_12

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-43228-7

  • Online ISBN: 978-3-030-43229-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics