A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
small cosmetics advised by sonar
[simgrid.git]
/
src
/
kernel
/
routing
/
FatTreeZone.cpp
diff --git
a/src/kernel/routing/FatTreeZone.cpp
b/src/kernel/routing/FatTreeZone.cpp
index
97c57d3
..
7a0222a
100644
(file)
--- a/
src/kernel/routing/FatTreeZone.cpp
+++ b/
src/kernel/routing/FatTreeZone.cpp
@@
-21,12
+21,12
@@
namespace simgrid {
namespace kernel {
namespace routing {
namespace kernel {
namespace routing {
-
AsClusterFatTree::AsClusterFatTree(As* father, const char* name) : AsCluster
(father, name)
+
FatTreeZone::FatTreeZone(NetZone* father, const char* name) : ClusterZone
(father, name)
{
XBT_DEBUG("Creating a new fat tree.");
}
{
XBT_DEBUG("Creating a new fat tree.");
}
-
AsClusterFatTree::~AsClusterFatTre
e()
+
FatTreeZone::~FatTreeZon
e()
{
for (unsigned int i = 0; i < this->nodes_.size(); i++) {
delete this->nodes_[i];
{
for (unsigned int i = 0; i < this->nodes_.size(); i++) {
delete this->nodes_[i];
@@
-36,7
+36,7
@@
AsClusterFatTree::~AsClusterFatTree()
}
}
}
}
-bool
AsClusterFatTre
e::isInSubTree(FatTreeNode* root, FatTreeNode* node)
+bool
FatTreeZon
e::isInSubTree(FatTreeNode* root, FatTreeNode* node)
{
XBT_DEBUG("Is %d(%u,%u) in the sub tree of %d(%u,%u) ?", node->id, node->level, node->position, root->id, root->level,
root->position);
{
XBT_DEBUG("Is %d(%u,%u) in the sub tree of %d(%u,%u) ?", node->id, node->level, node->position, root->id, root->level,
root->position);
@@
-57,7
+57,7
@@
bool AsClusterFatTree::isInSubTree(FatTreeNode* root, FatTreeNode* node)
return true;
}
return true;
}
-void
AsClusterFatTre
e::getLocalRoute(NetCard* src, NetCard* dst, sg_platf_route_cbarg_t into, double* latency)
+void
FatTreeZon
e::getLocalRoute(NetCard* src, NetCard* dst, sg_platf_route_cbarg_t into, double* latency)
{
if (dst->isRouter() || src->isRouter())
{
if (dst->isRouter() || src->isRouter())
@@
-129,7
+129,7
@@
void AsClusterFatTree::getLocalRoute(NetCard* src, NetCard* dst, sg_platf_route_
/* This function makes the assumption that parse_specific_arguments() and
* addNodes() have already been called
*/
/* This function makes the assumption that parse_specific_arguments() and
* addNodes() have already been called
*/
-void
AsClusterFatTre
e::seal()
+void
FatTreeZon
e::seal()
{
if (this->levels_ == 0) {
return;
{
if (this->levels_ == 0) {
return;
@@
-175,7
+175,7
@@
void AsClusterFatTree::seal()
}
}
}
}
-int
AsClusterFatTre
e::connectNodeToParents(FatTreeNode* node)
+int
FatTreeZon
e::connectNodeToParents(FatTreeNode* node)
{
std::vector<FatTreeNode*>::iterator currentParentNode = this->nodes_.begin();
int connectionsNumber = 0;
{
std::vector<FatTreeNode*>::iterator currentParentNode = this->nodes_.begin();
int connectionsNumber = 0;
@@
-199,7
+199,7
@@
int AsClusterFatTree::connectNodeToParents(FatTreeNode* node)
return connectionsNumber;
}
return connectionsNumber;
}
-bool
AsClusterFatTre
e::areRelated(FatTreeNode* parent, FatTreeNode* child)
+bool
FatTreeZon
e::areRelated(FatTreeNode* parent, FatTreeNode* child)
{
std::stringstream msgBuffer;
{
std::stringstream msgBuffer;
@@
-231,11
+231,10
@@
bool AsClusterFatTree::areRelated(FatTreeNode* parent, FatTreeNode* child)
return true;
}
return true;
}
-void
AsClusterFatTre
e::generateSwitches()
+void
FatTreeZon
e::generateSwitches()
{
XBT_DEBUG("Generating switches.");
this->nodesByLevel_.resize(this->levels_ + 1, 0);
{
XBT_DEBUG("Generating switches.");
this->nodesByLevel_.resize(this->levels_ + 1, 0);
- unsigned int nodesRequired = 0;
// Take care of the number of nodes by level
this->nodesByLevel_[0] = 1;
// Take care of the number of nodes by level
this->nodesByLevel_[0] = 1;
@@
-259,7
+258,6
@@
void AsClusterFatTree::generateSwitches()
nodesInThisLevel *= this->lowerLevelNodesNumber_[j];
this->nodesByLevel_[i + 1] = nodesInThisLevel;
nodesInThisLevel *= this->lowerLevelNodesNumber_[j];
this->nodesByLevel_[i + 1] = nodesInThisLevel;
- nodesRequired += nodesInThisLevel;
}
// Create the switches
}
// Create the switches
@@
-278,7
+276,7
@@
void AsClusterFatTree::generateSwitches()
}
}
}
}
-void
AsClusterFatTre
e::generateLabels()
+void
FatTreeZon
e::generateLabels()
{
XBT_DEBUG("Generating labels.");
// TODO : check if nodesByLevel and nodes are filled
{
XBT_DEBUG("Generating labels.");
// TODO : check if nodesByLevel and nodes are filled
@@
-324,7
+322,7
@@
void AsClusterFatTree::generateLabels()
}
}
}
}
-int
AsClusterFatTre
e::getLevelPosition(const unsigned int level)
+int
FatTreeZon
e::getLevelPosition(const unsigned int level)
{
xbt_assert(level <= this->levels_, "The impossible did happen. Yet again.");
int tempPosition = 0;
{
xbt_assert(level <= this->levels_, "The impossible did happen. Yet again.");
int tempPosition = 0;
@@
-335,7
+333,7
@@
int AsClusterFatTree::getLevelPosition(const unsigned int level)
return tempPosition;
}
return tempPosition;
}
-void
AsClusterFatTre
e::addProcessingNode(int id)
+void
FatTreeZon
e::addProcessingNode(int id)
{
using std::make_pair;
static int position = 0;
{
using std::make_pair;
static int position = 0;
@@
-347,7
+345,7
@@
void AsClusterFatTree::addProcessingNode(int id)
this->nodes_.push_back(newNode);
}
this->nodes_.push_back(newNode);
}
-void
AsClusterFatTre
e::addLink(FatTreeNode* parent, unsigned int parentPort, FatTreeNode* child, unsigned int childPort)
+void
FatTreeZon
e::addLink(FatTreeNode* parent, unsigned int parentPort, FatTreeNode* child, unsigned int childPort)
{
FatTreeLink* newLink;
newLink = new FatTreeLink(this->cluster_, child, parent);
{
FatTreeLink* newLink;
newLink = new FatTreeLink(this->cluster_, child, parent);
@@
-359,7
+357,7
@@
void AsClusterFatTree::addLink(FatTreeNode* parent, unsigned int parentPort, Fat
this->links_.push_back(newLink);
}
this->links_.push_back(newLink);
}
-void
AsClusterFatTre
e::parse_specific_arguments(sg_platf_cluster_cbarg_t cluster)
+void
FatTreeZon
e::parse_specific_arguments(sg_platf_cluster_cbarg_t cluster)
{
std::vector<std::string> parameters;
std::vector<std::string> tmp;
{
std::vector<std::string> parameters;
std::vector<std::string> tmp;
@@
-406,7
+404,7
@@
void AsClusterFatTree::parse_specific_arguments(sg_platf_cluster_cbarg_t cluster
this->cluster_ = cluster;
}
this->cluster_ = cluster;
}
-void
AsClusterFatTre
e::generateDotFile(const std::string& filename) const
+void
FatTreeZon
e::generateDotFile(const std::string& filename) const
{
std::ofstream file;
file.open(filename, std::ios::out | std::ios::trunc);
{
std::ofstream file;
file.open(filename, std::ios::out | std::ios::trunc);
@@
-440,7
+438,7
@@
FatTreeNode::FatTreeNode(sg_platf_cluster_cbarg_t cluster, int id, int level, in
linkTemplate.id = bprintf("limiter_%d", id);
sg_platf_new_link(&linkTemplate);
this->limiterLink = Link::byName(linkTemplate.id);
linkTemplate.id = bprintf("limiter_%d", id);
sg_platf_new_link(&linkTemplate);
this->limiterLink = Link::byName(linkTemplate.id);
- free(
(void*)linkTemplate.id
);
+ free(
const_cast<char*>(linkTemplate.id)
);
}
if (cluster->loopback_bw || cluster->loopback_lat) {
memset(&linkTemplate, 0, sizeof(linkTemplate));
}
if (cluster->loopback_bw || cluster->loopback_lat) {
memset(&linkTemplate, 0, sizeof(linkTemplate));
@@
-450,7
+448,7
@@
FatTreeNode::FatTreeNode(sg_platf_cluster_cbarg_t cluster, int id, int level, in
linkTemplate.id = bprintf("loopback_%d", id);
sg_platf_new_link(&linkTemplate);
this->loopback = Link::byName(linkTemplate.id);
linkTemplate.id = bprintf("loopback_%d", id);
sg_platf_new_link(&linkTemplate);
this->loopback = Link::byName(linkTemplate.id);
- free(
(void*)linkTemplate.id
);
+ free(
const_cast<char*>(linkTemplate.id)
);
}
}
}
}
@@
-465,22
+463,18
@@
FatTreeLink::FatTreeLink(sg_platf_cluster_cbarg_t cluster, FatTreeNode* downNode
linkTemplate.policy = cluster->sharing_policy; // sthg to do with that ?
linkTemplate.id = bprintf("link_from_%d_to_%d_%d", downNode->id, upNode->id, uniqueId);
sg_platf_new_link(&linkTemplate);
linkTemplate.policy = cluster->sharing_policy; // sthg to do with that ?
linkTemplate.id = bprintf("link_from_%d_to_%d_%d", downNode->id, upNode->id, uniqueId);
sg_platf_new_link(&linkTemplate);
- Link* link;
- std::string tmpID;
+
if (cluster->sharing_policy == SURF_LINK_FULLDUPLEX) {
if (cluster->sharing_policy == SURF_LINK_FULLDUPLEX) {
- tmpID = std::string(linkTemplate.id) + "_UP";
- link = Link::byName(tmpID.c_str());
- this->upLink = link; // check link?
+ std::string tmpID = std::string(linkTemplate.id) + "_UP";
+ this->upLink = Link::byName(tmpID.c_str()); // check link?
tmpID = std::string(linkTemplate.id) + "_DOWN";
tmpID = std::string(linkTemplate.id) + "_DOWN";
- link = Link::byName(tmpID.c_str());
- this->downLink = link; // check link ?
+ this->downLink = Link::byName(tmpID.c_str()); // check link ?
} else {
} else {
- link = Link::byName(linkTemplate.id);
- this->upLink = link;
- this->downLink = link;
+ this->upLink = Link::byName(linkTemplate.id);
+ this->downLink = this->upLink;
}
}
+ free(const_cast<char*>(linkTemplate.id));
uniqueId++;
uniqueId++;
- free((void*)linkTemplate.id);
}
}
}
}
}
}