Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Fix initialization order.
[simgrid.git] / src / surf / network_smpi.cpp
index 10d2e62..ee6e415 100644 (file)
@@ -71,8 +71,9 @@ void surf_network_model_init_SMPI(void)
   if (surf_network_model)
     return;
   surf_network_model = new NetworkSmpiModel();
-
+  net_define_callbacks();
   xbt_dynar_push(model_list, &surf_network_model);
+  //network_solve = lmm_solve;
 
   xbt_cfg_setdefault_double(_sg_cfg_set, "network/sender_gap", 10e-6);
   xbt_cfg_setdefault_double(_sg_cfg_set, "network/weight_S", 8775);
@@ -87,7 +88,7 @@ void NetworkSmpiModel::gapAppend(double size, const NetworkCm02LinkLmmPtr link,
 
   if (sg_sender_gap > 0.0) {
     if (!gap_lookup) {
-      gap_lookup = xbt_dict_new();
+      gap_lookup = xbt_dict_new_homogeneous(NULL);
     }
     fifo = (xbt_fifo_t) xbt_dict_get_or_null(gap_lookup, src);
     action->m_senderGap = 0.0;
@@ -139,7 +140,7 @@ void NetworkSmpiModel::gapRemove(ActionLmmPtr lmm_action)
   }
 }
 
-double NetworkSmpiModel::latencyFactor(double size)
+double NetworkSmpiModel::bandwidthFactor(double size)
 {
   if (!smpi_bw_factor)
     smpi_bw_factor =
@@ -150,16 +151,16 @@ double NetworkSmpiModel::latencyFactor(double size)
   double current=1.0;
   xbt_dynar_foreach(smpi_bw_factor, iter, fact) {
     if (size <= fact.factor) {
-      XBT_DEBUG("%lf <= %ld return %f", size, fact.factor, current);
+      XBT_DEBUG("%f <= %ld return %f", size, fact.factor, current);
       return current;
     }else
       current=fact.value;
   }
-  XBT_DEBUG("%lf > %ld return %f", size, fact.factor, current);
+  XBT_DEBUG("%f > %ld return %f", size, fact.factor, current);
 
   return current;
 }
-double NetworkSmpiModel::bandwidthFactor(double size)
+double NetworkSmpiModel::latencyFactor(double size)
 {
   if (!smpi_lat_factor)
     smpi_lat_factor =
@@ -170,12 +171,12 @@ double NetworkSmpiModel::bandwidthFactor(double size)
   double current=1.0;
   xbt_dynar_foreach(smpi_lat_factor, iter, fact) {
     if (size <= fact.factor) {
-      XBT_DEBUG("%lf <= %ld return %f", size, fact.factor, current);
+      XBT_DEBUG("%f <= %ld return %f", size, fact.factor, current);
       return current;
     }else
       current=fact.value;
   }
-  XBT_DEBUG("%lf > %ld return %f", size, fact.factor, current);
+  XBT_DEBUG("%f > %ld return %f", size, fact.factor, current);
 
   return current;
 }