Skip to content

Conversation

@eeprude
Copy link
Contributor

@eeprude eeprude commented Oct 18, 2025

@trilinos/

Motivation

The RebalanceTransform 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 (which will be avaiable in Tpetra soon as well, per merge request #14424)
4- RebalanceTransfrom (this merge request).

This new rebalance transform:

  • aims to rebalance the distribution of linear problem contents (matrix, lhs, and rhs) among MPI nodes,
  • needs to be in trilinoscouplings/src/tpetra because it needs to access classes from both Tpetra and Zoltan2,
  • replaces the combination of two transforms using classes from Epetra and Isorropia: trilinoscouplings/src/epetraext/EpetraExt_Isorropia_CrsGraph, and epetraext/src/transform/EpetraExt_LPTrans_From_GraphTrans.h. Such combination is exemplified in trilinoscouplings/examples/epetraext/EpetraExt_Isorropia_LPTrans_Ex.cpp.

Related Issues

  • Closes 14439

Stakeholder Feedback

Testing

There is already an example in trilinoscouplings/examples/tpetra/Tpetra_Zoltan2_LPTrans_Ex.cpp that shows how to combine Tpetra and Zoltan2. This pull request implements the new Tpetra transform and uses it in the example.

This pull request replaces the old PR #14440

…0. These changes now also include all the ETI changes by Christian Glusa, plus his latest small correction on ifpack2/src/CMakeLists.txt

Signed-off-by: Ernesto Prudencio <[email protected]>
@eeprude eeprude requested a review from cgcgcg October 18, 2025 08:12
@eeprude eeprude self-assigned this Oct 18, 2025
@eeprude eeprude requested review from a team as code owners October 18, 2025 08:12
@github-actions
Copy link

CDash for AT1 results [Only accessible from Sandia networks]
CDash for AT2 results [Currently only accessible from Sandia networks]

@eeprude eeprude changed the title Adding all changes from the branch for the original pull request 1444… Trilinoscouplings: Implementing the Rebalance_LinearProblem transform using Tpetra and Zoltan2. Update test as well. Oct 18, 2025
@trilinos-autotester
Copy link
Contributor

Status Flag 'Pre-Test Inspection' - Auto Inspected - Inspection is Not Necessary for this Pull Request.

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Testing Jenkins Projects:

Pull Request Auto Testing STARTING (click to expand)

Build Information

Test Name: PR_gcc-openmpi-openmp

  • Build Num: 2483
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel8_sems-gnu-8.5.0-openmpi-4.1.6-openmp_release-debug_static_no-kokkos-arch_no-asan_no-complex_no-fpic_mpi_no-pt_no-rdc_no-uvm_deprecated-on_no-package-enables
PR_LABELS pkg: TrilinosCouplings
PULLREQUESTNUM 14580
PULLREQUEST_CDASH_TRACK Pull Request
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL rhel8
TRILINOS_SOURCE_REPO https://github.com/eeprude/Trilinos
TRILINOS_SOURCE_SHA 27e40d4
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA c240090

Build Information

Test Name: PR_CompSim

  • Build Num: 801
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
BLOCKING_BUILD false
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel8_aue-gcc-openmpi_release_static_no-kokkos-arch_no-asan_complex_no-fpic_mpi_no-pt_no-rdc_no-uvm_deprecated-on_compsim
PR_LABELS pkg: TrilinosCouplings
PULLREQUESTNUM 14580
PULLREQUEST_CDASH_TRACK Pull Request (Non-blocking)
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL rhel8
TRILINOS_SOURCE_REPO https://github.com/eeprude/Trilinos
TRILINOS_SOURCE_SHA 27e40d4
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA c240090

Using Repos:

Repo: TRILINOS (eeprude/Trilinos)
  • Branch: 417_rebalanceTransformReady
  • SHA: 27e40d4
  • Mode: TEST_REPO

Pull Request Author: eeprude

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Jenkins Testing: all Jobs PASSED

Pull Request Auto Testing has PASSED (click to expand)

Build Information

Test Name: PR_gcc-openmpi-openmp

  • Build Num: 2483
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel8_sems-gnu-8.5.0-openmpi-4.1.6-openmp_release-debug_static_no-kokkos-arch_no-asan_no-complex_no-fpic_mpi_no-pt_no-rdc_no-uvm_deprecated-on_no-package-enables
PR_LABELS pkg: TrilinosCouplings
PULLREQUESTNUM 14580
PULLREQUEST_CDASH_TRACK Pull Request
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL rhel8
TRILINOS_SOURCE_REPO https://github.com/eeprude/Trilinos
TRILINOS_SOURCE_SHA 27e40d4
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA c240090

Build Information

Test Name: PR_CompSim

  • Build Num: 801
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
BLOCKING_BUILD false
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel8_aue-gcc-openmpi_release_static_no-kokkos-arch_no-asan_complex_no-fpic_mpi_no-pt_no-rdc_no-uvm_deprecated-on_compsim
PR_LABELS pkg: TrilinosCouplings
PULLREQUESTNUM 14580
PULLREQUEST_CDASH_TRACK Pull Request (Non-blocking)
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL rhel8
TRILINOS_SOURCE_REPO https://github.com/eeprude/Trilinos
TRILINOS_SOURCE_SHA 27e40d4
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA c240090


CDash Test Results for PR# 14580.

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pre-Merge Inspection' - - This Pull Request Requires Inspection... The code must be inspected by a member of the Team before Testing/Merging
NO REVIEWS HAVE BEEN PERFORMED ON THIS PULL REQUEST!

@trilinos-autotester
Copy link
Contributor

All Jobs Finished; status = PASSED, However Inspection must be performed before merge can occur...

1 similar comment
@trilinos-autotester
Copy link
Contributor

All Jobs Finished; status = PASSED, However Inspection must be performed before merge can occur...

@cgcgcg cgcgcg mentioned this pull request Oct 20, 2025
@trilinos-autotester
Copy link
Contributor

All Jobs Finished; status = PASSED, However Inspection must be performed before merge can occur...

@eeprude eeprude added the AT: RETEST Causes the PR autotester to run a new round of PR tests on the next iteration label Oct 20, 2025
@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - User Requested Retest - Label AT: RETEST will be reset after testing.

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Testing Jenkins Projects:

Pull Request Auto Testing STARTING (click to expand)

Build Information

Test Name: PR_gcc-openmpi-openmp

  • Build Num: 2487
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel8_sems-gnu-8.5.0-openmpi-4.1.6-openmp_release-debug_static_no-kokkos-arch_no-asan_no-complex_no-fpic_mpi_no-pt_no-rdc_no-uvm_deprecated-on_no-package-enables
PR_LABELS pkg: TrilinosCouplings;AT: RETEST
PULLREQUESTNUM 14580
PULLREQUEST_CDASH_TRACK Pull Request
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL rhel8
TRILINOS_SOURCE_REPO https://github.com/eeprude/Trilinos
TRILINOS_SOURCE_SHA 27e40d4
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA c240090

Build Information

Test Name: PR_CompSim

  • Build Num: 805
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
BLOCKING_BUILD false
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel8_aue-gcc-openmpi_release_static_no-kokkos-arch_no-asan_complex_no-fpic_mpi_no-pt_no-rdc_no-uvm_deprecated-on_compsim
PR_LABELS pkg: TrilinosCouplings;AT: RETEST
PULLREQUESTNUM 14580
PULLREQUEST_CDASH_TRACK Pull Request (Non-blocking)
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL rhel8
TRILINOS_SOURCE_REPO https://github.com/eeprude/Trilinos
TRILINOS_SOURCE_SHA 27e40d4
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA c240090

Using Repos:

Repo: TRILINOS (eeprude/Trilinos)
  • Branch: 417_rebalanceTransformReady
  • SHA: 27e40d4
  • Mode: TEST_REPO

Pull Request Author: eeprude

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Jenkins Testing: all Jobs PASSED

Pull Request Auto Testing has PASSED (click to expand)

Build Information

Test Name: PR_gcc-openmpi-openmp

  • Build Num: 2487
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel8_sems-gnu-8.5.0-openmpi-4.1.6-openmp_release-debug_static_no-kokkos-arch_no-asan_no-complex_no-fpic_mpi_no-pt_no-rdc_no-uvm_deprecated-on_no-package-enables
PR_LABELS pkg: TrilinosCouplings;AT: RETEST
PULLREQUESTNUM 14580
PULLREQUEST_CDASH_TRACK Pull Request
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL rhel8
TRILINOS_SOURCE_REPO https://github.com/eeprude/Trilinos
TRILINOS_SOURCE_SHA 27e40d4
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA c240090

Build Information

Test Name: PR_CompSim

  • Build Num: 805
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
BLOCKING_BUILD false
FORCE_CLEAN true
GENCONFIG_BUILD_NAME rhel8_aue-gcc-openmpi_release_static_no-kokkos-arch_no-asan_complex_no-fpic_mpi_no-pt_no-rdc_no-uvm_deprecated-on_compsim
PR_LABELS pkg: TrilinosCouplings;AT: RETEST
PULLREQUESTNUM 14580
PULLREQUEST_CDASH_TRACK Pull Request (Non-blocking)
TEST_REPO_ALIAS TRILINOS
TRILINOS_NODE_LABEL rhel8
TRILINOS_SOURCE_REPO https://github.com/eeprude/Trilinos
TRILINOS_SOURCE_SHA 27e40d4
TRILINOS_SRN_CONFIG true
TRILINOS_TARGET_BRANCH develop
TRILINOS_TARGET_REPO https://github.com/trilinos/Trilinos
TRILINOS_TARGET_SHA c240090


CDash Test Results for PR# 14580.

@trilinos-autotester trilinos-autotester removed the AT: RETEST Causes the PR autotester to run a new round of PR tests on the next iteration label Oct 20, 2025
@trilinos-autotester
Copy link
Contributor

All Jobs Finished; status = PASSED, However Inspection must be performed before merge can occur...

4 similar comments
@trilinos-autotester
Copy link
Contributor

All Jobs Finished; status = PASSED, However Inspection must be performed before merge can occur...

@trilinos-autotester
Copy link
Contributor

All Jobs Finished; status = PASSED, However Inspection must be performed before merge can occur...

@trilinos-autotester
Copy link
Contributor

All Jobs Finished; status = PASSED, However Inspection must be performed before merge can occur...

@trilinos-autotester
Copy link
Contributor

All Jobs Finished; status = PASSED, However Inspection must be performed before merge can occur...

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Pull Request will be Automerged

@trilinos-autotester
Copy link
Contributor

Cannot Merge Pull Request# 14580: Github Mergeability = blocked; Git Mergeable = True

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Pull Request will be Automerged

@trilinos-autotester
Copy link
Contributor

Cannot Merge Pull Request# 14580: Github Mergeability = blocked; Git Mergeable = True

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Pull Request will be Automerged

@trilinos-autotester
Copy link
Contributor

Cannot Merge Pull Request# 14580: Github Mergeability = blocked; Git Mergeable = True

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Pull Request will be Automerged

@trilinos-autotester
Copy link
Contributor

Cannot Merge Pull Request# 14580: Github Mergeability = blocked; Git Mergeable = True

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Pull Request will be Automerged

@trilinos-autotester
Copy link
Contributor

Cannot Merge Pull Request# 14580: Github Mergeability = blocked; Git Mergeable = True

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Pull Request will be Automerged

@trilinos-autotester
Copy link
Contributor

Cannot Merge Pull Request# 14580: Github Mergeability = blocked; Git Mergeable = True

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Pull Request will be Automerged

@trilinos-autotester
Copy link
Contributor

Cannot Merge Pull Request# 14580: Github Mergeability = blocked; Git Mergeable = True

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Pull Request will be Automerged

@trilinos-autotester
Copy link
Contributor

Cannot Merge Pull Request# 14580: Github Mergeability = blocked; Git Mergeable = True

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Pull Request will be Automerged

@trilinos-autotester
Copy link
Contributor

Cannot Merge Pull Request# 14580: Github Mergeability = blocked; Git Mergeable = True

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Pull Request will be Automerged

@trilinos-autotester
Copy link
Contributor

Cannot Merge Pull Request# 14580: Github Mergeability = blocked; Git Mergeable = True

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Pull Request will be Automerged

@trilinos-autotester
Copy link
Contributor

Cannot Merge Pull Request# 14580: Github Mergeability = blocked; Git Mergeable = True

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Pull Request will be Automerged

@trilinos-autotester
Copy link
Contributor

Cannot Merge Pull Request# 14580: Github Mergeability = blocked; Git Mergeable = True

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Pull Request will be Automerged

@trilinos-autotester
Copy link
Contributor

Cannot Merge Pull Request# 14580: Github Mergeability = blocked; Git Mergeable = True

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Pull Request will be Automerged

@trilinos-autotester
Copy link
Contributor

Cannot Merge Pull Request# 14580: Github Mergeability = blocked; Git Mergeable = True

@trilinos-autotester
Copy link
Contributor

Status Flag 'Pull Request AutoTester' - Pull Request will be Automerged

@trilinos-autotester
Copy link
Contributor

Cannot Merge Pull Request# 14580: Github Mergeability = blocked; Git Mergeable = True

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

AT: AUTOMERGE Causes the PR autotester to automatically merge the PR branch once approvals are completed pkg: TrilinosCouplings

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants