Go to the source code of this file.
Data Structures | |
class | TopoManager |
Functions | |
void | TopoManager_init () |
basic initialization | |
void | TopoManager_init (int numpes) |
void | TopoManager_setNumThreads (int t) |
void | TopoManager_reset () |
redo the initialization | |
void | TopoManager_free () |
free the current occupant | |
void | TopoManager_printAllocation (FILE *fp) |
print allocation | |
void | TopoManager_getDimCount (int *ndims) |
get the number physical dimensions | |
void | TopoManager_getDims (int *dims) |
get the length of dimensions, last one is core/process/thread count | |
void | TopoManager_getCoordinates (int rank, int *coords) |
get coordinates of a logical node | |
void | TopoManager_getPeCoordinates (int rank, int *coords) |
get coordinate of a PE, includes an additional dim | |
void | TopoManager_getRanks (int *rank_cnt, int *ranks, int *coords) |
get ranks of logical nodes at a coordinate | |
void | TopoManager_getPeRank (int *rank, int *coords) |
get rank of PE at a coordinate | |
void | TopoManager_getHopsBetweenPeRanks (int pe1, int pe2, int *hops) |
get hops betweens Pes | |
void | TopoManager_createPartitions (int scheme, int numparts, int *nodeMap) |
topoaware partition using scheme s |
This would be the top level interface for all topology managers we will write for different machines (Cray, IBM ... for tori, meshes ...) Current we have functionality for Blue Gene, Cray XT, BigSim and non-topo machines.
Definition in file TopoManager.h.
void TopoManager_init | ( | ) |
basic initialization
Definition at line 418 of file TopoManager.C.
References bgq_topo_free(), bgq_topo_init(), bgq_topo_reset(), CmiAbort(), CmiCreateLock(), CmiLock(), CmiNodeFirst(), CmiNodeOf(), CmiUnlock(), TopoManager::coordinatesToRank(), coords, craynid_free(), craynid_init(), craynid_reset(), dims, TopoManager::getDimNA(), TopoManager::getDimNB(), TopoManager::getDimNC(), TopoManager::getDimND(), TopoManager::getDimNE(), TopoManager::getDimNT(), TopoManager::getDimNX(), TopoManager::getDimNY(), TopoManager::getDimNZ(), getHilbertList(), TopoManager::getHopsBetweenRanks(), getPlanarList(), getRecursiveBisectionList(), ndims, numparts, TopoManager::printAllocation(), rank, ranks, TopoManager::rankToCoordinates(), TopoManager_createPartitions(), TopoManager_free(), TopoManager_getCoordinates(), TopoManager_getDimCount(), TopoManager_getDims(), TopoManager_getHopsBetweenPeRanks(), TopoManager_getPeCoordinates(), TopoManager_getPeRank(), TopoManager_getRanks(), TopoManager_init(), TopoManager_printAllocation(), TopoManager_reset(), and TopoManager_setNumThreads().
Referenced by _initCharm(), create_topoaware_partitions(), main(), and TopoManager_init().
void TopoManager_init | ( | int | numpes | ) |
void TopoManager_setNumThreads | ( | int | t | ) |
void TopoManager_reset | ( | ) |
redo the initialization
Referenced by _initCharm(), and TopoManager_init().
void TopoManager_free | ( | ) |
free the current occupant
Referenced by create_topoaware_partitions(), main(), and TopoManager_init().
void TopoManager_printAllocation | ( | FILE * | fp | ) |
print allocation
Referenced by _initCharm(), main(), and TopoManager_init().
void TopoManager_getDimCount | ( | int * | ndims | ) |
get the number physical dimensions
Referenced by getHilbertList(), getPlanarList(), main(), and TopoManager_init().
void TopoManager_getDims | ( | int * | dims | ) |
get the length of dimensions, last one is core/process/thread count
Referenced by getHilbertList(), getPlanarList(), main(), TopoManager_init(), and topo::impl::TreeBoundingBoxOn3dTorus< Iterator >::translateCoordinates().
get coordinates of a logical node
Referenced by TopoManager_init().
get coordinate of a PE, includes an additional dim
Referenced by topo::topo::SpanningTreeStrategy_3dTorus_minBytesHops< Iterator, SpanningTreeVertex >::buildNextGen(), main(), TopoManager_init(), and topo::writeAllocTopoManager().
get ranks of logical nodes at a coordinate
Referenced by getHilbertList(), getPlanarList(), and TopoManager_init().
get rank of PE at a coordinate
Referenced by main(), and TopoManager_init().
get hops betweens Pes
Referenced by LBCommTable::GetCommInfo(), and TopoManager_init().
topoaware partition using scheme s
Referenced by create_topoaware_partitions(), and TopoManager_init().