Zoltan2
Public Member Functions | Public Attributes | Protected Attributes
Zoltan2::CommunicationModel< part_t, pcoord_t > Class Template Reference

CommunicationModel Base Class that performs mapping between the coordinate partitioning result. More...

#include <Zoltan2_TaskMapping.hpp>

Inheritance diagram for Zoltan2::CommunicationModel< part_t, pcoord_t >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 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 ()
virtual double getProcDistance (int procId1, int procId2) const =0
virtual void getMapping (int myRank, RCP< const Environment > env, ArrayRCP< part_t > &proc_to_task_xadj, ArrayRCP< part_t > &proc_to_task_adj, ArrayRCP< part_t > &task_to_proc) const =0
 Function is called whenever nprocs > no_task. Function returns only the subset of processors that are closest to each other.

Public Attributes

part_t no_procs
part_t no_tasks

Protected Attributes

double commCost

Detailed Description

template<typename part_t, typename pcoord_t>
class Zoltan2::CommunicationModel< part_t, pcoord_t >

CommunicationModel Base Class that performs mapping between the coordinate partitioning result.

Definition at line 594 of file Zoltan2_TaskMapping.hpp.


Constructor & Destructor Documentation

template<typename part_t , typename pcoord_t >
Zoltan2::CommunicationModel< part_t, pcoord_t >::CommunicationModel ( ) [inline]

Definition at line 601 of file Zoltan2_TaskMapping.hpp.

template<typename part_t , typename pcoord_t >
Zoltan2::CommunicationModel< part_t, pcoord_t >::CommunicationModel ( part_t  no_procs_,
part_t  no_tasks_ 
) [inline]

Definition at line 602 of file Zoltan2_TaskMapping.hpp.

template<typename part_t , typename pcoord_t >
virtual Zoltan2::CommunicationModel< part_t, pcoord_t >::~CommunicationModel ( ) [inline, virtual]

Definition at line 606 of file Zoltan2_TaskMapping.hpp.


Member Function Documentation

template<typename part_t , typename pcoord_t >
part_t Zoltan2::CommunicationModel< part_t, pcoord_t >::getNProcs ( ) const [inline]

Definition at line 607 of file Zoltan2_TaskMapping.hpp.

template<typename part_t , typename pcoord_t >
part_t Zoltan2::CommunicationModel< part_t, pcoord_t >::getNTasks ( ) const [inline]

Definition at line 610 of file Zoltan2_TaskMapping.hpp.

template<typename part_t , typename pcoord_t >
void Zoltan2::CommunicationModel< part_t, pcoord_t >::calculateCommunicationCost ( part_t task_to_proc,
part_t task_communication_xadj,
part_t task_communication_adj,
pcoord_t *  task_communication_edge_weight 
) [inline]

Definition at line 615 of file Zoltan2_TaskMapping.hpp.

template<typename part_t , typename pcoord_t >
double Zoltan2::CommunicationModel< part_t, pcoord_t >::getCommunicationCostMetric ( ) [inline]

Definition at line 655 of file Zoltan2_TaskMapping.hpp.

template<typename part_t , typename pcoord_t >
virtual double Zoltan2::CommunicationModel< part_t, pcoord_t >::getProcDistance ( int  procId1,
int  procId2 
) const [pure virtual]
template<typename part_t , typename pcoord_t >
virtual void Zoltan2::CommunicationModel< part_t, pcoord_t >::getMapping ( int  myRank,
RCP< const Environment env,
ArrayRCP< part_t > &  proc_to_task_xadj,
ArrayRCP< part_t > &  proc_to_task_adj,
ArrayRCP< part_t > &  task_to_proc 
) const [pure virtual]

Function is called whenever nprocs > no_task. Function returns only the subset of processors that are closest to each other.

Parameters:
proc_to_task_xadjholds the pointer to the task array
proc_to_task_xadjholds the indices of tasks wrt to proc_to_task_xadj array.
task_to_procholds the processors mapped to tasks.

Implemented in Zoltan2::CoordinateCommunicationModel< pcoord_t, tcoord_t, part_t >.


Member Data Documentation

template<typename part_t , typename pcoord_t >
double Zoltan2::CommunicationModel< part_t, pcoord_t >::commCost [protected]

Definition at line 596 of file Zoltan2_TaskMapping.hpp.

template<typename part_t , typename pcoord_t >
part_t Zoltan2::CommunicationModel< part_t, pcoord_t >::no_procs

Definition at line 599 of file Zoltan2_TaskMapping.hpp.

template<typename part_t , typename pcoord_t >
part_t Zoltan2::CommunicationModel< part_t, pcoord_t >::no_tasks

Definition at line 600 of file Zoltan2_TaskMapping.hpp.


The documentation for this class was generated from the following file: