This PR contains the support of UMPIRE pooling allocators for host and GPU memory. Configure hypre with --with-umpire, device and uvm allocations and deallocations are done with umpire, whereas host pool is not enabled by default. This PR also includes some other minor changes: Adding .gitignore to the repo Removing all malloc/calloc/realloc/free and regression testing on finding them No longer compile ij.c with C++ compiler. It goes back to a C code now. Introducing HYPRE_USING_GPU, which is equivalent to HYPRE_USING_CUDA || HYPRE_USING_DEVICE_OPENMP Adding a few user-level interfaces: HYPRE_SetMemoryLocation, HYPRE_SetExecutionPolicy, HYPRE_SetGPUMemoryPoolSize and HYPRE_CSRMatrixSetSpGemmUseCusparse Co-authored-by: li50@llnl.gov <liruipengblue@gmail.com> Co-authored-by: Rob Falgout <rfalgout@llnl.gov> Co-authored-by: Ruipeng Li <li50@llnl.gov> |
||
|---|---|---|
| AUTOTEST | ||
| src | ||
| .gitignore | ||
| .readthedocs.yml | ||
| CHANGELOG | ||
| COPYRIGHT | ||
| INSTALL.md | ||
| LICENSE-APACHE | ||
| LICENSE-MIT | ||
| NOTICE | ||
| README.md | ||
| SUPPORT.md | ||
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
