X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/fddfee454784a9895b758165407c57f62152bc6e..5ed37babb2fa9097abe82df299c0aa259ed84d5a:/src/surf/sg_platf.cpp diff --git a/src/surf/sg_platf.cpp b/src/surf/sg_platf.cpp index a1498256a6..db9026a2e5 100644 --- a/src/surf/sg_platf.cpp +++ b/src/surf/sg_platf.cpp @@ -1,4 +1,4 @@ -/* Copyright (c) 2006-2022. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2006-2023. The SimGrid Team. All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ @@ -31,13 +31,9 @@ XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(surf_parse); -namespace simgrid { -namespace kernel { -namespace routing { +namespace simgrid::kernel::routing { xbt::signal on_cluster_creation; -} // namespace routing -} // namespace kernel -} // namespace simgrid +} // namespace simgrid::kernel::routing static simgrid::kernel::routing::ClusterZoneCreationArgs zone_cluster; /* temporary store data for irregular clusters, created with */ @@ -153,7 +149,7 @@ sg_platf_cluster_create_host(const simgrid::kernel::routing::ClusterCreationArgs "(total = %zu). Check the 'radical' parameter in XML", cluster->id.c_str(), id, cluster->radicals.size()); - std::string host_id = std::string(cluster->prefix) + std::to_string(cluster->radicals[id]) + cluster->suffix; + std::string host_id = cluster->prefix + std::to_string(cluster->radicals[id]) + cluster->suffix; XBT_DEBUG("Cluster: creating host=%s speed=%f", host_id.c_str(), cluster->speeds.front()); const simgrid::s4u::Host* host = zone->create_host(host_id, cluster->speeds) ->set_core_count(cluster->core_amount) @@ -174,7 +170,7 @@ sg_platf_cluster_create_loopback(const simgrid::kernel::routing::ClusterCreation "(total = %zu). Check the 'radical' parameter in XML", cluster->id.c_str(), id, cluster->radicals.size()); - std::string link_id = std::string(cluster->id) + "_link_" + std::to_string(cluster->radicals[id]) + "_loopback"; + std::string link_id = cluster->id + "_link_" + std::to_string(cluster->radicals[id]) + "_loopback"; XBT_DEBUG("Cluster: creating loopback link=%s bw=%f", link_id.c_str(), cluster->loopback_bw); simgrid::s4u::Link* loopback = zone->create_link(link_id, cluster->loopback_bw) @@ -190,7 +186,7 @@ static simgrid::s4u::Link* sg_platf_cluster_create_limiter(const simgrid::kernel const std::vector& /*coord*/, unsigned long id) { - std::string link_id = std::string(cluster->id) + "_link_" + std::to_string(id) + "_limiter"; + std::string link_id = cluster->id + "_link_" + std::to_string(id) + "_limiter"; XBT_DEBUG("Cluster: creating limiter link=%s bw=%f", link_id.c_str(), cluster->limiter_link); simgrid::s4u::Link* limiter = zone->create_link(link_id, cluster->limiter_link)->seal(); @@ -244,18 +240,17 @@ static void sg_platf_new_cluster_hierarchical(const simgrid::kernel::routing::Cl static void sg_platf_new_cluster_flat(simgrid::kernel::routing::ClusterCreationArgs* cluster) { auto* zone = simgrid::s4u::create_star_zone(cluster->id); - simgrid::s4u::NetZone const* parent = current_routing ? current_routing->get_iface() : nullptr; - if (parent) + if (const auto* parent = current_routing ? current_routing->get_iface() : nullptr) zone->set_parent(parent); /* set properties */ - for (auto const& elm : cluster->properties) - zone->set_property(elm.first, elm.second); + for (auto const& [key, value] : cluster->properties) + zone->set_property(key, value); /* Make the backbone */ const simgrid::s4u::Link* backbone = nullptr; if ((cluster->bb_bw > 0) || (cluster->bb_lat > 0)) { - std::string bb_name = std::string(cluster->id) + "_backbone"; + std::string bb_name = cluster->id + "_backbone"; XBT_DEBUG(" ", bb_name.c_str(), cluster->bb_bw, cluster->bb_lat); @@ -266,7 +261,7 @@ static void sg_platf_new_cluster_flat(simgrid::kernel::routing::ClusterCreationA } for (int const& i : cluster->radicals) { - std::string host_id = std::string(cluster->prefix) + std::to_string(i) + cluster->suffix; + std::string host_id = cluster->prefix + std::to_string(i) + cluster->suffix; XBT_DEBUG("", host_id.c_str(), cluster->speeds.front()); const auto* host = zone->create_host(host_id, cluster->speeds) @@ -276,7 +271,7 @@ static void sg_platf_new_cluster_flat(simgrid::kernel::routing::ClusterCreationA XBT_DEBUG(""); - std::string link_id = std::string(cluster->id) + "_link_" + std::to_string(i); + std::string link_id = cluster->id + "_link_" + std::to_string(i); XBT_DEBUG("", link_id.c_str(), cluster->bw, cluster->lat); // add a loopback link @@ -296,7 +291,7 @@ static void sg_platf_new_cluster_flat(simgrid::kernel::routing::ClusterCreationA // add a limiter link (shared link to account for maximal bandwidth of the node) const simgrid::s4u::Link* limiter = nullptr; if (cluster->limiter_link > 0) { - std::string limiter_name = std::string(link_id) + "_limiter"; + std::string limiter_name = link_id + "_limiter"; XBT_DEBUG("", limiter_name.c_str(), cluster->limiter_link); limiter = zone->create_link(limiter_name, cluster->limiter_link)->seal(); @@ -325,7 +320,7 @@ static void sg_platf_new_cluster_flat(simgrid::kernel::routing::ClusterCreationA XBT_DEBUG(" "); XBT_DEBUG("", cluster->router_id.c_str()); if (cluster->router_id.empty()) - cluster->router_id = std::string(cluster->prefix) + cluster->id + "_router" + cluster->suffix; + cluster->router_id = cluster->prefix + cluster->id + "_router" + cluster->suffix; auto* router = zone->create_router(cluster->router_id); zone->add_route(router, nullptr, nullptr, nullptr, {}); @@ -591,7 +586,7 @@ void sg_platf_new_hostlink(const simgrid::kernel::routing::HostLinkCreationArgs* zone_cluster.host_links.emplace_back(*hostlink); } -void sg_platf_new_trace(simgrid::kernel::routing::ProfileCreationArgs* args) +void sg_platf_new_trace(const simgrid::kernel::routing::ProfileCreationArgs* args) { simgrid::kernel::profile::Profile* profile; if (not args->file.empty()) { @@ -601,5 +596,5 @@ void sg_platf_new_trace(simgrid::kernel::routing::ProfileCreationArgs* args) args->id.c_str()); profile = simgrid::kernel::profile::ProfileBuilder::from_string(args->id, args->pc_data, args->periodicity); } - traces_set_list.insert({args->id, profile}); + traces_set_list.try_emplace(args->id, profile); }