Abstract

This paper describes a method of calculating the Schur complement of a sparse positive definite matrix A. The main idea of this approach is to represent matrix A in the form of an elimination tree using a reordering algorithm like METIS and putting columns/rows for which the Schur complement is needed into the top node of the elimination tree. Any problem with a degenerate part of the initial matrix can be resolved with the help of iterative refinement. The proposed approach is close to the “multifrontal” one which was implemented by Ian Duff and others in 1980s. Schur complement computations described in this paper are available in Intel® Math Kernel Library (Intel® MKL). In this paper we present the algorithm for Schur complement computations, experiments that demonstrate a negligible increase in the number of elements in the factored matrix, and comparison with existing alternatives.

Highlights

  • Partial solutions usually involve sparse matrices. For this reason Schur complement computations and partial solving have been implemented in Intel® Math Kernel Library (Intel® MKL) [4]

  • We propose to move all matrix elements that correlate to Schur complement to the top of the dependency tree in order to improve parallelization of computations

  • Row on average, while the sparsity of Flan_1565 is about 70 nonzero elements per row and the sparsity of Geo_1438 is more than 400 nonzero elements per row. In both cases the time for Schur complement computations is almost the same when the number of threads is small for the Intel MKL and MUMPS, but the time needed for Intel MKL PARDISO solver significantly decreases when the number of threads increases

Read more

Summary

Introduction

For this reason Schur complement computations and partial solving have been implemented in Intel® Math Kernel Library (Intel® MKL) [4]. We propose to move all matrix elements that correlate to Schur complement to the top of the dependency tree in order to improve parallelization of computations. C = BB temp temp as sparse-dense matrix-matrix multiplication; 4) Calculate S= C − Ctemp as a difference This algorithm has several significant disadvantages that can form barriers for its implementation for large sparse systems. We propose the following algorithm based on the multifrontal approach which calculates the Schur complement matrix first, and the factorization of the matrix A without significant memory requirements for the computations to proceed

Schur Complement Computational Algorithm
Experiments
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call