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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 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
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
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
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
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)
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
UG3.3: GALILEO UserGuide (2018). https://wiki.u-gov.it/confluence/display/SCAIUS/UG3.3%3A+GALILEO+UserGuide. Accessed 30 Oct 2019
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
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
Corresponding authors
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
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)