]> AND Public Git Repository - simgrid.git/blobdiff - src/surf/network_constant.c
Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Speed up update_action_state AND generic_maxmin_share for sleep actions with no maxim...
[simgrid.git] / src / surf / network_constant.c
index cf35b48dcc2e9db0d1f2d96f4591b7986d354649..36664cc3a9a3055b181ae68870d08881e370a428 100644 (file)
@@ -199,7 +199,7 @@ static void update_actions_state(double now, double delta)
 
 static void update_resource_state(void *id,
                                  tmgr_trace_event_t event_type,
-                                 double value)
+                                 double value, double time)
 {
   DIE_IMPOSSIBLE;
 }
@@ -224,13 +224,19 @@ static surf_action_t communicate(void *src, void *dst, double size,
   action->generic_action.model_type =
       (surf_model_t) surf_network_model;
   action->suspended = 0;
-  action->generic_action.state_set =
+
+  action->latency = random_generate(random_latency);
+  action->lat_init = action->latency;
+
+  if(action->latency<=0.0)
+    action->generic_action.state_set =
+      surf_network_model->common_public->states.done_action_set;
+  else
+    action->generic_action.state_set =
       surf_network_model->common_public->states.running_action_set;
 
   xbt_swag_insert(action, action->generic_action.state_set);
 
-  action->latency = random_generate(random_latency);
-  action->lat_init = action->latency;
 
   XBT_OUT;
 
@@ -381,7 +387,7 @@ static void surf_network_model_init_internal(void)
   network_card_set = xbt_dict_new();
 
   if(!random_latency) 
-    random_latency = random_new(RAND, 0.0, 1.0, .125, .034);
+    random_latency = random_new(RAND, 100, 0.0, 1.0, .125, .034);
 }
 
 void surf_network_model_init_Constant(const char *filename)