Class used to contain simulated mesh load.
More...
#include <loadBalanceSimulator.h>
|
| double | getCost () const |
| | Function to get the total cost.
|
| |
| int | getMeshCount () const |
| | Return the number of base meshes.
|
| |
| size_t | getMethod () const |
| | Function to get the current ranks in the load balance.
|
| |
| std::vector< double > | getRankCost () const |
| | Get the cost per rank ( # of elements * relative weight )
|
| |
| std::vector< int > | getRanks () const |
| | Function to get the ranks for the mesh.
|
| |
| std::vector< int > | getRanks (int i) const |
| | Function to get the ranks for the ith submesh.
|
| |
| const auto & | getSubmeshes () const |
| | Return the submeshes.
|
| |
| | loadBalanceSimulator () |
| | Empty constructor.
|
| |
| | loadBalanceSimulator (const std::vector< loadBalanceSimulator > &meshes, int method=2, const std::string &name="") |
| | Default constructor.
|
| |
| | loadBalanceSimulator (double cost, int maxProc=0, const std::string &name="") |
| | Default constructor.
|
| |
| | loadBalanceSimulator (std::shared_ptr< const AMP::Database > params) |
| | Default constructor.
|
| |
| int | maxProcs () const |
| | Function to change the ranks.
|
| |
| int | nRanks () const |
| | Return the number of assigned ranks.
|
| |
| void | print (uint8_t detail=0, uint8_t indent=0) |
| | Print the mesh hierarchy.
|
| |
| void | setProcs (int N_ranks) |
| | Function to change the ranks.
|
| |
Class used to contain simulated mesh load.
This structure provides info that can be used to simulate loading a mesh, and checking the resulting load balance
Definition at line 16 of file loadBalanceSimulator.h.
◆ loadBalanceSimulator() [1/4]
| AMP::Mesh::loadBalanceSimulator::loadBalanceSimulator |
( |
std::shared_ptr< const AMP::Database > |
params | ) |
|
Default constructor.
This will simulate creating a new load balance
- Parameters
-
| params | Input parameters for the mesh that will be used |
◆ loadBalanceSimulator() [2/4]
| AMP::Mesh::loadBalanceSimulator::loadBalanceSimulator |
( |
double |
cost, |
|
|
int |
maxProc = 0, |
|
|
const std::string & |
name = "" |
|
) |
| |
Default constructor.
This will simulate creating a new load balance
- Parameters
-
| cost | The cost of the mesh (# of elements) |
| maxProc | The maximum number of processors (0: no limit) |
| name | The mesh name |
◆ loadBalanceSimulator() [3/4]
| AMP::Mesh::loadBalanceSimulator::loadBalanceSimulator |
( |
const std::vector< loadBalanceSimulator > & |
meshes, |
|
|
int |
method = 2, |
|
|
const std::string & |
name = "" |
|
) |
| |
Default constructor.
This will simulate creating a new load balance
- Parameters
-
| meshes | The list of meshes |
| method | The load balance method |
| name | The mesh name |
◆ loadBalanceSimulator() [4/4]
| AMP::Mesh::loadBalanceSimulator::loadBalanceSimulator |
( |
| ) |
|
◆ addRank()
| void AMP::Mesh::loadBalanceSimulator::addRank |
( |
| ) |
|
|
private |
◆ addRankCost()
| void AMP::Mesh::loadBalanceSimulator::addRankCost |
( |
std::vector< double > & |
cost | ) |
const |
|
private |
◆ addRanks()
| void AMP::Mesh::loadBalanceSimulator::addRanks |
( |
int |
N | ) |
|
|
private |
◆ copyRanks()
◆ getCost()
| double AMP::Mesh::loadBalanceSimulator::getCost |
( |
| ) |
const |
|
inline |
◆ getMeshCount()
| int AMP::Mesh::loadBalanceSimulator::getMeshCount |
( |
| ) |
const |
Return the number of base meshes.
◆ getMethod()
| size_t AMP::Mesh::loadBalanceSimulator::getMethod |
( |
| ) |
const |
|
inline |
◆ getRankCost()
| std::vector< double > AMP::Mesh::loadBalanceSimulator::getRankCost |
( |
| ) |
const |
Get the cost per rank ( # of elements * relative weight )
◆ getRanks() [1/2]
| std::vector< int > AMP::Mesh::loadBalanceSimulator::getRanks |
( |
| ) |
const |
Function to get the ranks for the mesh.
◆ getRanks() [2/2]
| std::vector< int > AMP::Mesh::loadBalanceSimulator::getRanks |
( |
int |
i | ) |
const |
|
inline |
◆ getSubmeshes()
| const auto & AMP::Mesh::loadBalanceSimulator::getSubmeshes |
( |
| ) |
const |
|
inline |
◆ loadBalance()
| void AMP::Mesh::loadBalanceSimulator::loadBalance |
( |
int |
, |
|
|
std::vector< int > & |
N |
|
) |
| |
|
private |
◆ maxProcs()
| int AMP::Mesh::loadBalanceSimulator::maxProcs |
( |
| ) |
const |
|
inline |
◆ nRanks()
| int AMP::Mesh::loadBalanceSimulator::nRanks |
( |
| ) |
const |
|
inline |
◆ print()
| void AMP::Mesh::loadBalanceSimulator::print |
( |
uint8_t |
detail = 0, |
|
|
uint8_t |
indent = 0 |
|
) |
| |
Print the mesh hierarchy.
This function will print the load balance and mesh hierarchy
- Parameters
-
| detail | The details on what to print (bit mask) 0: Auto determine the level of info to print 1: Print summary info only 3: Print summary + rank info 5: Print summary + mesh info 6: Print summary + rank + mesh info |
| indent | Number of spaces to indent the printing |
◆ setProcs()
| void AMP::Mesh::loadBalanceSimulator::setProcs |
( |
int |
N_ranks | ) |
|
Function to change the ranks.
◆ setRanks() [1/2]
| void AMP::Mesh::loadBalanceSimulator::setRanks |
( |
int |
begin, |
|
|
int |
end |
|
) |
| |
|
private |
◆ setRanks() [2/2]
| void AMP::Mesh::loadBalanceSimulator::setRanks |
( |
int |
rank | ) |
|
|
inlineprivate |
◆ d_allEqual
| bool AMP::Mesh::loadBalanceSimulator::d_allEqual |
|
private |
◆ d_begin
| int AMP::Mesh::loadBalanceSimulator::d_begin |
|
private |
◆ d_cost
| double AMP::Mesh::loadBalanceSimulator::d_cost |
|
private |
◆ d_end
| int AMP::Mesh::loadBalanceSimulator::d_end |
|
private |
◆ d_max_procs
| int AMP::Mesh::loadBalanceSimulator::d_max_procs |
|
private |
◆ d_maxCostRank
| double AMP::Mesh::loadBalanceSimulator::d_maxCostRank |
|
private |
◆ d_method
| int AMP::Mesh::loadBalanceSimulator::d_method |
|
private |
◆ d_name
| std::string AMP::Mesh::loadBalanceSimulator::d_name |
|
private |
◆ d_submeshes
The documentation for this class was generated from the following file: