-
Notifications
You must be signed in to change notification settings - Fork 564
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
WIP (Do Not Merge!!): Belos Small Dense Matrix Abstraction #11837
base: develop
Are you sure you want to change the base?
Commits on Oct 1, 2024
-
Configuration menu - View commit details
-
Copy full SHA for f353a3d - Browse repository at this point
Copy the full SHA f353a3dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4558b2c - Browse repository at this point
Copy the full SHA 4558b2cView commit details -
Configuration menu - View commit details
-
Copy full SHA for aa21a51 - Browse repository at this point
Copy the full SHA aa21a51View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4cac21f - Browse repository at this point
Copy the full SHA 4cac21fView commit details -
Configuration menu - View commit details
-
Copy full SHA for ecf4297 - Browse repository at this point
Copy the full SHA ecf4297View commit details -
Configuration menu - View commit details
-
Copy full SHA for fb75baa - Browse repository at this point
Copy the full SHA fb75baaView commit details -
Configuration menu - View commit details
-
Copy full SHA for a2f69ec - Browse repository at this point
Copy the full SHA a2f69ecView commit details -
Configuration menu - View commit details
-
Copy full SHA for 69a98fc - Browse repository at this point
Copy the full SHA 69a98fcView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2ee9622 - Browse repository at this point
Copy the full SHA 2ee9622View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0833975 - Browse repository at this point
Copy the full SHA 0833975View commit details -
Configuration menu - View commit details
-
Copy full SHA for 04f69b7 - Browse repository at this point
Copy the full SHA 04f69b7View commit details -
Updated DenseMatrixAdapter functions. Wrote a partial Teuchos Serial …
…Dense adapter and test. It compiles and runs
Configuration menu - View commit details
-
Copy full SHA for a83a9c1 - Browse repository at this point
Copy the full SHA a83a9c1View commit details -
Expanded MultiVec Traits and corresponding Teuchos adapter, which pas…
…ses basic tests.
Configuration menu - View commit details
-
Copy full SHA for e182901 - Browse repository at this point
Copy the full SHA e182901View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0475c9c - Browse repository at this point
Copy the full SHA 0475c9cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 58f8e97 - Browse repository at this point
Copy the full SHA 58f8e97View commit details -
Configuration menu - View commit details
-
Copy full SHA for 932b663 - Browse repository at this point
Copy the full SHA 932b663View commit details -
Configuration menu - View commit details
-
Copy full SHA for e271c5e - Browse repository at this point
Copy the full SHA e271c5eView commit details -
Configuration menu - View commit details
-
Copy full SHA for aa4fe14 - Browse repository at this point
Copy the full SHA aa4fe14View commit details -
Configuration menu - View commit details
-
Copy full SHA for 549d065 - Browse repository at this point
Copy the full SHA 549d065View commit details -
Configuration menu - View commit details
-
Copy full SHA for 18efc6e - Browse repository at this point
Copy the full SHA 18efc6eView commit details -
Configuration menu - View commit details
-
Copy full SHA for d983f9d - Browse repository at this point
Copy the full SHA d983f9dView commit details -
Configuration menu - View commit details
-
Copy full SHA for ae30039 - Browse repository at this point
Copy the full SHA ae30039View commit details -
Configuration menu - View commit details
-
Copy full SHA for b7e055c - Browse repository at this point
Copy the full SHA b7e055cView commit details -
Reorganized Tpetra MV traits to allow future specialization for Kokko…
…s dense. Made local randomSyncedMatrix function in the MVOP tester.
Configuration menu - View commit details
-
Copy full SHA for 7bd92e1 - Browse repository at this point
Copy the full SHA 7bd92e1View commit details -
We now have a working Kokkos::View Dense adapter that is passing basic
tests with both the dense Traits and the MV Traits! Notes: Also added const and non-const getRawPointer functions. Had to split the Tpetra MV traits into separate parts to maintain Teuchos functionality for backward compatibility.
Configuration menu - View commit details
-
Copy full SHA for 0b671a6 - Browse repository at this point
Copy the full SHA 0b671a6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 476023f - Browse repository at this point
Copy the full SHA 476023fView commit details -
Configuration menu - View commit details
-
Copy full SHA for b9454d3 - Browse repository at this point
Copy the full SHA b9454d3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 24f3e8b - Browse repository at this point
Copy the full SHA 24f3e8bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 31b9f4c - Browse repository at this point
Copy the full SHA 31b9f4cView commit details -
Configuration menu - View commit details
-
Copy full SHA for bcbaaff - Browse repository at this point
Copy the full SHA bcbaaffView commit details -
Finally got the Kokkos Dense + Tpetra Block GMRES test building and p…
…assing on CPUgit status
Configuration menu - View commit details
-
Copy full SHA for a1de42c - Browse repository at this point
Copy the full SHA a1de42cView commit details -
Got DenseMat template param added to all needed solvers at the top le…
…vel. Code builds and runs on CPU.
Configuration menu - View commit details
-
Copy full SHA for 51d111a - Browse repository at this point
Copy the full SHA 51d111aView commit details -
Test many dense scalar types with SerialDenseMat Teuchos traits, via …
…Epetra (needs moved later), and fix sync needed after PutScalar is called to pass DenseMatTester on GPU.
Configuration menu - View commit details
-
Copy full SHA for 24e6ef6 - Browse repository at this point
Copy the full SHA 24e6ef6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 12b62c9 - Browse repository at this point
Copy the full SHA 12b62c9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8c3c0be - Browse repository at this point
Copy the full SHA 8c3c0beView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9dd9ff2 - Browse repository at this point
Copy the full SHA 9dd9ff2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 62522c8 - Browse repository at this point
Copy the full SHA 62522c8View commit details -
Added extra syncs. Encountering deep copy error. Added debug statemen…
…ts. Commiting for reproducer.
Configuration menu - View commit details
-
Copy full SHA for 7c27f57 - Browse repository at this point
Copy the full SHA 7c27f57View commit details -
Configuration menu - View commit details
-
Copy full SHA for c26148e - Browse repository at this point
Copy the full SHA c26148eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2074957 - Browse repository at this point
Copy the full SHA 2074957View commit details -
Configuration menu - View commit details
-
Copy full SHA for e26c8ce - Browse repository at this point
Copy the full SHA e26c8ceView commit details -
Fix Kokkos stride method for dense matrix traits and small code cleanup
1. Fixes up dense matrix traits testing The dense matrix traits testing for Teuchos is being moved to the belos/test directory since it is not specific to Epetra. This test employs the dense matrix tester and also includes some tests inspired by the Teuchos::SerialDenseMatrix tester. The dense matrix tester has been cleaned up a little to eliminate compiler warnings and default arguments for the dense matrix object have been removed from both the dense matrix tester and matrix-vector-operator tester, which requires the modification of the tests that use these testers. 2. The Teuchos::SerialDenseVector is not used by any of these iteration classes, so it is being removed to reduce confusion on whether it is used. 3. The call to get strides from the Kokkos::DualView object expects an integer array of length 8. Since a raw pointer to that array is passed in, bounds checking is not performed, and filling in all the strides will result in a seg fault for any integer array of less than 8. This was causing a seg fault in the Kokkos dense matrix adapter even on CPUs. 4. There was a compiler warning about the creation and destruction of the svals array not matching in the Belos::TpetraTestFramework. 5. To avoid confusion and extra work later, the Teuchos implementation of the dense matrix traits has been removed from being included in the abstract dense matrix traits class. To address this change, the Teuchos adapter has been added to several classes that require it due to the default template parameter for dense matrices. Additional changes to remove the use of Teuchos::SerialDenseVector objects in exchange for std::vector objects have been made. This is mostly for the storage of Given's rotations within GMRES-type solvers.
Configuration menu - View commit details
-
Copy full SHA for 97828e6 - Browse repository at this point
Copy the full SHA 97828e6View commit details -
Improve integration of dense matrix traits into LSQR
This cleans up the integration of dense matrix traits to have some commonality with other solvers that have been modified. This includes removing the default template for the dense matrix to Teuchos::SerialDenseMatrix for the iteration and status test. Only the solver manager has the default template argument so that the solver interface to the user appears unchanged.
Configuration menu - View commit details
-
Copy full SHA for 825edca - Browse repository at this point
Copy the full SHA 825edcaView commit details -
Converts BiCGStab and TFQMR solver to use dense matrix template
The BiCGStab and TFQMR solver now uses the dense matrix template, where the default is Teuchos::SerialDenseMatrix for the solver manager. The iteration classes now recognize the fourth dense matrix template argument, but do not have a default argument. A test for these two solvers has been added that uses Kokkos::DualView.
Configuration menu - View commit details
-
Copy full SHA for 203698d - Browse repository at this point
Copy the full SHA 203698dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7c45b55 - Browse repository at this point
Copy the full SHA 7c45b55View commit details -
Configuration menu - View commit details
-
Copy full SHA for f8e6cad - Browse repository at this point
Copy the full SHA f8e6cadView commit details -
Configuration menu - View commit details
-
Copy full SHA for fae528f - Browse repository at this point
Copy the full SHA fae528fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8e8542f - Browse repository at this point
Copy the full SHA 8e8542fView commit details -
Configuration menu - View commit details
-
Copy full SHA for acf65f3 - Browse repository at this point
Copy the full SHA acf65f3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0400b92 - Browse repository at this point
Copy the full SHA 0400b92View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5dc9cd4 - Browse repository at this point
Copy the full SHA 5dc9cd4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1bdf4ad - Browse repository at this point
Copy the full SHA 1bdf4adView commit details -
Configuration menu - View commit details
-
Copy full SHA for 52412e4 - Browse repository at this point
Copy the full SHA 52412e4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 53261ae - Browse repository at this point
Copy the full SHA 53261aeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3a364f7 - Browse repository at this point
Copy the full SHA 3a364f7View commit details -
Finishes integration of dense matrix traits into PCPG
The PCPG solver required a new method to be added to the traits that provides a conjugate-transposed copy of a dense matrix. Then the solver could use dense matrix traits. Additional tests and examples have been added to the repository for PCPG using Kokkos::DualView objects.
Configuration menu - View commit details
-
Copy full SHA for 03f7c22 - Browse repository at this point
Copy the full SHA 03f7c22View commit details -
Fixes all orthogonalization classes and testers to work with dense ma…
…trix traits All the standard Belos orthogonalization managers have been converted to using dense matrix traits. Furthermore, the orthogonalization factories and testers have also been converted to using these traits. This has enabled a more thorough testing of the orthogonalization implementations for Kokkos::DualView objects. New tests have been added that pass for all three major implementations: ICGS, IMGS, and DGKS. Also, with this chagne, the block GMRES solver test is now passing that uses Kokkos::DualView objects. Further cleanup is necessary, but this is a solid checkpoint on this work.
Configuration menu - View commit details
-
Copy full SHA for de4501b - Browse repository at this point
Copy the full SHA de4501bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8f7277a - Browse repository at this point
Copy the full SHA 8f7277aView commit details -
Changes diagonal updating to use Subview/PutScalar methods
To avoid direct interrogation of values which may result in unnecessary synchronizations, the use of Subview and PutScalar methods are used.
Configuration menu - View commit details
-
Copy full SHA for e6be018 - Browse repository at this point
Copy the full SHA e6be018View commit details -
Configuration menu - View commit details
-
Copy full SHA for 73af96a - Browse repository at this point
Copy the full SHA 73af96aView commit details -
Converts over TSQR classes in Belos to use dense matrix template argu…
…ment The TSQR orthogonalization class is a experimental capability in Belos. The infrastructure that connects the TSQR implementation in Tpetra to the Belos orthogonalization classes has been updated to use the new dense matrix traits mechanism. WARNING: This code will not compile with TSQR enabled because the TSQR implementation in Tpetra is based on Teuchos::SerialDenseMatrix object. This code will need to be extended to take different dense matrix objects, like Kokkos::DualView.
Configuration menu - View commit details
-
Copy full SHA for a1eba92 - Browse repository at this point
Copy the full SHA a1eba92View commit details -
Configuration menu - View commit details
-
Copy full SHA for e0da7ad - Browse repository at this point
Copy the full SHA e0da7adView commit details -
Converts fixed-point solver to use dense matrix template
No dense matrix objects are used in the solver, so the effect of this change is negligible.
Configuration menu - View commit details
-
Copy full SHA for 0556c35 - Browse repository at this point
Copy the full SHA 0556c35View commit details -
Configuration menu - View commit details
-
Copy full SHA for c05e6f0 - Browse repository at this point
Copy the full SHA c05e6f0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 756e3fd - Browse repository at this point
Copy the full SHA 756e3fdView commit details -
Moves pseudo-block GMRES data structures to iteration header
Also transitions pseudo block GMRES to use dense matrix traits
Configuration menu - View commit details
-
Copy full SHA for 1444b58 - Browse repository at this point
Copy the full SHA 1444b58View commit details -
Configuration menu - View commit details
-
Copy full SHA for a245a93 - Browse repository at this point
Copy the full SHA a245a93View commit details -
Converts single-vector CG, pseudo-block CG, and stochastic CG to DMT
The single-vector CG, pseudo-block CG and stochastic CG can now use the dense matrix traits. Tests have been added that use the Kokkos dense adapter to execute these solvers.
Configuration menu - View commit details
-
Copy full SHA for 1af8602 - Browse repository at this point
Copy the full SHA 1af8602View commit details -
Configuration menu - View commit details
-
Copy full SHA for b8ca6e6 - Browse repository at this point
Copy the full SHA b8ca6e6View commit details -
Adds DenseSolver interface for block CG solver
The block CG solver requires a factorization and solve of the block projected system. This was done through the direct linear solver interfaces in Teuchos. So, a lightweight interface needs to replicate this capability for solvers like block CG and the GMRES polynomial that can be implemented for Kokkos DualView objects.
Configuration menu - View commit details
-
Copy full SHA for c4a9ac0 - Browse repository at this point
Copy the full SHA c4a9ac0View commit details -
Configuration menu - View commit details
-
Copy full SHA for c83718d - Browse repository at this point
Copy the full SHA c83718dView commit details -
Finished converting GMRES-variants to dense matrix traits
The pseudo-block and polynomial-preconditioned GMRES variants are integrated with dense matrix traits. All GMRES variants have been cleaned up to remove default templates where appropriate.
Configuration menu - View commit details
-
Copy full SHA for 64a97b9 - Browse repository at this point
Copy the full SHA 64a97b9View commit details -
Configuration menu - View commit details
-
Copy full SHA for e33bf99 - Browse repository at this point
Copy the full SHA e33bf99View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9ce63cc - Browse repository at this point
Copy the full SHA 9ce63ccView commit details -
Fixes OrthoFactory to use dense matrix traits in template argument
Also fixes a typo in an output message, which infers the solver is GCRODR.
Configuration menu - View commit details
-
Copy full SHA for 9bdf513 - Browse repository at this point
Copy the full SHA 9bdf513View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2996a26 - Browse repository at this point
Copy the full SHA 2996a26View commit details -
Configuration menu - View commit details
-
Copy full SHA for b6d6b3a - Browse repository at this point
Copy the full SHA b6d6b3aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 64b021f - Browse repository at this point
Copy the full SHA 64b021fView commit details -
Configuration menu - View commit details
-
Copy full SHA for bd5fd96 - Browse repository at this point
Copy the full SHA bd5fd96View commit details -
Configuration menu - View commit details
-
Copy full SHA for ce62ed8 - Browse repository at this point
Copy the full SHA ce62ed8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1a81440 - Browse repository at this point
Copy the full SHA 1a81440View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9ee594a - Browse repository at this point
Copy the full SHA 9ee594aView commit details -
Configuration menu - View commit details
-
Copy full SHA for aaeb288 - Browse repository at this point
Copy the full SHA aaeb288View commit details -
Configuration menu - View commit details
-
Copy full SHA for 23612ad - Browse repository at this point
Copy the full SHA 23612adView commit details -
Configuration menu - View commit details
-
Copy full SHA for 95ea9c6 - Browse repository at this point
Copy the full SHA 95ea9c6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 806fb9d - Browse repository at this point
Copy the full SHA 806fb9dView commit details -
Configuration menu - View commit details
-
Copy full SHA for f49a0e6 - Browse repository at this point
Copy the full SHA f49a0e6View commit details -
Completes integration of DenseMatrixTraits
The DenseMatrixTraits have been integrated into GCRODR such that the solver can use Kokkos::DualView objects for dense matrices.
Configuration menu - View commit details
-
Copy full SHA for 2b92f8f - Browse repository at this point
Copy the full SHA 2b92f8fView commit details -
Changes scalar values from SerialDenseMatrix to std::vector<>
This will simplify the transition to using the templated dense matrix type.
Configuration menu - View commit details
-
Copy full SHA for a007d5a - Browse repository at this point
Copy the full SHA a007d5aView commit details -
Moves several dense matrix objects to std::vector objects
Coefficient vectors like alpha, beta, and d do not need to be dense matrix objects.
Configuration menu - View commit details
-
Copy full SHA for ac5c515 - Browse repository at this point
Copy the full SHA ac5c515View commit details -
Configuration menu - View commit details
-
Copy full SHA for fe52229 - Browse repository at this point
Copy the full SHA fe52229View commit details -
Configuration menu - View commit details
-
Copy full SHA for 956ba09 - Browse repository at this point
Copy the full SHA 956ba09View commit details -
Configuration menu - View commit details
-
Copy full SHA for 51a5995 - Browse repository at this point
Copy the full SHA 51a5995View commit details -
Convert SerialDenseMatrix objects to dense matrix traits.
Only the multiply methods need to be converted to BLAS methods.
Configuration menu - View commit details
-
Copy full SHA for cd1e46c - Browse repository at this point
Copy the full SHA cd1e46cView commit details -
Configuration menu - View commit details
-
Copy full SHA for f42c362 - Browse repository at this point
Copy the full SHA f42c362View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8c73b96 - Browse repository at this point
Copy the full SHA 8c73b96View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6df1683 - Browse repository at this point
Copy the full SHA 6df1683View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2524f9c - Browse repository at this point
Copy the full SHA 2524f9cView commit details -
Configuration menu - View commit details
-
Copy full SHA for f1979c8 - Browse repository at this point
Copy the full SHA f1979c8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4513c02 - Browse repository at this point
Copy the full SHA 4513c02View commit details -
Configuration menu - View commit details
-
Copy full SHA for d92bbf6 - Browse repository at this point
Copy the full SHA d92bbf6View commit details -
Configuration menu - View commit details
-
Copy full SHA for ae03ed8 - Browse repository at this point
Copy the full SHA ae03ed8View commit details -
Configuration menu - View commit details
-
Copy full SHA for c4b8a32 - Browse repository at this point
Copy the full SHA c4b8a32View commit details -
Configuration menu - View commit details
-
Copy full SHA for d584a2c - Browse repository at this point
Copy the full SHA d584a2cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 23d2aa8 - Browse repository at this point
Copy the full SHA 23d2aa8View commit details -
Configuration menu - View commit details
-
Copy full SHA for ba03404 - Browse repository at this point
Copy the full SHA ba03404View commit details
Commits on Oct 2, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 4507058 - Browse repository at this point
Copy the full SHA 4507058View commit details -
Configuration menu - View commit details
-
Copy full SHA for c97b897 - Browse repository at this point
Copy the full SHA c97b897View commit details -
Configuration menu - View commit details
-
Copy full SHA for f30e1f9 - Browse repository at this point
Copy the full SHA f30e1f9View commit details -
Configuration menu - View commit details
-
Copy full SHA for cc025aa - Browse repository at this point
Copy the full SHA cc025aaView commit details