Commit Graph

11615 Commits

Author SHA1 Message Date
Wayne Mitchell
63d4e08e96
Air fixes (#449)
* Fix type error causing valgrind to complain
* Fix bigint errors in ExtractSubmatrixFC
2021-08-10 15:11:51 -07:00
Wayne Bradford Mitchell
7fa3ded6ed Additional bigint fixes 2021-08-10 14:43:00 -07:00
Ruipeng Li
a639e82f8a one more 2021-08-10 13:19:46 -07:00
Ruipeng Li
e262a9dde1 bigint fix 2021-08-10 13:12:40 -07:00
Ruipeng Li
efec0bec11
minor fix (#443)
Minor fix of `gDim, bDim`.

Co-authored-by: Ruipeng Li <li50@euler.llnl.gov>
2021-08-09 08:49:53 -07:00
Wayne Mitchell
2e5b573b2b
Fix compile warnings (#444)
This fixes a couple of compiler warnings introduced in the last merge into master.
2021-08-09 08:04:09 -07:00
Wayne Mitchell
59fcd47e6d
Air gpu (#425)
This PR ports the Neumann version of AIR to the GPU. New features include:
   1. Construction of Neumann AIR restriction operator R on the GPU
   2. Construction of one-point interpolation on the GPU
   3. Construction of an absolute value version of the strength of connection matrix on the GPU
   4. CF relaxation for Jacobi (relax7) and L1 Jacobi (relax18) on the GPU - note that this does redundant computation since a full matvec is called when only relaxing either C- or F-points
   5. Regression tests for AIR
   6. Filtering for ParCSR matrices based on tol*row_norm for 1-, 2-, and infinity-norm on the GPU
2021-08-06 16:39:42 -07:00
Ruipeng Li
92ec19a399
runtest.sh fix (#442)
This PR fixes `./runtest.sh -mpi`
2021-08-06 11:51:38 -07:00
Luke
4346579e03
Fix some typos in .jobs and memory issues (#406)
This PR addresses #404. Includes the typo fixes, and changes to .saved due to inclusion of -ns 2. Also, fixed the memory issues after fixing the .jobs

Co-authored-by: Ruipeng Li <li50@llnl.gov>
Co-authored-by: li50@llnl.gov <liruipengblue@gmail.com>
2021-08-05 16:56:23 -07:00
Luke
cb0c70b163
Fix potentially inconsistent eig estimates (#390) (#410)
This PR reimplements hypre_ParCSRMaxEigEstimate using Gershgorin discs, which ensures that max_eig and min_eig are both allreduced across all ranks so that the return value of the function is the same for all ranks.

Co-authored-by: Ruipeng Li <li50@llnl.gov>
Co-authored-by: li50@llnl.gov <liruipengblue@gmail.com>
2021-08-05 14:03:04 -07:00
Ruipeng Li
b61461c909
Fix mingw (#441)
This PR (#440) fixes portability issue of ffs on MinGW.
Co-authored-by: Pierre Jolivet <pierre@joliv.et>
Co-authored-by: Ruipeng Li <li50@euler.llnl.gov>
2021-08-05 09:58:26 -07:00
Ruipeng Li
9117fc20f2
fixed nan (#436)
This PR fixes nan issues in corner cases in hypre_BoomerAMGInterpTruncationDevice.
2021-08-03 09:27:54 -07:00
Victor A. Paludetto Magri
ffe4f7384b
Update IJ interface with changes in recmat-merge (#392)
This PR improves the IJ interface with new functions, performs code reorganization, and simplifies coding by removing ownership info related to the partitioning data members from ParCSRMatrix and ParVector objects. A more comprehensive list of changes is given below:

* Add HYPRE_IJMatrixAdd, HYPRE_IJMatrixNorm and HYPRE_IJMatrixTranspose functions
* Add ParCSRMatrixInfNorm and ParCSRMatrixReorder functions
* Add transpose, add and norm functions to IJMatrix
* Add more caliper annotation to BoomerAMG and ParCSR functions
* Fix typo in assumed partition function and add caliper annotation
* The output matrix from ParTMatmul owns row/col starts.
* Build communication package for A at ParTMatmul if it does not exist.
* Move hypre_Log2 to utilities
* Add HYPRE_ANNOTATE_REGION_[BEGIN,END] to caliper annotation
* Phase out [row,col]_starts ownership info in ParCSR matrices
* Remove partitioning ownership info from vector
* Move partitioning variables to stack memory
2021-07-28 15:42:23 -07:00
Ruipeng Li
a522bfdb91
Rocrand (#429)
This PR (by @pbauman #428) adds support for PRNG on AMD GPUs via rocRAND. 

Co-authored-by: Paul T. Bauman <ptbauman@gmail.com>
2021-07-23 09:22:00 -07:00
Luke
5cf30f95b9
GPU Support for Chebyshev Relaxation (#388)
This pull requests adds explicit GPU support for Chebyshev polynomial preconditioning for smoothers.
2021-07-23 09:21:15 -07:00
Christoph Junghans
ec6670a886
cmake: fix config for CXX-only consumers (#423)
Some consumers only have CXX enabled hence find_dependency(MPI) won't define a MPI::MPI_C target.
Explicitly enabling the C language will fix that.
2021-07-12 15:23:21 -05:00
Dan Ibanez
89521dcbf8
Check MSVC version before adding flags (#419)
This was originally started as an effort to
fix the Windows+CUDA build, in which case
these special flags need to be added differently
when CUDA is used.
However, they were there to workaround issues in
earlier MSVC versions that today's version doesn't
have, so the changes here actually just check
whether the MSVC being used is old enough to need
these workarounds.
Since using CUDA and MSVC through CMake is relatively
new, there shouldn't be a need to support these
workarounds with CUDA
2021-06-29 13:41:47 -05:00
Ruipeng Li
e7e2ab36a6
fixed ads (#418)
This PR fixes an issue with ADS on GPUs
2021-06-25 13:47:47 -07:00
Ruipeng Li
b7d4ce9d53
fixed a function prototype (#416)
This PR fixed a function prototype compiled with HIP.
Co-authored-by: Ruipeng Li <coe0141@redwood.cm.cluster>
2021-06-24 10:07:58 -07:00
Rob Falgout
09b6b53ca5 Update CHANGELOG and version number for new release 2.22.0 2021-06-21 15:14:46 -07:00
Ruipeng Li
8c9f41a4d0
GPU ams ame ads (#398)
This PR adds GPU support for ams, ame and ads, and the following parcsr operations on GPUs, ParCSRAdd, ParCSRTranspose, l1 hybrid G-S/SSOR.

Co-authored-by: Rob Falgout <rfalgout@llnl.gov>
2021-06-21 14:36:46 -07:00
Ruipeng Li
3c4272700c
move AIR to UVM (#411)
This PR is a temporary fix for N(eumann)-AIR on GPUs。
2021-06-21 14:26:26 -07:00
Ruipeng Li
27d6b2bd72
One based index (#408)
This PR fixes #396, indexing problem in HYPRE_IJVectorGetValues
2021-06-18 15:56:22 -07:00
Mark L. Stowell
970f75821f
Adding AMS support for 1D domains (#269) 2021-06-18 11:00:03 -07:00
Wayne Mitchell
5f8472b05c
Amgdd fixes (#386)
This removes the masked matvec routine previously used for CF L1 Jacobi relaxation in the AMG-DD solver. There was a bug present in the GPU code and the bsrxmv cusparse routine no longer supports our use-case as of cuda 11. In addition, appropriate regression test results were saved for the GPU implementation of AMG-DD.
2021-06-15 10:44:46 -07:00
Ruipeng Li
ad5d7e009f
Gpu mixedInt (#380)
This PR adds GPU support for mixedInt. 

Co-authored-by: Rob Falgout <rfalgout@llnl.gov>
2021-06-10 11:10:13 -07:00
Rob Falgout
1d9411c7ab
Fix make clean (#387)
Fixed Makefile clean targets to explicitly remove '*.obj' files.  The previous approach had the potential to delete developer files that were not intended to be removed.
2021-05-27 17:33:19 -07:00
Ruipeng Li
b88d965c16
renamed utilities/hypre_*.[c,h] to *.[c,h] (#385)
Renamed 'hypre_*' filenames in 'src/sstruct_ls' and 'utilities/' directories
Fixed AUTOTEST tests that filter on the renamed 'hypre_' files

Co-authored-by: Rob Falgout <rfalgout@llnl.gov>
2021-05-27 16:39:42 -07:00
Matthias Diener
8966648c59
fix shared library install for cmake (#376)
* fix shared library install

* add comment
2021-05-27 18:06:24 -05:00
Rob Falgout
b9b15018cf Fixed license comment format in HYPRE_error_f.h 2021-05-26 07:09:39 -07:00
Rob Falgout
977e71b9de CHANGELOG adjustments 2021-05-25 21:35:30 -07:00
Ruipeng Li
0ca69b7ede
Update CHANGELOG 2021-05-25 21:12:31 -07:00
Rob Falgout
1b1ca7bafa Fixed typo in ref manual 2021-05-25 19:09:41 -07:00
Rob Falgout
540a72b9f5 Sorted user manual references 2021-05-25 16:52:16 -07:00
Rob Falgout
0a82c6d412 One more update to CHANGELOG 2021-05-25 16:42:52 -07:00
Ruipeng Li
d380ba1247 amg parameter numbers 2021-05-25 16:40:00 -07:00
Ruipeng Li
c05d97a62d more on GPU AMG 2021-05-25 16:31:47 -07:00
Ruipeng Li
9d1a9d4107 boomerAMG on GPUs 2021-05-25 16:12:29 -07:00
Ruipeng Li
57d1288bda bug fix 2021-05-25 15:47:05 -07:00
Ruipeng Li
dfceea17d6 Merge branch 'master' of github.com:hypre-space/hypre 2021-05-25 15:11:52 -07:00
Ruipeng Li
0bb67902bb GPU build 2021-05-25 15:11:29 -07:00
Rob Falgout
3b65190b24 A few updates to the CHANGELOG 2021-05-25 14:26:24 -07:00
Rob Falgout
0fb7956eac Update version number for new release 2021-05-25 06:15:55 -07:00
Rob Falgout
426b83b647 Updated CHANGELOG for 2.21.0 release 2021-05-25 05:41:42 -07:00
Ruipeng Li
3bc7d267ef
Gpu default (#336)
This PR changes AMG defaults regarding GPUs at various places, adds regression tests on GPUs, simplifies CUDA boxloop implementations. 

Co-authored-by: Sarah Virginia Osborn <osborn9@llnl.gov>
Co-authored-by: PaulMullowney <pmullown@nrel.gov>
Co-authored-by: Daniel Osei-Kuffuor <oseikuffuor1@llnl.gov>
Co-authored-by: Ruipeng Li <li50@euler.llnl.gov>
Co-authored-by: Ruipeng Li <coe0141@redwood.cm.cluster>
2021-05-24 17:16:35 -07:00
Sarah Osborn
8a41a42c8d
Cmake cuda updates (#349)
Add CUDA options to CMake. 
* Add CUDA options to CMake, including adding CUDA_SRCS to each sub-directory's CMake list
* Changes so that HYPRE_config.h from CMake is consistent with configure
* Fix to license commenting style
* Add CUDA + CMake tests for building on lassen
2021-05-19 15:39:57 -05:00
Daniel Osei-Kuffuor
995969c9af
fix reordering option for diagonal of square matrix transpose (#370)
* Remove hard option to reorder transpose operation to place diagonal in first entry for square matrices. Implement this locally as needed.

*Add runtime option to switch to GPU support

Co-authored-by: Ruipeng Li <li50@llnl.gov>
2021-05-19 12:35:27 -07:00
Sarah Osborn
ae362727b9
Change HYPRE_RELEASE_NUMBER to be int in CMake Config.h file (#372) 2021-05-18 12:19:51 -05:00
Rob Falgout
3894857b16
Adding a new HYPRE_RELEASE_NUMBER macro (#366)
- Added a HYPRE_RELEASE_NUMBER macro, which is an integer representation of the release that can be compared numerically against other releases in user build systems
- Added a 'config/version.sh' that should be modified to create new releases
- Changed the 'config/bootstrap' script to 'config/update.sh' and added a version number check
2021-05-17 08:22:20 -07:00
Ruipeng Li
391f4fd6ec
Fix hypre_CSRMatrixAddHost (#369)
Fix problems in #341

Co-authored-by: victorapm <paludettomag1@llnl.gov>
2021-05-15 00:18:01 -07:00