Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Merge remote-tracking branch 'origin/master'
[simgrid.git] / src / surf / surf.c
index 3980bb2..203feba 100644 (file)
@@ -135,7 +135,7 @@ s_surf_model_description_t surf_network_model_description[] = {
 #ifdef HAVE_NS3
   {"NS3",
    "Network pseudo-model using the NS3 tcp model instead of an analytic model",
-       surf_network_model_init_NS3},
+  surf_network_model_init_NS3},
 #endif
   {"Reno",
    "Model from Steven H. Low using lagrange_solve instead of lmm_solve (experts only; check the code for more info).",
@@ -368,6 +368,12 @@ static XBT_INLINE void routing_asr_host_free(void *p)
   xbt_free(elm);
 }
 
+void sg_version(int *ver_major,int *ver_minor,int *ver_patch) {
+  *ver_major = SIMGRID_VERSION_MAJOR;
+  *ver_minor = SIMGRID_VERSION_MINOR;
+  *ver_patch = SIMGRID_VERSION_PATCH;
+}
+
 void surf_init(int *argc, char **argv)
 {
   XBT_DEBUG("Create all Libs");
@@ -377,11 +383,11 @@ void surf_init(int *argc, char **argv)
   storage_lib = xbt_lib_new();
   storage_type_lib = xbt_lib_new();
 
-  XBT_DEBUG("ADD ROUTING LEVEL");
+  XBT_DEBUG("Add routing levels");
   ROUTING_HOST_LEVEL = xbt_lib_add_level(host_lib,routing_asr_host_free);
   ROUTING_ASR_LEVEL  = xbt_lib_add_level(as_router_lib,routing_asr_host_free);
 
-  XBT_DEBUG("ADD SURF LEVELS");
+  XBT_DEBUG("Add SURF levels");
   SURF_CPU_LEVEL = xbt_lib_add_level(host_lib,surf_resource_free);
   SURF_WKS_LEVEL = xbt_lib_add_level(host_lib,surf_resource_free);
   SURF_LINK_LEVEL = xbt_lib_add_level(link_lib,surf_resource_free);
@@ -525,6 +531,8 @@ double surf_solve(double max_date)
     /* parallel version */
 #ifdef CONTEXT_THREADS
     xbt_parmap_apply(surf_parmap, (void_f_pvoid_t) surf_share_resources, model_list);
+#else
+    xbt_die("Asked to run in parallel, but no thread at hand...");
 #endif
   }
   else {
@@ -568,8 +576,8 @@ double surf_solve(double max_date)
     }
 
     if (next_event_date == -1.0) {
-       XBT_DEBUG("no next TRACE event. Stop searching for it");
-       break;
+      XBT_DEBUG("no next TRACE event. Stop searching for it");
+      break;
     }
 
     if ((min != -1.0) && (next_event_date > NOW + min)) break;
@@ -599,7 +607,7 @@ double surf_solve(double max_date)
    * This may cause an infinite loop if one cpu has a trace with periodicity = 0 and the other a trace with periodicity > 0.
    * The options are: all traces with same periodicity(0 or >0) or we need to change the way how the events are managed */
   if (min == -1.0) {
-       XBT_DEBUG("No next event at all. Bail out now.");
+  XBT_DEBUG("No next event at all. Bail out now.");
     return -1.0;
   }