#include <Isorropia_EpetraPartitioner.hpp>
Inheritance diagram for Isorropia::Epetra::Partitioner:
Public Member Functions | |
| Partitioner (Teuchos::RefCountPtr< const Epetra_CrsGraph > input_graph, const Teuchos::ParameterList ¶mlist, bool compute_partitioning_now=true) | |
| Constructor that accepts an Epetra_CrsGraph object. | |
| Partitioner (Teuchos::RefCountPtr< const Epetra_CrsGraph > input_graph, Teuchos::RefCountPtr< const Isorropia::CostDescriber > costs, const Teuchos::ParameterList ¶mlist, bool compute_partitioning_now=true) | |
| Constructor that accepts an Epetra_CrsGraph object and a CostDescriber. | |
| Partitioner (Teuchos::RefCountPtr< const Epetra_RowMatrix > input_matrix, const Teuchos::ParameterList ¶mlist, bool compute_partitioning_now=true) | |
| Constructor that accepts an Epetra_RowMatrix object. | |
| Partitioner (Teuchos::RefCountPtr< const Epetra_RowMatrix > input_matrix, Teuchos::RefCountPtr< const Isorropia::CostDescriber > costs, const Teuchos::ParameterList ¶mlist, bool compute_partitioning_now=true) | |
| Constructor that accepts an Epetra_RowMatrix object and a CostDescriber. | |
| virtual | ~Partitioner () |
| Destructor. | |
| void | setParameters (const Teuchos::ParameterList ¶mlist) |
| Set parameters from a Teuchos::ParameterList object. | |
| void | compute_partitioning (bool force_repartitioning=false) |
| Compute a rebalanced partitioning for the data in the object that this class was constructed with. | |
| bool | partitioning_already_computed () const |
| Query whether the method compute_partitioning() has already been called on this class instance. | |
| int | newPartitionNumber (int myElem) const |
| Return the new partition ID for a given element that resided locally in the old partitioning. | |
| int | numElemsInPartition (int partition) const |
| Return the number of elements in a given partition. | |
| void | elemsInPartition (int partition, int *elementList, int len) const |
| Fill user-allocated list (of length len) with the global element ids to be located in the given partition. | |
| Isorropia::Epetra::Partitioner::Partitioner | ( | Teuchos::RefCountPtr< const Epetra_CrsGraph > | input_graph, | |
| const Teuchos::ParameterList & | paramlist, | |||
| bool | compute_partitioning_now = true | |||
| ) |
Constructor that accepts an Epetra_CrsGraph object.
| input_graph | Matrix-graph object for which a new partitioning is to be computed. A Teuchos::RefCountPtr is used here because a reference to the input object may be held by this object after this constructor completes and returns. | |
| paramlist | Teuchos::ParameterList which will be copied to an internal ParameterList attribute. No reference to this input object is held after this constructor completes. If the ParameterList object contains a sublist named "Zoltan", then the Zoltan library is used to perform the balancing. Also, any parameters in the "Zoltan" sublist will be relayed directly to Zoltan. Refer to the Zoltan users guide for specific parameters that Zoltan recognizes. A couple of important ones are "LB_METHOD" (valid values include "GRAPH", "HYPERGRAPH"), "DEBUG_LEVEL" (valid values are 0 to 10, default is 1), etc. | |
| compute_partitioning_now | Optional argument defaults to true. If true, the method compute_partitioning() will be called before this constructor returns. |
| Isorropia::Epetra::Partitioner::Partitioner | ( | Teuchos::RefCountPtr< const Epetra_CrsGraph > | input_graph, | |
| Teuchos::RefCountPtr< const Isorropia::CostDescriber > | costs, | |||
| const Teuchos::ParameterList & | paramlist, | |||
| bool | compute_partitioning_now = true | |||
| ) |
Constructor that accepts an Epetra_CrsGraph object and a CostDescriber.
| input_graph | Matrix-graph object for which a new partitioning is to be computed. A Teuchos::RefCountPtr is used here because a reference to the input object may be held by this object after this constructor completes and returns. | |
| costs | CostDescriber object which allows for user-specified weights of varying types to be provided to the partitioner. | |
| paramlist | Teuchos::ParameterList which will be copied to an internal ParameterList attribute. No reference to this input object is held after this constructor completes. If the ParameterList object contains a sublist named "Zoltan", then the Zoltan library is used to perform the balancing. Also, any parameters in the "Zoltan" sublist will be relayed directly to Zoltan. Refer to the Zoltan users guide for specific parameters that Zoltan recognizes. A couple of important ones are "LB_METHOD" (valid values include "GRAPH", "HYPERGRAPH"), "DEBUG_LEVEL" (valid values are 0 to 10, default is 1), etc. | |
| compute_partitioning_now | Optional argument defaults to true. If true, the method compute_partitioning() will be called before this constructor returns. |
| Isorropia::Epetra::Partitioner::Partitioner | ( | Teuchos::RefCountPtr< const Epetra_RowMatrix > | input_matrix, | |
| const Teuchos::ParameterList & | paramlist, | |||
| bool | compute_partitioning_now = true | |||
| ) |
Constructor that accepts an Epetra_RowMatrix object.
| input_matrix | Matrix object for which a new partitioning is to be computed. A Teuchos::RefCountPtr is used here because a reference to the input object may be held by this object after this constructor completes and returns. | |
| paramlist | Teuchos::ParameterList which will be copied to an internal ParameterList attribute. No reference to this input object is held after this constructor completes. If the ParameterList object contains a sublist named "Zoltan", then the Zoltan library is used to perform the balancing. Also, any parameters in the "Zoltan" sublist will be relayed directly to Zoltan. Refer to the Zoltan users guide for specific parameters that Zoltan recognizes. A couple of important ones are "LB_METHOD" (valid values include "GRAPH", "HYPERGRAPH"), "DEBUG_LEVEL" (valid values are 0 to 10, default is 1), etc. | |
| compute_partitioning_now | Optional argument defaults to true. If true, the method compute_partitioning() will be called before this constructor returns. |
| Isorropia::Epetra::Partitioner::Partitioner | ( | Teuchos::RefCountPtr< const Epetra_RowMatrix > | input_matrix, | |
| Teuchos::RefCountPtr< const Isorropia::CostDescriber > | costs, | |||
| const Teuchos::ParameterList & | paramlist, | |||
| bool | compute_partitioning_now = true | |||
| ) |
Constructor that accepts an Epetra_RowMatrix object and a CostDescriber.
| input_matrix | Matrix object for which a new partitioning is to be computed. A Teuchos::RefCountPtr is used here because a reference to the input object may be held by this object after this constructor completes and returns. | |
| costs | CostDescriber object which allows for user-specified weights of varying types to be provided to the partitioner. | |
| paramlist | Teuchos::ParameterList which will be copied to an internal ParameterList attribute. No reference to this input object is held after this constructor completes. If the ParameterList object contains a sublist named "Zoltan", then the Zoltan library is used to perform the balancing. Also, any parameters in the "Zoltan" sublist will be relayed directly to Zoltan. Refer to the Zoltan users guide for specific parameters that Zoltan recognizes. A couple of important ones are "LB_METHOD" (valid values include "GRAPH", "HYPERGRAPH"), "DEBUG_LEVEL" (valid values are 0 to 10, default is 1), etc. | |
| compute_partitioning_now | Optional argument defaults to true. If true, the method compute_partitioning() will be called before this constructor returns. |
| void Isorropia::Epetra::Partitioner::setParameters | ( | const Teuchos::ParameterList & | paramlist | ) | [virtual] |
Set parameters from a Teuchos::ParameterList object.
The input ParameterList object is copied into an internal ParameterList attribute, and no reference to the input object is held after this function returns. (Thus, the input paramlist object may be altered or destroyed as soon as this method returns.)
If the ParameterList object contains a sublist named "Zoltan", then the Zoltan library is used to perform the balancing. Also, any parameters in the "Zoltan" sublist will be relayed directly to Zoltan. Refer to the Zoltan users guide for specific parameters that Zoltan recognizes. A couple of important ones are "LB_METHOD" (valid values include "GRAPH", "HYPERGRAPH"), "DEBUG_LEVEL" (valid values are 0 to 10, default is 1), etc.
Implements Isorropia::Partitioner.
| void Isorropia::Epetra::Partitioner::compute_partitioning | ( | bool | force_repartitioning = false |
) | [virtual] |
Compute a rebalanced partitioning for the data in the object that this class was constructed with.
| force_repartitioning | Optional argument defaults to false. By default, compute_partitioning() only does anything the first time it is called, and subsequent repeated calls are no-ops. If the user's intent is to re-compute the partitioning (e.g., if parameters or other inputs have been changed), then setting this flag to true will force a new partitioning to be computed. |
Implements Isorropia::Partitioner.
| int Isorropia::Epetra::Partitioner::numElemsInPartition | ( | int | partition | ) | const [virtual] |
Return the number of elements in a given partition.
(Currently only implemented for the case where 'partition' is local.)
Implements Isorropia::Partitioner.
| void Isorropia::Epetra::Partitioner::elemsInPartition | ( | int | partition, | |
| int * | elementList, | |||
| int | len | |||
| ) | const [virtual] |
Fill user-allocated list (of length len) with the global element ids to be located in the given partition.
(Currently only implemented for the case where 'partition' is local.)
Implements Isorropia::Partitioner.