CoordinateModelInput Class that performs mapping between the coordinate partitioning result and mpi ranks base on the coordinate results and mpi physical coordinates.
More...
|
| CoordinateCommunicationModel () |
|
virtual | ~CoordinateCommunicationModel () |
|
| CoordinateCommunicationModel (int pcoord_dim_, pcoord_t **pcoords_, int tcoord_dim_, tcoord_t **tcoords_, part_t no_procs_, part_t no_tasks_, int *machine_extent_, bool *machine_extent_wrap_around_, const MachineRepresentation< pcoord_t, part_t > *machine_=NULL) |
| Class Constructor: More...
|
|
void | setPartArraySize (int psize) |
|
void | setPartArray (part_t *pNo) |
|
void | getClosestSubset (part_t *proc_permutation, part_t nprocs, part_t ntasks) const |
| Function is called whenever nprocs > no_task. Function returns only the subset of processors that are closest to each other. More...
|
|
virtual double | getProcDistance (int procId1, int procId2) const |
|
void | update_visit_order (part_t *visitOrder, part_t n, int &_u_umpa_seed, part_t rndm) |
|
virtual void | getMapping (int myRank, const RCP< const Environment > &env, ArrayRCP< part_t > &rcp_proc_to_task_xadj, ArrayRCP< part_t > &rcp_proc_to_task_adj, ArrayRCP< part_t > &rcp_task_to_proc) const |
| Function is called whenever nprocs > no_task. Function returns only the subset of processors that are closest to each other. More...
|
|
| CommunicationModel () |
|
| CommunicationModel (part_t no_procs_, part_t no_tasks_) |
|
virtual | ~CommunicationModel () |
|
part_t | getNProcs () const |
|
part_t | getNTasks () const |
|
void | calculateCommunicationCost (part_t *task_to_proc, part_t *task_communication_xadj, part_t *task_communication_adj, pcoord_t *task_communication_edge_weight) |
|
double | getCommunicationCostMetric () |
|
template<typename pcoord_t, typename tcoord_t, typename part_t>
class Zoltan2::CoordinateCommunicationModel< pcoord_t, tcoord_t, part_t >
CoordinateModelInput Class that performs mapping between the coordinate partitioning result and mpi ranks base on the coordinate results and mpi physical coordinates.
Definition at line 956 of file Zoltan2_TaskMapping.hpp.
template<typename pcoord_t, typename tcoord_t, typename part_t>
virtual void Zoltan2::CoordinateCommunicationModel< pcoord_t, tcoord_t, part_t >::getMapping |
( |
int |
myRank, |
|
|
const RCP< const Environment > & |
env, |
|
|
ArrayRCP< part_t > & |
rcp_proc_to_task_xadj, |
|
|
ArrayRCP< part_t > & |
rcp_proc_to_task_adj, |
|
|
ArrayRCP< part_t > & |
rcp_task_to_proc |
|
) |
| const |
|
inlinevirtual |
Function is called whenever nprocs > no_task. Function returns only the subset of processors that are closest to each other.
- Parameters
-
proc_to_task_xadj | holds the pointer to the task array |
proc_to_task_xadj | holds the indices of tasks wrt to proc_to_task_xadj array. |
task_to_proc | holds the processors mapped to tasks. |
Implements Zoltan2::CommunicationModel< part_t, pcoord_t >.
Definition at line 1146 of file Zoltan2_TaskMapping.hpp.