- link_new(xbt_strdup("__loopback__"),
- 498000000, NULL, 0.000015, NULL,
- SURF_RESOURCE_ON, NULL, SURF_LINK_FATPIPE, NULL));
+ net_link_new(xbt_strdup("__loopback__"),
+ 498000000, NULL, 0.000015, NULL,
+ SURF_RESOURCE_ON, NULL,
+ SURF_LINK_FATPIPE, NULL),
+ net_get_link_latency);
+}
+
+
+
+/************************************************************************/
+/* New model based on LV08 and experimental results of MPI ping-pongs */
+/************************************************************************/
+void surf_network_model_init_SMPI(const char *filename)
+{
+
+ if (surf_network_model)
+ return;
+ surf_network_model_init_internal();
+ latency_factor_callback = &smpi_latency_factor;
+ bandwidth_factor_callback = &smpi_bandwidth_factor;
+ bandwidth_constraint_callback = &smpi_bandwidth_constraint;
+ net_define_callbacks(filename);
+ xbt_dynar_push(model_list, &surf_network_model);
+ network_solve = lmm_solve;
+
+ xbt_cfg_setdefault_double(_surf_cfg_set, "network/sender_gap", 10e-6);
+ xbt_cfg_setdefault_double(_surf_cfg_set, "network/weight_S", 8775);
+
+ update_model_description(surf_network_model_description,
+ "SMPI", surf_network_model);