-
Notifications
You must be signed in to change notification settings - Fork 237
HYPRE 3.0 #1316
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…during ghost zone resizing (#1195) This PR does the following: * Allows for different base grids and non-unitary strides in vector routines * Implements logic in the vector class and matvec to help minimize copies during ghost zone resizing * Modifies PFMG to use the new matvec optimization features
Fix caliper usage in recmat
implemented by Ulrike Y, and some minor code cleanup.
* PFMG working with device exec policy and UVM * Fix CMake build * Add missing sync stream calls
* PFMG working with device exec policy and UVM * Remove UVM dependency from PFMG's interpolation code * Update struct's communication package with device support (on-going) * Create dedicate file for PFMG coarsening and remove UVM dependency * Rename hypre_PFMGZeroDiagonal to hypre_StructMatrixZeroDiagonal * Rename hypre_InitializeCommunication to hypre_StructCommunicationInitialize * Rename hypre_FinalizeCommunication to hypre_StructCommunicationFinalize * Add hypre_StructMatrixSetMemoryLocation routine * Fix CMake build * Add missing sync stream calls * Fix tux regressions * WIP: GPU porting for struct for sstruct * Addressing review * Fix maybe-uninitialized warnings * Remove redundant comments
…ros uP is not initialized.
…tine and adds optimizations to PFMG (#1249) * Adjusts communication for symmetric storage * Automatically determines if the product matrix in matmult is symmetric * Computes only the stored symmetric coefficients in matmult (the "lower triangle" so to speak) * Modifies the PFMG setup to reduce memory copies in the matmult calls * Cleans up the kernel optimization code in matmult. Using a mask (not a bit mask) simplifies things. * Makes a better decision about when a mask is needed in matmult. * Computes a better data space for the matrices involved in the matrix product. * Tries to avoid unnecessary matrix resizes in matmult. Now, PFMG often does not require a resize-with-copy. * Adds loop unrolling optimizations to matvec for rectangular matrices (previously only square matrices were unrolled).
…1287) * Fixes the coarsening of part boundary boxes which influences SSAMG convergence * Renamed one CoarsenNeg routine, deleted another, and added some comments
Contributor
|
You can push in your fork and I'll fixup the branch with your commit. |
Contributor
* Added mixed precision conversion routines. --------- Co-authored-by: ulrikeyang <[email protected]>
* Add owns_data to CSRMatrixMigrate * Update hypre_CudaCompileFlagCheck to support multiple GPUs * Add logic for taking ownership of CSRMatrix columns and data during CSRMatrixMigrate call * A couple of fixes for hypre_IJMatrixGetValuesParCSRDevice * Fix SYCL path of IJMatrixGetValues * Update ij_assembly driver with Get test (128)
* Fix host mem leak * Rerun config/update.sh * change a hypre_Free to hypre_TFree * Change ReAlloc to TReAlloc * Comment out mgr tests for lassen regressions for now. Update configure lines for machine-lassen.sh. Some fixes for unstructured interpolation for ssamg on the GPU. * Fix CPU build * Fix memory leak, enable get and zero out for GPU build for sstruct matrix compression. * Ensure col map offd is on device for GetValuesParCSRDevice * Add cxxstandard=11 to machine-lassen.sh configure lines * Add umpire warnings to configure filters for regression testing * Split off mgr tests into a separate set from solvers. Adjust saved files. * Update saved files * Add license * Change permissions for mgr.sh --------- Co-authored-by: mitchell82 <[email protected]> Co-authored-by: Rui Peng Li <[email protected]>
* Remove VLA instances * Track -Werror=vla in strict checking tests * Fix unused variable warning
* Fix fortran headers * Fix lobpcg headers * Replace seq_mv.h with _hypre_seq_mv.h
* Fix issues with struct matrix reading routine
Fix machine-tioga/basic-hip-cpu and machine-lassen/basic-cuda-cpu tests
Fix mixedint build issues
* Fix MGR issues on device runs * Update lassen baselines * Fix compilation warning with gcc 13
* Update baselines in TEST_bench/benchmark_struct.perf.saved.lassen * Update baselines in TEST_sstruct lassen_cpu * Update baselines in TEST_bench perf tioga
* Fix CMake's generated soversion * Update comments about ABI
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This (draft) PR helped us track differences between the hypre-3.0 branch and master, and provided a mechanism for discussion as we continued to develop hypre-3.0. It is now the final PR for the new release.
See issue #1370
Some general guidance since this is such a big update with a target release deadline:
See https://hypre.readthedocs.io/en/hypre-3.0/ for readthedocs user manual
See https://github.com/hypre-space/hypre/blob/hypre-3.0/src/docs/wiki-dev/Mixed-Precision.md for developer wiki