1#ifndef _ZOLTAN2_MACHINE_HPP_
2#define _ZOLTAN2_MACHINE_HPP_
4#include <Teuchos_Comm.hpp>
5#include <Zoltan2_config.h>
11template <
typename pcoord_t,
typename part_t>
98 virtual bool getHopCount(
int rank1,
int rank2, pcoord_t &hops)
const {
MachineClass Base class for representing machine coordinates, networks, etc.
bool getAllMachineCoordinatesView(pcoord_t **allCoords) const
getProcDim function set the coordinates of all ranks allCoords[i][j], i=0,...,getMachineDim(),...
virtual part_t getNumUniqueGroups() const
getNumUniqueGroups function return the number of unique Dragonfly network groups in provided allocati...
bool getMyMachineCoordinate(pcoord_t *xyz) const
getMyCoordinate function set the machine coordinate xyz of the current process return true if current...
bool getMachineCoordinate(const int rank, pcoord_t *xyz) const
getCoordinate function set the machine coordinate xyz of any rank process return true if coordinates ...
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)
bool getMachineExtent(int *nxyz) const
sets the number of unique coordinates in each machine dimension return true if coordinates are availa...
Machine(const Teuchos::Comm< int > &comm)
Constructor MachineRepresentation Class.
int getNumRanks() const
getNumRanks function return the number of ranks.
int getMachineDim() const
returns the dimension (number of coords per node) in the machine
bool getMachineExtentWrapArounds(bool *wrap_around) const
if the machine has a wrap-around tourus link in each dimension. return true if the information is ava...
bool hasMachineCoordinates() const
indicates whether or not the machine has coordinates
bool getMachineCoordinate(const char *nodename, pcoord_t *xyz) const
getCoordinate function set the machine coordinate xyz of any node by nodename return true if coordina...
virtual bool getHopCount(int rank1, int rank2, pcoord_t &hops) const
getHopCount function set hops between rank1 and rank2 return true if coordinates are available
Created by mbenlioglu on Aug 31, 2020.
SparseMatrixAdapter_t::part_t part_t