-
Notifications
You must be signed in to change notification settings - Fork 606
Tpetra: Implementing the ReindexTransform. Tests also included. #14424
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
… tests also included. Signed-off-by: Ernesto Prudencio <[email protected]>
|
CDash for AT1 results [Only accessible from Sandia networks] |
|
Status Flag 'Pre-Test Inspection' - Auto Inspected - Inspection is Not Necessary for this Pull Request. |
|
Status Flag 'Pull Request AutoTester' - Testing Jenkins Projects: Pull Request Auto Testing STARTING (click to expand)Build InformationTest Name: PR_gcc-openmpi-openmp
Jenkins Parameters
Build InformationTest Name: PR_clang
Jenkins Parameters
Build InformationTest Name: PR_cuda-uvm
Jenkins Parameters
Build InformationTest Name: PR_CompSim
Jenkins Parameters
Using Repos:
Pull Request Author: eeprude |
|
Status Flag 'Pull Request AutoTester' - Jenkins Testing: 1 or more Jobs FAILED Note: Testing will normally be attempted again in approx. 2 Hrs 30 Mins. If a change to the PR source branch occurs, the testing will be attempted again on next available autotester run. Pull Request Auto Testing has FAILED (click to expand)Build InformationTest Name: PR_gcc-openmpi-openmp
Jenkins Parameters
Build InformationTest Name: PR_clang
Jenkins Parameters
Build InformationTest Name: PR_cuda-uvm
Jenkins Parameters
Build InformationTest Name: PR_CompSim
Jenkins Parameters
|
Signed-off-by: Ernesto Prudencio <[email protected]>
|
Status Flag 'Pre-Test Inspection' - Auto Inspected - Inspection is Not Necessary for this Pull Request. |
|
Status Flag 'Pull Request AutoTester' - Failure: Job PR_gcc-openmpi-openmp on Jenkins server at https://trilinos-jenkins.sandia.gov Does Not Exist
|
…formReady Signed-off-by: Ernesto Prudencio <[email protected]>
|
Status Flag 'Pre-Test Inspection' - Auto Inspected - Inspection is Not Necessary for this Pull Request. |
|
Status Flag 'Pull Request AutoTester' - Failure: Job PR_gcc-openmpi-openmp on Jenkins server at https://trilinos-jenkins.sandia.gov Does Not Exist
|
…formReady Signed-off-by: Ernesto Prudencio <[email protected]>
Signed-off-by: Ernesto Prudencio <[email protected]>
|
Status Flag 'Pre-Test Inspection' - Auto Inspected - Inspection is Not Necessary for this Pull Request. |
|
Status Flag 'Pull Request AutoTester' - Testing Jenkins Projects: Pull Request Auto Testing STARTING (click to expand)Build InformationTest Name: PR_gcc-openmpi-openmp
Jenkins Parameters
Build InformationTest Name: PR_CompSim
Jenkins Parameters
Using Repos:
Pull Request Author: eeprude |
|
Status Flag 'Pull Request AutoTester' - Jenkins Testing: all Jobs PASSED Pull Request Auto Testing has PASSED (click to expand)Build InformationTest Name: PR_gcc-openmpi-openmp
Jenkins Parameters
Build InformationTest Name: PR_CompSim
Jenkins Parameters
|
|
Status Flag 'Pre-Merge Inspection' - - This Pull Request Requires Inspection... The code must be inspected by a member of the Team before Testing/Merging |
|
All Jobs Finished; status = PASSED, However Inspection must be performed before merge can occur... |
…formReady Signed-off-by: Ernesto Prudencio <[email protected]>
|
Status Flag 'Pre-Test Inspection' - Auto Inspected - Inspection is Not Necessary for this Pull Request. |
|
Status Flag 'Pull Request AutoTester' - Testing Jenkins Projects: Pull Request Auto Testing STARTING (click to expand)Build InformationTest Name: PR_gcc-openmpi-openmp
Jenkins Parameters
Build InformationTest Name: PR_CompSim
Jenkins Parameters
Using Repos:
Pull Request Author: eeprude |
|
Status Flag 'Pull Request AutoTester' - Jenkins Testing: all Jobs PASSED Pull Request Auto Testing has PASSED (click to expand)Build InformationTest Name: PR_gcc-openmpi-openmp
Jenkins Parameters
Build InformationTest Name: PR_CompSim
Jenkins Parameters
|
|
Status Flag 'Pre-Merge Inspection' - - This Pull Request Requires Inspection... The code must be inspected by a member of the Team before Testing/Merging |
|
All Jobs Finished; status = PASSED, However Inspection must be performed before merge can occur... |
Signed-off-by: Ernesto Prudencio <[email protected]>
Signed-off-by: Ernesto Prudencio <[email protected]>
… does not solve the issue at AT2 / cuda12, I want to keep this version to exchange ideas with him. I also added a fence call. Signed-off-by: Ernesto Prudencio <[email protected]>
|
Status Flag 'Pre-Test Inspection' - Auto Inspected - Inspection is Not Necessary for this Pull Request. |
|
Status Flag 'Pull Request AutoTester' - Testing Jenkins Projects: Pull Request Auto Testing STARTING (click to expand)Build InformationTest Name: PR_gcc-openmpi-openmp
Jenkins Parameters
Build InformationTest Name: PR_CompSim
Jenkins Parameters
Using Repos:
Pull Request Author: eeprude |
|
Status Flag 'Pre-Test Inspection' - Auto Inspected - Inspection is Not Necessary for this Pull Request. |
|
Status Flag 'Pull Request AutoTester' - Testing Jenkins Projects: Pull Request Auto Testing STARTING (click to expand)Build InformationTest Name: PR_gcc-openmpi-openmp
Jenkins Parameters
Build InformationTest Name: PR_CompSim
Jenkins Parameters
Using Repos:
Pull Request Author: eeprude |
|
Status Flag 'Pull Request AutoTester' - Jenkins Testing: all Jobs PASSED Pull Request Auto Testing has PASSED (click to expand)Build InformationTest Name: PR_gcc-openmpi-openmp
Jenkins Parameters
Build InformationTest Name: PR_CompSim
Jenkins Parameters
|
|
Status Flag 'Pre-Merge Inspection' - - This Pull Request Requires Inspection... The code must be inspected by a member of the Team before Testing/Merging |
|
All Jobs Finished; status = PASSED, However Inspection must be performed before merge can occur... |
|
About the Cuda error: it says that somewhere the values view of a |
|
Status Flag 'Pre-Merge Inspection' - - This Pull Request Requires Inspection... The code must be inspected by a member of the Team before Testing/Merging |
|
All Jobs Finished; status = PASSED, However Inspection must be performed before merge can occur... |
Signed-off-by: Ernesto Prudencio <[email protected]>
Signed-off-by: Ernesto Prudencio <[email protected]>
|
Your PR updated files that did not respect package formatting settings. Patchdiff --git a/packages/tpetra/core/src/Tpetra_Reindex_CrsMatrix_def.hpp b/packages/tpetra/core/src/Tpetra_Reindex_CrsMatrix_def.hpp
index d602e2ec..d533f571 100644
--- a/packages/tpetra/core/src/Tpetra_Reindex_CrsMatrix_def.hpp
+++ b/packages/tpetra/core/src/Tpetra_Reindex_CrsMatrix_def.hpp
@@ -79,12 +79,11 @@ Reindex_CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node>::operator()(Origina
v_t newCols(origMatrix->getColMap());
{
- using imp_t = Import<LocalOrdinal, GlobalOrdinal, Node>;
+ using imp_t = Import<LocalOrdinal, GlobalOrdinal, Node>;
Teuchos::RCP<const imp_t> importer = origMatrix->getCrsGraph()->getImporter();
if (importer.is_null()) {
newCols = cols;
- }
- else {
+ } else {
newCols.doImport(cols, *importer, INSERT, false);
}
}
@@ -93,7 +92,7 @@ Reindex_CrsMatrix<Scalar, LocalOrdinal, GlobalOrdinal, Node>::operator()(Origina
kv_t newColIndices;
{
auto newColsView = newCols.getLocalViewDevice(Tpetra::Access::ReadOnly);
- newColIndices = kv_t("newColIndices", newColsView.extent(0));
+ newColIndices = kv_t("newColIndices", newColsView.extent(0));
Kokkos::deep_copy(newColIndices, Kokkos::subview(newColsView, Kokkos::ALL(), 0));
}
More details about our use of clang-format and other tools can be found in the wiki. |
Signed-off-by: Ernesto Prudencio <[email protected]>
|
Status Flag 'Pre-Test Inspection' - Auto Inspected - Inspection is Not Necessary for this Pull Request. |
|
Status Flag 'Pull Request AutoTester' - Testing Jenkins Projects: Pull Request Auto Testing STARTING (click to expand)Build InformationTest Name: PR_gcc-openmpi-openmp
Jenkins Parameters
Build InformationTest Name: PR_CompSim
Jenkins Parameters
Using Repos:
Pull Request Author: eeprude |
|
Status Flag 'Pull Request AutoTester' - Jenkins Testing: all Jobs PASSED Pull Request Auto Testing has PASSED (click to expand)Build InformationTest Name: PR_gcc-openmpi-openmp
Jenkins Parameters
Build InformationTest Name: PR_CompSim
Jenkins Parameters
|
|
Status Flag 'Pre-Merge Inspection' - - This Pull Request Requires Inspection... The code must be inspected by a member of the Team before Testing/Merging |
|
All Jobs Finished; status = PASSED, However Inspection must be performed before merge can occur... |
|
Status Flag 'Pre-Merge Inspection' - SUCCESS: The last commit to this Pull Request has been INSPECTED AND APPROVED by [ cgcgcg ]! |
|
Status Flag 'Pull Request AutoTester' - AutoMerge IS ENABLED, but the Label AT: AUTOMERGE is not set. Either set Label AT: AUTOMERGE or manually merge the PR... |
1 similar comment
|
Status Flag 'Pull Request AutoTester' - AutoMerge IS ENABLED, but the Label AT: AUTOMERGE is not set. Either set Label AT: AUTOMERGE or manually merge the PR... |
… tests also included.
@trilinos/
Motivation
The implementation of the ReindexTransform using Tpetra follows the same steps used in the EpetraExt/src/transform/ implementation.
The ReindexTransform is usually used as part of the sequence of 4 transforms, in the following order:
1- SingletonTransform (which will be available in Tpetra soon)
2- SolverMapTransform (already available in Tpetra, per merge request #14279)
3- ReindexTransform (this merge request)
4- RebalanceTransform (which will be available in Trilinoscouplings soon, per merge request #14580)
Related Issues
14423Stakeholder Feedback
Testing
The unit test uses a 17 x 17 matrix provided by Heidi Thornquist. If more matrices become available in the future, it will be easy to add more tests using them.
We also made more tests during the development of the Tpetra ReindexTransform, using other examples provided by Heidi. The tests were made with all number of processors varying from 1 to 8 in a Mac notebook with 8 cores.
All tests mentioned above run fine. Also, they do not trigger any memory leakage warning messages by Trilinos.