Zoltan2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Public Member Functions | List of all members
Zoltan2::MachineDragonflyRCAForTesting< pcoord_t, part_t > Class Template Reference

A Dragonfly (e.g. Cori, Trinity, Theta) Machine Class for testing only. A more realistic machine should be used for task mapping (i.e. see Zoltan2_MachineDragonflyRCA.hpp). More...

#include <Zoltan2_MachineDragonflyRCAForTesting.hpp>

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

Public Member Functions

 MachineDragonflyRCAForTesting (const Teuchos::Comm< int > &comm)
 Constructor: Dragonfly (e.g. Cori & Trinity) RCA network machine description;. More...
 
virtual bool getMachineExtentWrapArounds (bool *wrap_around) const
 
 MachineDragonflyRCAForTesting (const Teuchos::Comm< int > &comm, const Teuchos::ParameterList &pl_)
 Constructor: Dragonfly (e.g. Cori & Trinity) network machine description;. More...
 
virtual ~MachineDragonflyRCAForTesting ()
 
bool hasMachineCoordinates () const
 
int getMachineDim () const
 
bool getTransformedMachineExtent (int *nxyz) const
 
bool getActualMachineExtent (int *nxyz) const
 
bool getMachineExtent (int *nxyz) const
 
part_t getNumUniqueGroups () const override
 getNumUniqueGroups function return the number of unique Dragonfly network groups in provided allocation. More...
 
bool getGroupCount (part_t *grp_count) const override
 
void printAllocation ()
 
bool getMyTransformedMachineCoordinate (pcoord_t *xyz)
 
bool getMyActualMachineCoordinate (pcoord_t *xyz)
 
bool getMyMachineCoordinate (pcoord_t *xyz)
 
bool getMachineCoordinate (const int rank, pcoord_t *xyz) const
 
bool getMachineCoordinate (const char *nodename, pcoord_t *xyz)
 
bool getAllMachineCoordinatesView (pcoord_t **&allCoords) const
 
virtual bool getHopCount (int rank1, int rank2, pcoord_t &hops) const override
 getHopCount function set hops between rank1 and rank2 return true if coordinates are available More...
 
- Public Member Functions inherited from Zoltan2::Machine< pcoord_t, part_t >
 Machine (const Teuchos::Comm< int > &comm)
 Constructor MachineRepresentation Class. More...
 
virtual ~Machine ()
 
bool hasMachineCoordinates () const
 indicates whether or not the machine has coordinates More...
 
int getMachineDim () const
 returns the dimension (number of coords per node) in the machine More...
 
bool getMachineExtent (int *nxyz) const
 sets the number of unique coordinates in each machine dimension return true if coordinates are available More...
 
bool getMachineExtentWrapArounds (bool *wrap_around) const
 if the machine has a wrap-around tourus link in each dimension. return true if the information is available More...
 
bool getMyMachineCoordinate (pcoord_t *xyz) const
 getMyCoordinate function set the machine coordinate xyz of the current process return true if current process' coordinates are available More...
 
bool getMachineCoordinate (const int rank, pcoord_t *xyz) const
 getCoordinate function set the machine coordinate xyz of any rank process return true if coordinates are available by rank More...
 
bool getMachineCoordinate (const char *nodename, pcoord_t *xyz) const
 getCoordinate function set the machine coordinate xyz of any node by nodename return true if coordinates are available by nodename More...
 
bool getAllMachineCoordinatesView (pcoord_t **allCoords) const
 getProcDim function set the coordinates of all ranks allCoords[i][j], i=0,...,getMachineDim(), j=0,...,getNumRanks(), is the i-th dimensional coordinate for rank j. return true if coordinates are available for all ranks More...
 
int getNumRanks () const
 getNumRanks function return the number of ranks. More...
 
virtual bool getGroupCount (part_t *grp_count) const
 getGroupCount function return the number of ranks in each group (RCA X-dim, e.g. first dim) More...
 

Additional Inherited Members

- Protected Attributes inherited from Zoltan2::Machine< pcoord_t, part_t >
int numRanks
 
int myRank
 

Detailed Description

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

A Dragonfly (e.g. Cori, Trinity, Theta) Machine Class for testing only. A more realistic machine should be used for task mapping (i.e. see Zoltan2_MachineDragonflyRCA.hpp).

Does NOT require RCA library to run.

Definition at line 22 of file Zoltan2_MachineDragonflyRCAForTesting.hpp.

Constructor & Destructor Documentation

template<typename pcoord_t , typename part_t >
Zoltan2::MachineDragonflyRCAForTesting< pcoord_t, part_t >::MachineDragonflyRCAForTesting ( const Teuchos::Comm< int > &  comm)
inline

Constructor: Dragonfly (e.g. Cori & Trinity) RCA network machine description;.

Does not do coord transformation.

Parameters
commCommunication object.

Definition at line 33 of file Zoltan2_MachineDragonflyRCAForTesting.hpp.

template<typename pcoord_t , typename part_t >
Zoltan2::MachineDragonflyRCAForTesting< pcoord_t, part_t >::MachineDragonflyRCAForTesting ( const Teuchos::Comm< int > &  comm,
const Teuchos::ParameterList &  pl_ 
)
inline

Constructor: Dragonfly (e.g. Cori & Trinity) network machine description;.

Does coord transformation if parameter list has a "Machine Optimization Level > 0" parameter set.

Parameters
commCommunication object.
plParameter List

Definition at line 130 of file Zoltan2_MachineDragonflyRCAForTesting.hpp.

template<typename pcoord_t , typename part_t >
virtual Zoltan2::MachineDragonflyRCAForTesting< pcoord_t, part_t >::~MachineDragonflyRCAForTesting ( )
inlinevirtual

Definition at line 304 of file Zoltan2_MachineDragonflyRCAForTesting.hpp.

Member Function Documentation

template<typename pcoord_t , typename part_t >
virtual bool Zoltan2::MachineDragonflyRCAForTesting< pcoord_t, part_t >::getMachineExtentWrapArounds ( bool *  wrap_around) const
inlinevirtual

Definition at line 116 of file Zoltan2_MachineDragonflyRCAForTesting.hpp.

template<typename pcoord_t , typename part_t >
bool Zoltan2::MachineDragonflyRCAForTesting< pcoord_t, part_t >::hasMachineCoordinates ( ) const
inline

Definition at line 329 of file Zoltan2_MachineDragonflyRCAForTesting.hpp.

template<typename pcoord_t , typename part_t >
int Zoltan2::MachineDragonflyRCAForTesting< pcoord_t, part_t >::getMachineDim ( ) const
inline

Definition at line 332 of file Zoltan2_MachineDragonflyRCAForTesting.hpp.

template<typename pcoord_t , typename part_t >
bool Zoltan2::MachineDragonflyRCAForTesting< pcoord_t, part_t >::getTransformedMachineExtent ( int *  nxyz) const
inline

Definition at line 340 of file Zoltan2_MachineDragonflyRCAForTesting.hpp.

template<typename pcoord_t , typename part_t >
bool Zoltan2::MachineDragonflyRCAForTesting< pcoord_t, part_t >::getActualMachineExtent ( int *  nxyz) const
inline

Definition at line 352 of file Zoltan2_MachineDragonflyRCAForTesting.hpp.

template<typename pcoord_t , typename part_t >
bool Zoltan2::MachineDragonflyRCAForTesting< pcoord_t, part_t >::getMachineExtent ( int *  nxyz) const
inline

Definition at line 381 of file Zoltan2_MachineDragonflyRCAForTesting.hpp.

template<typename pcoord_t , typename part_t >
part_t Zoltan2::MachineDragonflyRCAForTesting< pcoord_t, part_t >::getNumUniqueGroups ( ) const
inlineoverridevirtual

getNumUniqueGroups function return the number of unique Dragonfly network groups in provided allocation.

Equals the length of group_count member data, if available, otherwise we consider the whole allocation to be one group.

Reimplemented from Zoltan2::Machine< pcoord_t, part_t >.

Definition at line 391 of file Zoltan2_MachineDragonflyRCAForTesting.hpp.

template<typename pcoord_t , typename part_t >
bool Zoltan2::MachineDragonflyRCAForTesting< pcoord_t, part_t >::getGroupCount ( part_t grp_count) const
inlineoverride

Definition at line 396 of file Zoltan2_MachineDragonflyRCAForTesting.hpp.

template<typename pcoord_t , typename part_t >
void Zoltan2::MachineDragonflyRCAForTesting< pcoord_t, part_t >::printAllocation ( )
inline

Definition at line 410 of file Zoltan2_MachineDragonflyRCAForTesting.hpp.

template<typename pcoord_t , typename part_t >
bool Zoltan2::MachineDragonflyRCAForTesting< pcoord_t, part_t >::getMyTransformedMachineCoordinate ( pcoord_t *  xyz)
inline

Definition at line 448 of file Zoltan2_MachineDragonflyRCAForTesting.hpp.

template<typename pcoord_t , typename part_t >
bool Zoltan2::MachineDragonflyRCAForTesting< pcoord_t, part_t >::getMyActualMachineCoordinate ( pcoord_t *  xyz)
inline

Definition at line 461 of file Zoltan2_MachineDragonflyRCAForTesting.hpp.

template<typename pcoord_t , typename part_t >
bool Zoltan2::MachineDragonflyRCAForTesting< pcoord_t, part_t >::getMyMachineCoordinate ( pcoord_t *  xyz)
inline

Definition at line 505 of file Zoltan2_MachineDragonflyRCAForTesting.hpp.

template<typename pcoord_t , typename part_t >
bool Zoltan2::MachineDragonflyRCAForTesting< pcoord_t, part_t >::getMachineCoordinate ( const int  rank,
pcoord_t *  xyz 
) const
inline

Definition at line 515 of file Zoltan2_MachineDragonflyRCAForTesting.hpp.

template<typename pcoord_t , typename part_t >
bool Zoltan2::MachineDragonflyRCAForTesting< pcoord_t, part_t >::getMachineCoordinate ( const char *  nodename,
pcoord_t *  xyz 
)
inline

Definition at line 531 of file Zoltan2_MachineDragonflyRCAForTesting.hpp.

template<typename pcoord_t , typename part_t >
bool Zoltan2::MachineDragonflyRCAForTesting< pcoord_t, part_t >::getAllMachineCoordinatesView ( pcoord_t **&  allCoords) const
inline

Definition at line 536 of file Zoltan2_MachineDragonflyRCAForTesting.hpp.

template<typename pcoord_t , typename part_t >
virtual bool Zoltan2::MachineDragonflyRCAForTesting< pcoord_t, part_t >::getHopCount ( int  rank1,
int  rank2,
pcoord_t &  hops 
) const
inlineoverridevirtual

getHopCount function set hops between rank1 and rank2 return true if coordinates are available

Reimplemented from Zoltan2::Machine< pcoord_t, part_t >.

Definition at line 549 of file Zoltan2_MachineDragonflyRCAForTesting.hpp.


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