Go to file
Victor A. Paludetto Magri 3f12d47651
Add support for matrices with many zero rows (#300)
The main objective of this PR is to improve the support of matrices with a large number of zero rows in hypre. More specifically:
* Improve IJMatrixAssemble for matrices with a large number of zero rows.
* Add hypre_AuxParCSRMatrixSetRownnz to build array of nonzero rows in the auxiliary matrix. This saves allocation time for building ParCSRMatrices.
* Improve (Par)CSRMatrix transpose, addition and multiplication operations for matrices with a large number of zero rows.

Secondary changes made in this PR are:
* Update SpMV paths in `csr_matvec` in order to make the calculation of A*x more concise.
* Extend OpenMP support to hypre_CSRMatrixSumElts, hypre_CSRMatrixFnorm and hypre_CSRMatrixReorder.
* Clean gcc-9 warnings
* Update saved files and delete unused variable

Co-authored-by: Ruipeng Li <li50@llnl.gov>
2021-04-27 17:14:17 -07:00
AUTOTEST Adding filter to check-license test to ignore runtests-* files 2021-02-18 07:00:23 -08:00
src Add support for matrices with many zero rows (#300) 2021-04-27 17:14:17 -07:00
.gitignore Umpire (#243) 2021-02-03 12:31:25 -08:00
.readthedocs.yml Added copyright header to readthedocs.yml file 2020-02-21 14:04:54 -08:00
CHANGELOG Update CHANGELOG 2020-09-24 10:56:42 -07:00
COPYRIGHT Updating main license information 2019-07-08 08:55:26 -07:00
INSTALL.md Added ABI compabitility comment to INSTALL.md file 2019-10-17 07:22:50 -07:00
LICENSE-APACHE Updating main license information 2019-07-08 08:55:26 -07:00
LICENSE-MIT Updating main license information 2019-07-08 08:55:26 -07:00
NOTICE Updating main license information 2019-07-08 08:55:26 -07:00
README.md Change issue reporting to use github's issue tracker (#189) 2020-09-02 22:35:36 -07:00
SUPPORT.md Change issue reporting to use github's issue tracker (#189) 2020-09-02 22:35:36 -07:00

HYPRE is a library of high performance preconditioners and solvers featuring multigrid methods for the solution of large, sparse linear systems of equations on massively parallel computers.

For documentation, see our readthedocs page.

To install HYPRE, please see either the documentation or the file INSTALL.md.

An overview of the HYPRE release history can be found in the file CHANGELOG.

We appreciate feedback from users. Please submit comments, suggestions, and report issues on our issues page. See also SUPPORT.md.

License

HYPRE is distributed under the terms of both the MIT license and the Apache License (Version 2.0). Users may choose either license, at their option.

All new contributions must be made under both the MIT and Apache-2.0 licenses.

See LICENSE-MIT, LICENSE-APACHE, COPYRIGHT, and NOTICE for details.

SPDX-License-Identifier: (Apache-2.0 OR MIT)

LLNL-CODE-778117