boost::split(dimensions_str, topo_parameters, boost::is_any_of(","));
std::vector<unsigned int> dimensions;
- if (not dimensions_str.empty()) {
- /* We are in a torus cluster
- * Parse attribute dimensions="dim1,dim2,dim3,...,dimN" and save them into a vector.
- * Additionally, we need to know how many ranks we have in total
- */
- std::transform(begin(dimensions_str), end(dimensions_str), std::back_inserter(dimensions),
- [](const std::string& s) { return std::stoi(s); });
- }
+ /* We are in a torus cluster
+ * Parse attribute dimensions="dim1,dim2,dim3,...,dimN" and save them into a vector.
+ * Additionally, we need to know how many ranks we have in total
+ */
+ std::transform(begin(dimensions_str), end(dimensions_str), std::back_inserter(dimensions),
+ [](const std::string& s) { return std::stoi(s); });
+
return dimensions;
}
if (src->id() == dst->id() && has_loopback()) {
resource::LinkImpl* uplink = get_uplink_from(node_pos(src->id()));
- route->link_list_.push_back(uplink);
- if (lat)
- *lat += uplink->get_latency();
+ add_link_latency(route->link_list_, uplink, lat);
return;
}
else
lnk = get_downlink_to(linkOffset);
- route->link_list_.push_back(lnk);
- if (lat)
- *lat += lnk->get_latency();
+ add_link_latency(route->link_list_, lnk, lat);
current_node = next_node;
}