Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Emit a warning when a link's latency is smaller than surf/precision.
authorArnaud Giersch <arnaud.giersch@univ-fcomte.fr>
Tue, 28 Jan 2020 13:33:40 +0000 (14:33 +0100)
committerArnaud Giersch <arnaud.giersch@univ-fcomte.fr>
Tue, 28 Jan 2020 13:34:17 +0000 (14:34 +0100)
Contributes to FG issue simgrid/simgrid#46.

src/surf/sg_platf.cpp

index 43a1913..8f89621 100644 (file)
@@ -116,6 +116,13 @@ simgrid::kernel::routing::NetPoint* sg_platf_new_router(const std::string& name,
 
 static void sg_platf_new_link(const simgrid::kernel::routing::LinkCreationArgs* link, const std::string& link_name)
 {
+  static double last_warned_latency = sg_surf_precision;
+  if (link->latency != 0.0 && link->latency < last_warned_latency) {
+    XBT_WARN("Latency for link %s is smaller than surf/precision (%g < %g)."
+             " For more accuracy, consider setting \"--cfg=surf/precision:%g\".",
+             link_name.c_str(), link->latency, sg_surf_precision, link->latency);
+    last_warned_latency = link->latency;
+  }
   simgrid::kernel::resource::LinkImpl* l =
       surf_network_model->create_link(link_name, link->bandwidths, link->latency, link->policy);