Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Corrections to the code that handles the errors in the comms in SMX network [Cristian]
authormquinson <mquinson@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Mon, 5 Oct 2009 12:27:21 +0000 (12:27 +0000)
committermquinson <mquinson@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Mon, 5 Oct 2009 12:27:21 +0000 (12:27 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@6702 48e7efb5-ca39-0410-a469-dd3cf9ba447f

examples/msg/masterslave/masterslave.tesh
examples/msg/masterslave/masterslave_cas01_im.tesh [new file with mode: 0644]
examples/msg/masterslave/masterslave_cpu_ti.tesh
examples/msg/masterslave/masterslave_failure.tesh
examples/msg/masterslave/masterslave_forwarder.tesh
src/include/simix/simix.h
src/simix/private.h
src/simix/smx_network.c

index a842fb7..d760543 100644 (file)
@@ -9,23 +9,23 @@ $ $SG_TEST_EXENV masterslave/masterslave_forwarder$EXEEXT ${srcdir:=.}/small_pla
 > [Tremblay:master:(1) 0.165962] [msg_test/INFO] Sending "Task_1" to "Fafard"
 > [Jupiter:slave:(3) 0.165962] [msg_test/INFO] Received "Task_0"
 > [Jupiter:slave:(3) 0.165962] [msg_test/INFO] Processing "Task_0"
-> [Tremblay:master:(1) 0.384115] [msg_test/INFO] Sent
-> [Tremblay:master:(1) 0.384115] [msg_test/INFO] Sending "Task_2" to "Ginette"
 > [Fafard:slave:(4) 0.384115] [msg_test/INFO] Received "Task_1"
 > [Fafard:slave:(4) 0.384115] [msg_test/INFO] Processing "Task_1"
-> [Tremblay:master:(1) 0.524575] [msg_test/INFO] Sent
-> [Tremblay:master:(1) 0.524575] [msg_test/INFO] Sending "Task_3" to "Bourassa"
+> [Tremblay:master:(1) 0.384115] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 0.384115] [msg_test/INFO] Sending "Task_2" to "Ginette"
 > [Ginette:slave:(5) 0.524575] [msg_test/INFO] Received "Task_2"
 > [Ginette:slave:(5) 0.524575] [msg_test/INFO] Processing "Task_2"
+> [Tremblay:master:(1) 0.524575] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 0.524575] [msg_test/INFO] Sending "Task_3" to "Bourassa"
+> [Bourassa:slave:(6) 0.740447] [msg_test/INFO] Received "Task_3"
+> [Bourassa:slave:(6) 0.740447] [msg_test/INFO] Processing "Task_3"
 > [Tremblay:master:(1) 0.740447] [msg_test/INFO] Sent
 > [Tremblay:master:(1) 0.740447] [msg_test/INFO] Sending "Task_4" to "Tremblay"
 > [Tremblay:master:(1) 0.740447] [msg_test/INFO] Hey ! It's me ! :)
-> [Bourassa:slave:(6) 0.740447] [msg_test/INFO] Received "Task_3"
-> [Bourassa:slave:(6) 0.740447] [msg_test/INFO] Processing "Task_3"
-> [Tremblay:master:(1) 0.742786] [msg_test/INFO] Sent
-> [Tremblay:master:(1) 0.742786] [msg_test/INFO] Sending "Task_5" to "Jupiter"
 > [Tremblay:slave:(2) 0.742786] [msg_test/INFO] Received "Task_4"
 > [Tremblay:slave:(2) 0.742786] [msg_test/INFO] Processing "Task_4"
+> [Tremblay:master:(1) 0.742786] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 0.742786] [msg_test/INFO] Sending "Task_5" to "Jupiter"
 > [Jupiter:slave:(3) 0.821304] [msg_test/INFO] "Task_0" done
 > [Tremblay:master:(1) 0.987266] [msg_test/INFO] Sent
 > [Tremblay:master:(1) 0.987266] [msg_test/INFO] Sending "Task_6" to "Fafard"
@@ -50,18 +50,18 @@ $ $SG_TEST_EXENV masterslave/masterslave_forwarder$EXEEXT ${srcdir:=.}/small_pla
 > [Tremblay:master:(1) 1.987417] [msg_test/INFO] Hey ! It's me ! :)
 > [Bourassa:slave:(6) 1.987417] [msg_test/INFO] Received "Task_8"
 > [Bourassa:slave:(6) 1.987417] [msg_test/INFO] Processing "Task_8"
-> [Tremblay:master:(1) 1.989756] [msg_test/INFO] Sent
-> [Tremblay:master:(1) 1.989756] [msg_test/INFO] Sending "Task_10" to "Jupiter"
 > [Tremblay:slave:(2) 1.989756] [msg_test/INFO] Received "Task_9"
 > [Tremblay:slave:(2) 1.989756] [msg_test/INFO] Processing "Task_9"
-> [Tremblay:master:(1) 2.155718] [msg_test/INFO] Sent
-> [Tremblay:master:(1) 2.155718] [msg_test/INFO] Sending "Task_11" to "Fafard"
+> [Tremblay:master:(1) 1.989756] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 1.989756] [msg_test/INFO] Sending "Task_10" to "Jupiter"
 > [Jupiter:slave:(3) 2.155718] [msg_test/INFO] Received "Task_10"
 > [Jupiter:slave:(3) 2.155718] [msg_test/INFO] Processing "Task_10"
-> [Tremblay:master:(1) 2.373871] [msg_test/INFO] Sent
-> [Tremblay:master:(1) 2.373871] [msg_test/INFO] Sending "Task_12" to "Ginette"
+> [Tremblay:master:(1) 2.155718] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 2.155718] [msg_test/INFO] Sending "Task_11" to "Fafard"
 > [Fafard:slave:(4) 2.373871] [msg_test/INFO] Received "Task_11"
 > [Fafard:slave:(4) 2.373871] [msg_test/INFO] Processing "Task_11"
+> [Tremblay:master:(1) 2.373871] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 2.373871] [msg_test/INFO] Sending "Task_12" to "Ginette"
 > [Tremblay:slave:(2) 2.499466] [msg_test/INFO] "Task_9" done
 > [Ginette:slave:(5) 2.727230] [msg_test/INFO] "Task_7" done
 > [Jupiter:slave:(3) 2.811060] [msg_test/INFO] "Task_10" done
@@ -76,18 +76,18 @@ $ $SG_TEST_EXENV masterslave/masterslave_forwarder$EXEEXT ${srcdir:=.}/small_pla
 > [Tremblay:master:(1) 3.234387] [msg_test/INFO] Hey ! It's me ! :)
 > [Bourassa:slave:(6) 3.234387] [msg_test/INFO] Received "Task_13"
 > [Bourassa:slave:(6) 3.234387] [msg_test/INFO] Processing "Task_13"
-> [Tremblay:master:(1) 3.236726] [msg_test/INFO] Sent
-> [Tremblay:master:(1) 3.236726] [msg_test/INFO] Sending "Task_15" to "Jupiter"
 > [Tremblay:slave:(2) 3.236726] [msg_test/INFO] Received "Task_14"
 > [Tremblay:slave:(2) 3.236726] [msg_test/INFO] Processing "Task_14"
-> [Tremblay:master:(1) 3.402688] [msg_test/INFO] Sent
-> [Tremblay:master:(1) 3.402688] [msg_test/INFO] Sending "Task_16" to "Fafard"
+> [Tremblay:master:(1) 3.236726] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 3.236726] [msg_test/INFO] Sending "Task_15" to "Jupiter"
 > [Jupiter:slave:(3) 3.402688] [msg_test/INFO] Received "Task_15"
 > [Jupiter:slave:(3) 3.402688] [msg_test/INFO] Processing "Task_15"
-> [Tremblay:master:(1) 3.620841] [msg_test/INFO] Sent
-> [Tremblay:master:(1) 3.620841] [msg_test/INFO] Sending "Task_17" to "Ginette"
+> [Tremblay:master:(1) 3.402688] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 3.402688] [msg_test/INFO] Sending "Task_16" to "Fafard"
 > [Fafard:slave:(4) 3.620841] [msg_test/INFO] Received "Task_16"
 > [Fafard:slave:(4) 3.620841] [msg_test/INFO] Processing "Task_16"
+> [Tremblay:master:(1) 3.620841] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 3.620841] [msg_test/INFO] Sending "Task_17" to "Ginette"
 > [Tremblay:slave:(2) 3.746436] [msg_test/INFO] "Task_14" done
 > [Ginette:slave:(5) 3.898788] [msg_test/INFO] "Task_12" done
 > [Tremblay:master:(1) 4.039247] [msg_test/INFO] Sent
@@ -102,10 +102,10 @@ $ $SG_TEST_EXENV masterslave/masterslave_forwarder$EXEEXT ${srcdir:=.}/small_pla
 > [Tremblay:master:(1) 4.481357] [msg_test/INFO] Hey ! It's me ! :)
 > [Bourassa:slave:(6) 4.481357] [msg_test/INFO] Received "Task_18"
 > [Bourassa:slave:(6) 4.481357] [msg_test/INFO] Processing "Task_18"
-> [Tremblay:master:(1) 4.483696] [msg_test/INFO] Sent
-> [Tremblay:master:(1) 4.483696] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
 > [Tremblay:slave:(2) 4.483696] [msg_test/INFO] Received "Task_19"
 > [Tremblay:slave:(2) 4.483696] [msg_test/INFO] Processing "Task_19"
+> [Tremblay:master:(1) 4.483696] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 4.483696] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
 > [Jupiter:slave:(3) 4.498896] [msg_test/INFO] Received "finalize"
 > [Jupiter:slave:(3) 4.498896] [msg_test/INFO] I'm done. See you!
 > [Fafard:slave:(4) 4.519447] [msg_test/INFO] Received "finalize"
@@ -117,7 +117,7 @@ $ $SG_TEST_EXENV masterslave/masterslave_forwarder$EXEEXT ${srcdir:=.}/small_pla
 > [Bourassa:slave:(6) 5.512455] [msg_test/INFO] "Task_18" done
 > [Bourassa:slave:(6) 5.532791] [msg_test/INFO] Received "finalize"
 > [Bourassa:slave:(6) 5.532791] [msg_test/INFO] I'm done. See you!
-> [Tremblay:master:(1) 5.532947] [msg_test/INFO] Goodbye now!
 > [Tremblay:slave:(2) 5.532947] [msg_test/INFO] Received "finalize"
 > [Tremblay:slave:(2) 5.532947] [msg_test/INFO] I'm done. See you!
+> [Tremblay:master:(1) 5.532947] [msg_test/INFO] Goodbye now!
 > [5.532947] [msg_test/INFO] Simulation time 5.53295
diff --git a/examples/msg/masterslave/masterslave_cas01_im.tesh b/examples/msg/masterslave/masterslave_cas01_im.tesh
new file mode 100644 (file)
index 0000000..918d6bd
--- /dev/null
@@ -0,0 +1,506 @@
+#! ./tesh
+
+p Testing a simple master/slave example application
+
+$ $SG_TEST_EXENV masterslave/masterslave_forwarder$EXEEXT ${srcdir:=.}/small_platform.xml ${srcdir:=.}/masterslave/deployment_masterslave.xml --cfg=cpu_model:Cas01_IM
+> [0.000000] [xbt_cfg/INFO] Configuration change: Set 'cpu_model' to 'Cas01_IM'
+> [0.000000] [surf_config/INFO] Switching workstation model to compound since you changed the network and/or cpu model(s)
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Got 5 slaves and 20 tasks to process
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Sending "Task_0" to "Jupiter"
+> [Tremblay:master:(1) 0.165962] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 0.165962] [msg_test/INFO] Sending "Task_1" to "Fafard"
+> [Jupiter:slave:(3) 0.165962] [msg_test/INFO] Received "Task_0"
+> [Jupiter:slave:(3) 0.165962] [msg_test/INFO] Processing "Task_0"
+> [Fafard:slave:(4) 0.384115] [msg_test/INFO] Received "Task_1"
+> [Fafard:slave:(4) 0.384115] [msg_test/INFO] Processing "Task_1"
+> [Tremblay:master:(1) 0.384115] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 0.384115] [msg_test/INFO] Sending "Task_2" to "Ginette"
+> [Ginette:slave:(5) 0.524575] [msg_test/INFO] Received "Task_2"
+> [Ginette:slave:(5) 0.524575] [msg_test/INFO] Processing "Task_2"
+> [Tremblay:master:(1) 0.524575] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 0.524575] [msg_test/INFO] Sending "Task_3" to "Bourassa"
+> [Bourassa:slave:(6) 0.740447] [msg_test/INFO] Received "Task_3"
+> [Bourassa:slave:(6) 0.740447] [msg_test/INFO] Processing "Task_3"
+> [Tremblay:master:(1) 0.740447] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 0.740447] [msg_test/INFO] Sending "Task_4" to "Tremblay"
+> [Tremblay:master:(1) 0.740447] [msg_test/INFO] Hey ! It's me ! :)
+> [Tremblay:slave:(2) 0.742786] [msg_test/INFO] Received "Task_4"
+> [Tremblay:slave:(2) 0.742786] [msg_test/INFO] Processing "Task_4"
+> [Tremblay:master:(1) 0.742786] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 0.742786] [msg_test/INFO] Sending "Task_5" to "Jupiter"
+> [Jupiter:slave:(3) 0.821304] [msg_test/INFO] "Task_0" done
+> [Tremblay:master:(1) 0.987266] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 0.987266] [msg_test/INFO] Sending "Task_6" to "Fafard"
+> [Jupiter:slave:(3) 0.987266] [msg_test/INFO] Received "Task_5"
+> [Jupiter:slave:(3) 0.987266] [msg_test/INFO] Processing "Task_5"
+> [Fafard:slave:(4) 1.039457] [msg_test/INFO] "Task_1" done
+> [Tremblay:slave:(2) 1.252495] [msg_test/INFO] "Task_4" done
+> [Tremblay:master:(1) 1.257610] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 1.257610] [msg_test/INFO] Sending "Task_7" to "Ginette"
+> [Fafard:slave:(4) 1.257610] [msg_test/INFO] Received "Task_6"
+> [Fafard:slave:(4) 1.257610] [msg_test/INFO] Processing "Task_6"
+> [Ginette:slave:(5) 1.555672] [msg_test/INFO] "Task_2" done
+> [Jupiter:slave:(3) 1.642608] [msg_test/INFO] "Task_5" done
+> [Tremblay:master:(1) 1.696132] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 1.696132] [msg_test/INFO] Sending "Task_8" to "Bourassa"
+> [Ginette:slave:(5) 1.696132] [msg_test/INFO] Received "Task_7"
+> [Ginette:slave:(5) 1.696132] [msg_test/INFO] Processing "Task_7"
+> [Bourassa:slave:(6) 1.771545] [msg_test/INFO] "Task_3" done
+> [Fafard:slave:(4) 1.912953] [msg_test/INFO] "Task_6" done
+> [Tremblay:master:(1) 1.987417] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 1.987417] [msg_test/INFO] Sending "Task_9" to "Tremblay"
+> [Tremblay:master:(1) 1.987417] [msg_test/INFO] Hey ! It's me ! :)
+> [Bourassa:slave:(6) 1.987417] [msg_test/INFO] Received "Task_8"
+> [Bourassa:slave:(6) 1.987417] [msg_test/INFO] Processing "Task_8"
+> [Tremblay:slave:(2) 1.989756] [msg_test/INFO] Received "Task_9"
+> [Tremblay:slave:(2) 1.989756] [msg_test/INFO] Processing "Task_9"
+> [Tremblay:master:(1) 1.989756] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 1.989756] [msg_test/INFO] Sending "Task_10" to "Jupiter"
+> [Jupiter:slave:(3) 2.155718] [msg_test/INFO] Received "Task_10"
+> [Jupiter:slave:(3) 2.155718] [msg_test/INFO] Processing "Task_10"
+> [Tremblay:master:(1) 2.155718] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 2.155718] [msg_test/INFO] Sending "Task_11" to "Fafard"
+> [Fafard:slave:(4) 2.373871] [msg_test/INFO] Received "Task_11"
+> [Fafard:slave:(4) 2.373871] [msg_test/INFO] Processing "Task_11"
+> [Tremblay:master:(1) 2.373871] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 2.373871] [msg_test/INFO] Sending "Task_12" to "Ginette"
+> [Tremblay:slave:(2) 2.499466] [msg_test/INFO] "Task_9" done
+> [Ginette:slave:(5) 2.727230] [msg_test/INFO] "Task_7" done
+> [Jupiter:slave:(3) 2.811060] [msg_test/INFO] "Task_10" done
+> [Tremblay:master:(1) 2.867690] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 2.867690] [msg_test/INFO] Sending "Task_13" to "Bourassa"
+> [Ginette:slave:(5) 2.867690] [msg_test/INFO] Received "Task_12"
+> [Ginette:slave:(5) 2.867690] [msg_test/INFO] Processing "Task_12"
+> [Bourassa:slave:(6) 3.018515] [msg_test/INFO] "Task_8" done
+> [Fafard:slave:(4) 3.029213] [msg_test/INFO] "Task_11" done
+> [Tremblay:master:(1) 3.234387] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 3.234387] [msg_test/INFO] Sending "Task_14" to "Tremblay"
+> [Tremblay:master:(1) 3.234387] [msg_test/INFO] Hey ! It's me ! :)
+> [Bourassa:slave:(6) 3.234387] [msg_test/INFO] Received "Task_13"
+> [Bourassa:slave:(6) 3.234387] [msg_test/INFO] Processing "Task_13"
+> [Tremblay:slave:(2) 3.236726] [msg_test/INFO] Received "Task_14"
+> [Tremblay:slave:(2) 3.236726] [msg_test/INFO] Processing "Task_14"
+> [Tremblay:master:(1) 3.236726] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 3.236726] [msg_test/INFO] Sending "Task_15" to "Jupiter"
+> [Jupiter:slave:(3) 3.402688] [msg_test/INFO] Received "Task_15"
+> [Jupiter:slave:(3) 3.402688] [msg_test/INFO] Processing "Task_15"
+> [Tremblay:master:(1) 3.402688] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 3.402688] [msg_test/INFO] Sending "Task_16" to "Fafard"
+> [Fafard:slave:(4) 3.620841] [msg_test/INFO] Received "Task_16"
+> [Fafard:slave:(4) 3.620841] [msg_test/INFO] Processing "Task_16"
+> [Tremblay:master:(1) 3.620841] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 3.620841] [msg_test/INFO] Sending "Task_17" to "Ginette"
+> [Tremblay:slave:(2) 3.746436] [msg_test/INFO] "Task_14" done
+> [Ginette:slave:(5) 3.898788] [msg_test/INFO] "Task_12" done
+> [Tremblay:master:(1) 4.039247] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 4.039247] [msg_test/INFO] Sending "Task_18" to "Bourassa"
+> [Ginette:slave:(5) 4.039247] [msg_test/INFO] Received "Task_17"
+> [Ginette:slave:(5) 4.039247] [msg_test/INFO] Processing "Task_17"
+> [Jupiter:slave:(3) 4.058030] [msg_test/INFO] "Task_15" done
+> [Bourassa:slave:(6) 4.265485] [msg_test/INFO] "Task_13" done
+> [Fafard:slave:(4) 4.276183] [msg_test/INFO] "Task_16" done
+> [Tremblay:master:(1) 4.481357] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 4.481357] [msg_test/INFO] Sending "Task_19" to "Tremblay"
+> [Tremblay:master:(1) 4.481357] [msg_test/INFO] Hey ! It's me ! :)
+> [Bourassa:slave:(6) 4.481357] [msg_test/INFO] Received "Task_18"
+> [Bourassa:slave:(6) 4.481357] [msg_test/INFO] Processing "Task_18"
+> [Tremblay:slave:(2) 4.483696] [msg_test/INFO] Received "Task_19"
+> [Tremblay:slave:(2) 4.483696] [msg_test/INFO] Processing "Task_19"
+> [Tremblay:master:(1) 4.483696] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 4.483696] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
+> [Jupiter:slave:(3) 4.498896] [msg_test/INFO] Received "finalize"
+> [Jupiter:slave:(3) 4.498896] [msg_test/INFO] I'm done. See you!
+> [Fafard:slave:(4) 4.519447] [msg_test/INFO] Received "finalize"
+> [Fafard:slave:(4) 4.519447] [msg_test/INFO] I'm done. See you!
+> [Tremblay:slave:(2) 4.993406] [msg_test/INFO] "Task_19" done
+> [Ginette:slave:(5) 5.070345] [msg_test/INFO] "Task_17" done
+> [Ginette:slave:(5) 5.083577] [msg_test/INFO] Received "finalize"
+> [Ginette:slave:(5) 5.083577] [msg_test/INFO] I'm done. See you!
+> [Bourassa:slave:(6) 5.512455] [msg_test/INFO] "Task_18" done
+> [Bourassa:slave:(6) 5.532791] [msg_test/INFO] Received "finalize"
+> [Bourassa:slave:(6) 5.532791] [msg_test/INFO] I'm done. See you!
+> [Tremblay:slave:(2) 5.532947] [msg_test/INFO] Received "finalize"
+> [Tremblay:slave:(2) 5.532947] [msg_test/INFO] I'm done. See you!
+> [Tremblay:master:(1) 5.532947] [msg_test/INFO] Goodbye now!
+> [5.532947] [msg_test/INFO] Simulation time 5.53295
+
+p Testing a master/slave example application with a forwarder module
+
+$ $SG_TEST_EXENV masterslave/masterslave_forwarder$EXEEXT ${srcdir:=.}/msg_platform.xml ${srcdir:=.}/masterslave/deployment_masterslave_forwarder.xml --cfg=cpu_model:Cas01_IM
+> [0.000000] [xbt_cfg/INFO] Configuration change: Set 'cpu_model' to 'Cas01_IM'
+> [0.000000] [surf_config/INFO] Switching workstation model to compound since you changed the network and/or cpu model(s)
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO] Got 5 slaves and 20 tasks to process
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO] Sending "Task_0" to "iRMX"
+> [Jacquelin:master:(1) 4.772530] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 4.772530] [msg_test/INFO] Sending "Task_1" to "Casavant"
+> [iRMX:slave:(4) 4.772530] [msg_test/INFO] Received "Task_0"
+> [iRMX:slave:(4) 4.772530] [msg_test/INFO] Processing "Task_0"
+> [iRMX:slave:(4) 4.845345] [msg_test/INFO] "Task_0" done
+> [Casavant:forwarder:(3) 6.900351] [msg_test/INFO] Received "Task_1"
+> [Casavant:forwarder:(3) 6.900351] [msg_test/INFO] Sending "Task_1" to "Robert"
+> [Jacquelin:master:(1) 6.900351] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 6.900351] [msg_test/INFO] Sending "Task_2" to "Bousquet"
+> [Bousquet:slave:(5) 8.491392] [msg_test/INFO] Received "Task_2"
+> [Bousquet:slave:(5) 8.491392] [msg_test/INFO] Processing "Task_2"
+> [Jacquelin:master:(1) 8.491392] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 8.491392] [msg_test/INFO] Sending "Task_3" to "Soucy"
+> [Bousquet:slave:(5) 8.607896] [msg_test/INFO] "Task_2" done
+> [Robert:slave:(10) 9.260549] [msg_test/INFO] Received "Task_1"
+> [Robert:slave:(10) 9.260549] [msg_test/INFO] Processing "Task_1"
+> [Robert:slave:(10) 9.296956] [msg_test/INFO] "Task_1" done
+> [Soucy:slave:(6) 10.755127] [msg_test/INFO] Received "Task_3"
+> [Soucy:slave:(6) 10.755127] [msg_test/INFO] Processing "Task_3"
+> [Jacquelin:master:(1) 10.755127] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 10.755127] [msg_test/INFO] Sending "Task_4" to "Jackson"
+> [Soucy:slave:(6) 10.791535] [msg_test/INFO] "Task_3" done
+> [Jackson:forwarder:(2) 12.090242] [msg_test/INFO] Received "Task_4"
+> [Jackson:forwarder:(2) 12.090242] [msg_test/INFO] Sending "Task_4" to "Kuenning"
+> [Jacquelin:master:(1) 12.090242] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 12.090242] [msg_test/INFO] Sending "Task_5" to "iRMX"
+> [Kuenning:slave:(7) 12.173866] [msg_test/INFO] Received "Task_4"
+> [Kuenning:slave:(7) 12.173866] [msg_test/INFO] Processing "Task_4"
+> [Kuenning:slave:(7) 12.232118] [msg_test/INFO] "Task_4" done
+> [iRMX:slave:(4) 16.862772] [msg_test/INFO] Received "Task_5"
+> [iRMX:slave:(4) 16.862772] [msg_test/INFO] Processing "Task_5"
+> [Jacquelin:master:(1) 16.862772] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 16.862772] [msg_test/INFO] Sending "Task_6" to "Casavant"
+> [iRMX:slave:(4) 16.935587] [msg_test/INFO] "Task_5" done
+> [Casavant:forwarder:(3) 18.990593] [msg_test/INFO] Received "Task_6"
+> [Casavant:forwarder:(3) 18.990593] [msg_test/INFO] Sending "Task_6" to "Sirois"
+> [Jacquelin:master:(1) 18.990593] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 18.990593] [msg_test/INFO] Sending "Task_7" to "Bousquet"
+> [Sirois:slave:(11) 19.793293] [msg_test/INFO] Received "Task_6"
+> [Sirois:slave:(11) 19.793293] [msg_test/INFO] Processing "Task_6"
+> [Sirois:slave:(11) 19.836983] [msg_test/INFO] "Task_6" done
+> [Bousquet:slave:(5) 20.581634] [msg_test/INFO] Received "Task_7"
+> [Bousquet:slave:(5) 20.581634] [msg_test/INFO] Processing "Task_7"
+> [Jacquelin:master:(1) 20.581634] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 20.581634] [msg_test/INFO] Sending "Task_8" to "Soucy"
+> [Bousquet:slave:(5) 20.698138] [msg_test/INFO] "Task_7" done
+> [Soucy:slave:(6) 22.845369] [msg_test/INFO] Received "Task_8"
+> [Soucy:slave:(6) 22.845369] [msg_test/INFO] Processing "Task_8"
+> [Jacquelin:master:(1) 22.845369] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 22.845369] [msg_test/INFO] Sending "Task_9" to "Jackson"
+> [Soucy:slave:(6) 22.881777] [msg_test/INFO] "Task_8" done
+> [Jackson:forwarder:(2) 24.180485] [msg_test/INFO] Received "Task_9"
+> [Jackson:forwarder:(2) 24.180485] [msg_test/INFO] Sending "Task_9" to "Browne"
+> [Jacquelin:master:(1) 24.180485] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 24.180485] [msg_test/INFO] Sending "Task_10" to "iRMX"
+> [Browne:slave:(8) 27.009931] [msg_test/INFO] Received "Task_9"
+> [Browne:slave:(8) 27.009931] [msg_test/INFO] Processing "Task_9"
+> [Browne:slave:(8) 27.046339] [msg_test/INFO] "Task_9" done
+> [iRMX:slave:(4) 28.953014] [msg_test/INFO] Received "Task_10"
+> [iRMX:slave:(4) 28.953014] [msg_test/INFO] Processing "Task_10"
+> [Jacquelin:master:(1) 28.953014] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 28.953014] [msg_test/INFO] Sending "Task_11" to "Casavant"
+> [iRMX:slave:(4) 29.025830] [msg_test/INFO] "Task_10" done
+> [Casavant:forwarder:(3) 31.080835] [msg_test/INFO] Received "Task_11"
+> [Casavant:forwarder:(3) 31.080835] [msg_test/INFO] Sending "Task_11" to "Monique"
+> [Jacquelin:master:(1) 31.080835] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 31.080835] [msg_test/INFO] Sending "Task_12" to "Bousquet"
+> [Monique:slave:(12) 32.472434] [msg_test/INFO] Received "Task_11"
+> [Monique:slave:(12) 32.472434] [msg_test/INFO] Processing "Task_11"
+> [Monique:slave:(12) 32.516124] [msg_test/INFO] "Task_11" done
+> [Bousquet:slave:(5) 32.671876] [msg_test/INFO] Received "Task_12"
+> [Bousquet:slave:(5) 32.671876] [msg_test/INFO] Processing "Task_12"
+> [Jacquelin:master:(1) 32.671876] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 32.671876] [msg_test/INFO] Sending "Task_13" to "Soucy"
+> [Bousquet:slave:(5) 32.788380] [msg_test/INFO] "Task_12" done
+> [Soucy:slave:(6) 34.935611] [msg_test/INFO] Received "Task_13"
+> [Soucy:slave:(6) 34.935611] [msg_test/INFO] Processing "Task_13"
+> [Jacquelin:master:(1) 34.935611] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 34.935611] [msg_test/INFO] Sending "Task_14" to "Jackson"
+> [Soucy:slave:(6) 34.972019] [msg_test/INFO] "Task_13" done
+> [Jackson:forwarder:(2) 36.270727] [msg_test/INFO] Received "Task_14"
+> [Jackson:forwarder:(2) 36.270727] [msg_test/INFO] Sending "Task_14" to "Stephen"
+> [Jacquelin:master:(1) 36.270727] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 36.270727] [msg_test/INFO] Sending "Task_15" to "iRMX"
+> [Stephen:slave:(9) 40.508273] [msg_test/INFO] Received "Task_14"
+> [Stephen:slave:(9) 40.508273] [msg_test/INFO] Processing "Task_14"
+> [Stephen:slave:(9) 40.581088] [msg_test/INFO] "Task_14" done
+> [iRMX:slave:(4) 41.043257] [msg_test/INFO] Received "Task_15"
+> [iRMX:slave:(4) 41.043257] [msg_test/INFO] Processing "Task_15"
+> [Jacquelin:master:(1) 41.043257] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 41.043257] [msg_test/INFO] Sending "Task_16" to "Casavant"
+> [iRMX:slave:(4) 41.116072] [msg_test/INFO] "Task_15" done
+> [Casavant:forwarder:(3) 43.171078] [msg_test/INFO] Received "Task_16"
+> [Casavant:forwarder:(3) 43.171078] [msg_test/INFO] Sending "Task_16" to "Robert"
+> [Jacquelin:master:(1) 43.171078] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 43.171078] [msg_test/INFO] Sending "Task_17" to "Bousquet"
+> [Bousquet:slave:(5) 44.762118] [msg_test/INFO] Received "Task_17"
+> [Bousquet:slave:(5) 44.762118] [msg_test/INFO] Processing "Task_17"
+> [Jacquelin:master:(1) 44.762118] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 44.762118] [msg_test/INFO] Sending "Task_18" to "Soucy"
+> [Bousquet:slave:(5) 44.878622] [msg_test/INFO] "Task_17" done
+> [Robert:slave:(10) 45.531275] [msg_test/INFO] Received "Task_16"
+> [Robert:slave:(10) 45.531275] [msg_test/INFO] Processing "Task_16"
+> [Robert:slave:(10) 45.567683] [msg_test/INFO] "Task_16" done
+> [Soucy:slave:(6) 47.025854] [msg_test/INFO] Received "Task_18"
+> [Soucy:slave:(6) 47.025854] [msg_test/INFO] Processing "Task_18"
+> [Jacquelin:master:(1) 47.025854] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 47.025854] [msg_test/INFO] Sending "Task_19" to "Jackson"
+> [Soucy:slave:(6) 47.062262] [msg_test/INFO] "Task_18" done
+> [Jackson:forwarder:(2) 48.360969] [msg_test/INFO] Received "Task_19"
+> [Jackson:forwarder:(2) 48.360969] [msg_test/INFO] Sending "Task_19" to "Kuenning"
+> [Jacquelin:master:(1) 48.360969] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 48.360969] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
+> [Kuenning:slave:(7) 48.444592] [msg_test/INFO] Received "Task_19"
+> [Kuenning:slave:(7) 48.444592] [msg_test/INFO] Processing "Task_19"
+> [Kuenning:slave:(7) 48.502845] [msg_test/INFO] "Task_19" done
+> [iRMX:slave:(4) 50.794024] [msg_test/INFO] Received "finalize"
+> [iRMX:slave:(4) 50.794024] [msg_test/INFO] I'm done. See you!
+> [Casavant:forwarder:(3) 51.878795] [msg_test/INFO] Received "finalize"
+> [Casavant:forwarder:(3) 51.878795] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
+> [Bousquet:slave:(5) 52.689914] [msg_test/INFO] Received "finalize"
+> [Bousquet:slave:(5) 52.689914] [msg_test/INFO] I'm done. See you!
+> [Robert:slave:(10) 53.082033] [msg_test/INFO] Received "finalize"
+> [Robert:slave:(10) 53.082033] [msg_test/INFO] I'm done. See you!
+> [Sirois:slave:(11) 53.491253] [msg_test/INFO] Received "finalize"
+> [Sirois:slave:(11) 53.491253] [msg_test/INFO] I'm done. See you!
+> [Soucy:slave:(6) 53.843975] [msg_test/INFO] Received "finalize"
+> [Soucy:slave:(6) 53.843975] [msg_test/INFO] I'm done. See you!
+> [Monique:slave:(12) 54.200695] [msg_test/INFO] Received "finalize"
+> [Monique:slave:(12) 54.200695] [msg_test/INFO] I'm done. See you!
+> [Casavant:forwarder:(3) 54.200695] [msg_test/INFO] I'm done. See you!
+> [Jackson:forwarder:(2) 54.524622] [msg_test/INFO] Received "finalize"
+> [Jackson:forwarder:(2) 54.524622] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
+> [Jacquelin:master:(1) 54.524622] [msg_test/INFO] Goodbye now!
+> [Kuenning:slave:(7) 54.529294] [msg_test/INFO] Received "finalize"
+> [Kuenning:slave:(7) 54.529294] [msg_test/INFO] I'm done. See you!
+> [Browne:slave:(8) 55.971757] [msg_test/INFO] Received "finalize"
+> [Browne:slave:(8) 55.971757] [msg_test/INFO] I'm done. See you!
+> [Stephen:slave:(9) 58.132075] [msg_test/INFO] Received "finalize"
+> [Stephen:slave:(9) 58.132075] [msg_test/INFO] I'm done. See you!
+> [Jackson:forwarder:(2) 58.132075] [msg_test/INFO] I'm done. See you!
+> [58.132075] [msg_test/INFO] Simulation time 58.1321
+
+p Testing a simple master/slave example application handling failures
+
+$ masterslave/masterslave_failure$EXEEXT --log=xbt_cfg.thres:critical --log=no_loc ${srcdir:=.}/small_platform_with_failures.xml ${srcdir:=.}/masterslave/deployment_masterslave.xml --cfg=path:${srcdir} --cfg=cpu_model:Cas01_IM
+> [0.000000] [surf_config/INFO] Switching workstation model to compound since you changed the network and/or cpu model(s)
+> [0.000000] [simix_process/WARNING] Cannot launch process 'slave' on failed host 'Fafard'
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Got 5 slave(s) :
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Jupiter
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Fafard
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Ginette
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Bourassa
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Tremblay
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Got 20 task to process :
+> [Tremblay:master:(1) 0.165962] [msg_test/INFO] Send completed
+> [Jupiter:slave:(3) 0.165962] [msg_test/INFO] Received "Task"
+> [Jupiter:slave:(3) 0.165962] [msg_test/INFO] Communication time : "0.165962"
+> [Jupiter:slave:(3) 0.165962] [msg_test/INFO] Processing "Task"
+> [Jupiter:slave:(3) 0.821304] [msg_test/INFO] "Task" done
+> [Jupiter:slave:(3) 1.100000] [msg_test/INFO] Gloups. The cpu on which I'm running just turned off!. See you!
+> [Tremblay:master:(1) 10.165962] [msg_test/INFO] Mmh. Something went wrong with 'Fafard'. Nevermind. Let's keep going!
+> [Ginette:slave:(4) 10.306421] [msg_test/INFO] Received "Task"
+> [Ginette:slave:(4) 10.306421] [msg_test/INFO] Communication time : "0.140460"
+> [Ginette:slave:(4) 10.306421] [msg_test/INFO] Processing "Task"
+> [Tremblay:master:(1) 10.306421] [msg_test/INFO] Send completed
+> [Bourassa:slave:(5) 10.522294] [msg_test/INFO] Received "Task"
+> [Bourassa:slave:(5) 10.522294] [msg_test/INFO] Communication time : "0.215872"
+> [Bourassa:slave:(5) 10.522294] [msg_test/INFO] Processing "Task"
+> [Tremblay:master:(1) 10.522294] [msg_test/INFO] Send completed
+> [Tremblay:slave:(2) 10.524632] [msg_test/INFO] Received "Task"
+> [Tremblay:slave:(2) 10.524632] [msg_test/INFO] Communication time : "0.002339"
+> [Tremblay:slave:(2) 10.524632] [msg_test/INFO] Processing "Task"
+> [Tremblay:master:(1) 10.524632] [msg_test/INFO] Send completed
+> [Tremblay:slave:(2) 11.034342] [msg_test/INFO] "Task" done
+> [Ginette:slave:(4) 11.337519] [msg_test/INFO] "Task" done
+> [Bourassa:slave:(5) 11.553392] [msg_test/INFO] "Task" done
+> [Tremblay:master:(1) 20.524632] [msg_test/INFO] Mmh. Something went wrong with 'Jupiter'. Nevermind. Let's keep going!
+> [Tremblay:master:(1) 30.524632] [msg_test/INFO] Mmh. Something went wrong with 'Fafard'. Nevermind. Let's keep going!
+> [Ginette:slave:(4) 30.524632] [msg_test/INFO] Mmh. Something went wrong. Nevermind. Let's keep going!
+> [Tremblay:master:(1) 30.524632] [msg_test/INFO] Mmh. Something went wrong with 'Ginette'. Nevermind. Let's keep going!
+> [Bourassa:slave:(5) 30.740505] [msg_test/INFO] Received "Task"
+> [Bourassa:slave:(5) 30.740505] [msg_test/INFO] Communication time : "0.215872"
+> [Bourassa:slave:(5) 30.740505] [msg_test/INFO] Processing "Task"
+> [Tremblay:master:(1) 30.740505] [msg_test/INFO] Send completed
+> [Tremblay:slave:(2) 30.742843] [msg_test/INFO] Received "Task"
+> [Tremblay:slave:(2) 30.742843] [msg_test/INFO] Communication time : "0.002339"
+> [Tremblay:slave:(2) 30.742843] [msg_test/INFO] Processing "Task"
+> [Tremblay:master:(1) 30.742843] [msg_test/INFO] Send completed
+> [Tremblay:slave:(2) 31.252553] [msg_test/INFO] "Task" done
+> [Bourassa:slave:(5) 31.771603] [msg_test/INFO] "Task" done
+> [Tremblay:master:(1) 40.742843] [msg_test/INFO] Mmh. Something went wrong with 'Jupiter'. Nevermind. Let's keep going!
+> [Tremblay:master:(1) 50.742843] [msg_test/INFO] Mmh. Something went wrong with 'Fafard'. Nevermind. Let's keep going!
+> [Ginette:slave:(4) 50.883303] [msg_test/INFO] Received "Task"
+> [Ginette:slave:(4) 50.883303] [msg_test/INFO] Communication time : "0.140460"
+> [Ginette:slave:(4) 50.883303] [msg_test/INFO] Processing "Task"
+> [Tremblay:master:(1) 50.883303] [msg_test/INFO] Send completed
+> [Bourassa:slave:(5) 51.099175] [msg_test/INFO] Received "Task"
+> [Bourassa:slave:(5) 51.099175] [msg_test/INFO] Communication time : "0.215872"
+> [Bourassa:slave:(5) 51.099175] [msg_test/INFO] Processing "Task"
+> [Tremblay:master:(1) 51.099175] [msg_test/INFO] Send completed
+> [Tremblay:slave:(2) 51.101514] [msg_test/INFO] Received "Task"
+> [Tremblay:slave:(2) 51.101514] [msg_test/INFO] Communication time : "0.002339"
+> [Tremblay:slave:(2) 51.101514] [msg_test/INFO] Processing "Task"
+> [Tremblay:master:(1) 51.101514] [msg_test/INFO] Send completed
+> [Tremblay:slave:(2) 51.611224] [msg_test/INFO] "Task" done
+> [Ginette:slave:(4) 51.914401] [msg_test/INFO] "Task" done
+> [Bourassa:slave:(5) 52.130273] [msg_test/INFO] "Task" done
+> [Tremblay:master:(1) 61.101514] [msg_test/INFO] Mmh. Something went wrong with 'Jupiter'. Nevermind. Let's keep going!
+> [Tremblay:master:(1) 71.101514] [msg_test/INFO] Mmh. Something went wrong with 'Fafard'. Nevermind. Let's keep going!
+> [Ginette:slave:(4) 71.241973] [msg_test/INFO] Received "Task"
+> [Ginette:slave:(4) 71.241973] [msg_test/INFO] Communication time : "0.140460"
+> [Ginette:slave:(4) 71.241973] [msg_test/INFO] Processing "Task"
+> [Tremblay:master:(1) 71.241973] [msg_test/INFO] Send completed
+> [Bourassa:slave:(5) 71.457846] [msg_test/INFO] Received "Task"
+> [Bourassa:slave:(5) 71.457846] [msg_test/INFO] Communication time : "0.215872"
+> [Bourassa:slave:(5) 71.457846] [msg_test/INFO] Processing "Task"
+> [Tremblay:master:(1) 71.457846] [msg_test/INFO] Send completed
+> [Tremblay:slave:(2) 71.460184] [msg_test/INFO] Received "Task"
+> [Tremblay:slave:(2) 71.460184] [msg_test/INFO] Communication time : "0.002339"
+> [Tremblay:slave:(2) 71.460184] [msg_test/INFO] Processing "Task"
+> [Tremblay:master:(1) 71.460184] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 71.460184] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
+> [Tremblay:slave:(2) 71.969894] [msg_test/INFO] "Task" done
+> [Ginette:slave:(4) 72.273071] [msg_test/INFO] "Task" done
+> [Tremblay:master:(1) 72.460184] [msg_test/INFO] Mmh. Can't reach 'Jupiter'! Nevermind. Let's keep going!
+> [Bourassa:slave:(5) 72.488944] [msg_test/INFO] "Task" done
+> [Tremblay:master:(1) 73.460184] [msg_test/INFO] Mmh. Can't reach 'Fafard'! Nevermind. Let's keep going!
+> [Ginette:slave:(4) 73.473416] [msg_test/INFO] Received "finalize"
+> [Ginette:slave:(4) 73.473416] [msg_test/INFO] I'm done. See you!
+> [Bourassa:slave:(5) 73.493752] [msg_test/INFO] Received "finalize"
+> [Bourassa:slave:(5) 73.493752] [msg_test/INFO] I'm done. See you!
+> [Tremblay:slave:(2) 73.493908] [msg_test/INFO] Received "finalize"
+> [Tremblay:slave:(2) 73.493908] [msg_test/INFO] I'm done. See you!
+> [Tremblay:master:(1) 73.493908] [msg_test/INFO] Goodbye now!
+> [73.493908] [msg_test/INFO] Simulation time 73.4939
+
+p Testing the bypassing of the flexml parser
+
+$ $SG_TEST_EXENV masterslave/masterslave_bypass --log=no_loc --cfg=cpu_model:Cas01_IM
+> [0.000000] [xbt_cfg/INFO] Configuration change: Set 'cpu_model' to 'Cas01_IM'
+> [0.000000] [surf_config/INFO] Switching workstation model to compound since you changed the network and/or cpu model(s)
+> [0.000000] [surf_parse/WARNING] Bypassing the XML parser since surf_parse_open received a NULL pointer. If it is not what you want, go fix your code.
+> [host A:master:(1) 0.000000] [msg_test/INFO] Got 1 slave(s) :
+> [host A:master:(1) 0.000000] [msg_test/INFO]          host B
+> [host A:master:(1) 0.000000] [msg_test/INFO] Got 20 task to process :
+> [host A:master:(1) 0.000000] [msg_test/INFO]         "Task_0"
+> [host A:master:(1) 0.000000] [msg_test/INFO]         "Task_1"
+> [host A:master:(1) 0.000000] [msg_test/INFO]         "Task_2"
+> [host A:master:(1) 0.000000] [msg_test/INFO]         "Task_3"
+> [host A:master:(1) 0.000000] [msg_test/INFO]         "Task_4"
+> [host A:master:(1) 0.000000] [msg_test/INFO]         "Task_5"
+> [host A:master:(1) 0.000000] [msg_test/INFO]         "Task_6"
+> [host A:master:(1) 0.000000] [msg_test/INFO]         "Task_7"
+> [host A:master:(1) 0.000000] [msg_test/INFO]         "Task_8"
+> [host A:master:(1) 0.000000] [msg_test/INFO]         "Task_9"
+> [host A:master:(1) 0.000000] [msg_test/INFO]         "Task_10"
+> [host A:master:(1) 0.000000] [msg_test/INFO]         "Task_11"
+> [host A:master:(1) 0.000000] [msg_test/INFO]         "Task_12"
+> [host A:master:(1) 0.000000] [msg_test/INFO]         "Task_13"
+> [host A:master:(1) 0.000000] [msg_test/INFO]         "Task_14"
+> [host A:master:(1) 0.000000] [msg_test/INFO]         "Task_15"
+> [host A:master:(1) 0.000000] [msg_test/INFO]         "Task_16"
+> [host A:master:(1) 0.000000] [msg_test/INFO]         "Task_17"
+> [host A:master:(1) 0.000000] [msg_test/INFO]         "Task_18"
+> [host A:master:(1) 0.000000] [msg_test/INFO]         "Task_19"
+> [host A:master:(1) 0.000000] [msg_test/INFO] Sending "Task_0" to "host B"
+> [host B:slave:(2) 0.000000] [msg_test/INFO] I'm a slave
+> [host A:master:(1) 4.080000] [msg_test/INFO] Send completed
+> [host A:master:(1) 4.080000] [msg_test/INFO] Sending "Task_1" to "host B"
+> [host B:slave:(2) 4.080000] [msg_test/INFO] Received "Task_0" 
+> [host B:slave:(2) 4.080000] [msg_test/INFO] Processing "Task_0" 
+> [host B:slave:(2) 4.130000] [msg_test/INFO] "Task_0" done 
+> [host A:master:(1) 8.210000] [msg_test/INFO] Send completed
+> [host A:master:(1) 8.210000] [msg_test/INFO] Sending "Task_2" to "host B"
+> [host B:slave:(2) 8.210000] [msg_test/INFO] Received "Task_1" 
+> [host B:slave:(2) 8.210000] [msg_test/INFO] Processing "Task_1" 
+> [host B:slave:(2) 8.260000] [msg_test/INFO] "Task_1" done 
+> [host A:master:(1) 12.340000] [msg_test/INFO] Send completed
+> [host A:master:(1) 12.340000] [msg_test/INFO] Sending "Task_3" to "host B"
+> [host B:slave:(2) 12.340000] [msg_test/INFO] Received "Task_2" 
+> [host B:slave:(2) 12.340000] [msg_test/INFO] Processing "Task_2" 
+> [host B:slave:(2) 12.390000] [msg_test/INFO] "Task_2" done 
+> [host A:master:(1) 16.470000] [msg_test/INFO] Send completed
+> [host A:master:(1) 16.470000] [msg_test/INFO] Sending "Task_4" to "host B"
+> [host B:slave:(2) 16.470000] [msg_test/INFO] Received "Task_3" 
+> [host B:slave:(2) 16.470000] [msg_test/INFO] Processing "Task_3" 
+> [host B:slave:(2) 16.520000] [msg_test/INFO] "Task_3" done 
+> [host A:master:(1) 20.600000] [msg_test/INFO] Send completed
+> [host A:master:(1) 20.600000] [msg_test/INFO] Sending "Task_5" to "host B"
+> [host B:slave:(2) 20.600000] [msg_test/INFO] Received "Task_4" 
+> [host B:slave:(2) 20.600000] [msg_test/INFO] Processing "Task_4" 
+> [host B:slave:(2) 20.650000] [msg_test/INFO] "Task_4" done 
+> [host A:master:(1) 24.730000] [msg_test/INFO] Send completed
+> [host A:master:(1) 24.730000] [msg_test/INFO] Sending "Task_6" to "host B"
+> [host B:slave:(2) 24.730000] [msg_test/INFO] Received "Task_5" 
+> [host B:slave:(2) 24.730000] [msg_test/INFO] Processing "Task_5" 
+> [host B:slave:(2) 24.780000] [msg_test/INFO] "Task_5" done 
+> [host A:master:(1) 28.860000] [msg_test/INFO] Send completed
+> [host A:master:(1) 28.860000] [msg_test/INFO] Sending "Task_7" to "host B"
+> [host B:slave:(2) 28.860000] [msg_test/INFO] Received "Task_6" 
+> [host B:slave:(2) 28.860000] [msg_test/INFO] Processing "Task_6" 
+> [host B:slave:(2) 28.910000] [msg_test/INFO] "Task_6" done 
+> [host A:master:(1) 32.990000] [msg_test/INFO] Send completed
+> [host A:master:(1) 32.990000] [msg_test/INFO] Sending "Task_8" to "host B"
+> [host B:slave:(2) 32.990000] [msg_test/INFO] Received "Task_7" 
+> [host B:slave:(2) 32.990000] [msg_test/INFO] Processing "Task_7" 
+> [host B:slave:(2) 33.040000] [msg_test/INFO] "Task_7" done 
+> [host A:master:(1) 37.120000] [msg_test/INFO] Send completed
+> [host A:master:(1) 37.120000] [msg_test/INFO] Sending "Task_9" to "host B"
+> [host B:slave:(2) 37.120000] [msg_test/INFO] Received "Task_8" 
+> [host B:slave:(2) 37.120000] [msg_test/INFO] Processing "Task_8" 
+> [host B:slave:(2) 37.170000] [msg_test/INFO] "Task_8" done 
+> [host A:master:(1) 41.250000] [msg_test/INFO] Send completed
+> [host A:master:(1) 41.250000] [msg_test/INFO] Sending "Task_10" to "host B"
+> [host B:slave:(2) 41.250000] [msg_test/INFO] Received "Task_9" 
+> [host B:slave:(2) 41.250000] [msg_test/INFO] Processing "Task_9" 
+> [host B:slave:(2) 41.300000] [msg_test/INFO] "Task_9" done 
+> [host A:master:(1) 45.380000] [msg_test/INFO] Send completed
+> [host A:master:(1) 45.380000] [msg_test/INFO] Sending "Task_11" to "host B"
+> [host B:slave:(2) 45.380000] [msg_test/INFO] Received "Task_10" 
+> [host B:slave:(2) 45.380000] [msg_test/INFO] Processing "Task_10" 
+> [host B:slave:(2) 45.430000] [msg_test/INFO] "Task_10" done 
+> [host A:master:(1) 49.510000] [msg_test/INFO] Send completed
+> [host A:master:(1) 49.510000] [msg_test/INFO] Sending "Task_12" to "host B"
+> [host B:slave:(2) 49.510000] [msg_test/INFO] Received "Task_11" 
+> [host B:slave:(2) 49.510000] [msg_test/INFO] Processing "Task_11" 
+> [host B:slave:(2) 49.560000] [msg_test/INFO] "Task_11" done 
+> [host A:master:(1) 53.640000] [msg_test/INFO] Send completed
+> [host A:master:(1) 53.640000] [msg_test/INFO] Sending "Task_13" to "host B"
+> [host B:slave:(2) 53.640000] [msg_test/INFO] Received "Task_12" 
+> [host B:slave:(2) 53.640000] [msg_test/INFO] Processing "Task_12" 
+> [host B:slave:(2) 53.690000] [msg_test/INFO] "Task_12" done 
+> [host A:master:(1) 57.770000] [msg_test/INFO] Send completed
+> [host A:master:(1) 57.770000] [msg_test/INFO] Sending "Task_14" to "host B"
+> [host B:slave:(2) 57.770000] [msg_test/INFO] Received "Task_13" 
+> [host B:slave:(2) 57.770000] [msg_test/INFO] Processing "Task_13" 
+> [host B:slave:(2) 57.820000] [msg_test/INFO] "Task_13" done 
+> [host A:master:(1) 61.900000] [msg_test/INFO] Send completed
+> [host A:master:(1) 61.900000] [msg_test/INFO] Sending "Task_15" to "host B"
+> [host B:slave:(2) 61.900000] [msg_test/INFO] Received "Task_14" 
+> [host B:slave:(2) 61.900000] [msg_test/INFO] Processing "Task_14" 
+> [host B:slave:(2) 61.950000] [msg_test/INFO] "Task_14" done 
+> [host A:master:(1) 66.030000] [msg_test/INFO] Send completed
+> [host A:master:(1) 66.030000] [msg_test/INFO] Sending "Task_16" to "host B"
+> [host B:slave:(2) 66.030000] [msg_test/INFO] Received "Task_15" 
+> [host B:slave:(2) 66.030000] [msg_test/INFO] Processing "Task_15" 
+> [host B:slave:(2) 66.080000] [msg_test/INFO] "Task_15" done 
+> [host A:master:(1) 70.160000] [msg_test/INFO] Send completed
+> [host A:master:(1) 70.160000] [msg_test/INFO] Sending "Task_17" to "host B"
+> [host B:slave:(2) 70.160000] [msg_test/INFO] Received "Task_16" 
+> [host B:slave:(2) 70.160000] [msg_test/INFO] Processing "Task_16" 
+> [host B:slave:(2) 70.210000] [msg_test/INFO] "Task_16" done 
+> [host A:master:(1) 74.290000] [msg_test/INFO] Send completed
+> [host A:master:(1) 74.290000] [msg_test/INFO] Sending "Task_18" to "host B"
+> [host B:slave:(2) 74.290000] [msg_test/INFO] Received "Task_17" 
+> [host B:slave:(2) 74.290000] [msg_test/INFO] Processing "Task_17" 
+> [host B:slave:(2) 74.340000] [msg_test/INFO] "Task_17" done 
+> [host A:master:(1) 78.420000] [msg_test/INFO] Send completed
+> [host A:master:(1) 78.420000] [msg_test/INFO] Sending "Task_19" to "host B"
+> [host B:slave:(2) 78.420000] [msg_test/INFO] Received "Task_18" 
+> [host B:slave:(2) 78.420000] [msg_test/INFO] Processing "Task_18" 
+> [host B:slave:(2) 78.470000] [msg_test/INFO] "Task_18" done 
+> [host A:master:(1) 82.550000] [msg_test/INFO] Send completed
+> [host A:master:(1) 82.550000] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
+> [host B:slave:(2) 82.550000] [msg_test/INFO] Received "Task_19" 
+> [host B:slave:(2) 82.550000] [msg_test/INFO] Processing "Task_19" 
+> [host B:slave:(2) 82.600000] [msg_test/INFO] "Task_19" done 
+> [host A:master:(1) 84.680000] [msg_test/INFO] Goodbye now!
+> [host B:slave:(2) 84.680000] [msg_test/INFO] Received "finalize" 
+> [host B:slave:(2) 84.680000] [msg_test/INFO] I'm done. See you!
+> [84.680000] [msg_test/INFO] Simulation time 84.68
+
index a098c58..1990b02 100644 (file)
@@ -11,23 +11,23 @@ $ $SG_TEST_EXENV masterslave/masterslave_forwarder$EXEEXT ${srcdir:=.}/small_pla
 > [Tremblay:master:(1) 0.165962] [msg_test/INFO] Sending "Task_1" to "Fafard"
 > [Jupiter:slave:(3) 0.165962] [msg_test/INFO] Received "Task_0"
 > [Jupiter:slave:(3) 0.165962] [msg_test/INFO] Processing "Task_0"
-> [Tremblay:master:(1) 0.384115] [msg_test/INFO] Sent
-> [Tremblay:master:(1) 0.384115] [msg_test/INFO] Sending "Task_2" to "Ginette"
 > [Fafard:slave:(4) 0.384115] [msg_test/INFO] Received "Task_1"
 > [Fafard:slave:(4) 0.384115] [msg_test/INFO] Processing "Task_1"
-> [Tremblay:master:(1) 0.524575] [msg_test/INFO] Sent
-> [Tremblay:master:(1) 0.524575] [msg_test/INFO] Sending "Task_3" to "Bourassa"
+> [Tremblay:master:(1) 0.384115] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 0.384115] [msg_test/INFO] Sending "Task_2" to "Ginette"
 > [Ginette:slave:(5) 0.524575] [msg_test/INFO] Received "Task_2"
 > [Ginette:slave:(5) 0.524575] [msg_test/INFO] Processing "Task_2"
+> [Tremblay:master:(1) 0.524575] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 0.524575] [msg_test/INFO] Sending "Task_3" to "Bourassa"
+> [Bourassa:slave:(6) 0.740447] [msg_test/INFO] Received "Task_3"
+> [Bourassa:slave:(6) 0.740447] [msg_test/INFO] Processing "Task_3"
 > [Tremblay:master:(1) 0.740447] [msg_test/INFO] Sent
 > [Tremblay:master:(1) 0.740447] [msg_test/INFO] Sending "Task_4" to "Tremblay"
 > [Tremblay:master:(1) 0.740447] [msg_test/INFO] Hey ! It's me ! :)
-> [Bourassa:slave:(6) 0.740447] [msg_test/INFO] Received "Task_3"
-> [Bourassa:slave:(6) 0.740447] [msg_test/INFO] Processing "Task_3"
-> [Tremblay:master:(1) 0.742786] [msg_test/INFO] Sent
-> [Tremblay:master:(1) 0.742786] [msg_test/INFO] Sending "Task_5" to "Jupiter"
 > [Tremblay:slave:(2) 0.742786] [msg_test/INFO] Received "Task_4"
 > [Tremblay:slave:(2) 0.742786] [msg_test/INFO] Processing "Task_4"
+> [Tremblay:master:(1) 0.742786] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 0.742786] [msg_test/INFO] Sending "Task_5" to "Jupiter"
 > [Jupiter:slave:(3) 0.821304] [msg_test/INFO] "Task_0" done
 > [Tremblay:master:(1) 0.987266] [msg_test/INFO] Sent
 > [Tremblay:master:(1) 0.987266] [msg_test/INFO] Sending "Task_6" to "Fafard"
@@ -52,18 +52,18 @@ $ $SG_TEST_EXENV masterslave/masterslave_forwarder$EXEEXT ${srcdir:=.}/small_pla
 > [Tremblay:master:(1) 1.987417] [msg_test/INFO] Hey ! It's me ! :)
 > [Bourassa:slave:(6) 1.987417] [msg_test/INFO] Received "Task_8"
 > [Bourassa:slave:(6) 1.987417] [msg_test/INFO] Processing "Task_8"
-> [Tremblay:master:(1) 1.989756] [msg_test/INFO] Sent
-> [Tremblay:master:(1) 1.989756] [msg_test/INFO] Sending "Task_10" to "Jupiter"
 > [Tremblay:slave:(2) 1.989756] [msg_test/INFO] Received "Task_9"
 > [Tremblay:slave:(2) 1.989756] [msg_test/INFO] Processing "Task_9"
-> [Tremblay:master:(1) 2.155718] [msg_test/INFO] Sent
-> [Tremblay:master:(1) 2.155718] [msg_test/INFO] Sending "Task_11" to "Fafard"
+> [Tremblay:master:(1) 1.989756] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 1.989756] [msg_test/INFO] Sending "Task_10" to "Jupiter"
 > [Jupiter:slave:(3) 2.155718] [msg_test/INFO] Received "Task_10"
 > [Jupiter:slave:(3) 2.155718] [msg_test/INFO] Processing "Task_10"
-> [Tremblay:master:(1) 2.373871] [msg_test/INFO] Sent
-> [Tremblay:master:(1) 2.373871] [msg_test/INFO] Sending "Task_12" to "Ginette"
+> [Tremblay:master:(1) 2.155718] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 2.155718] [msg_test/INFO] Sending "Task_11" to "Fafard"
 > [Fafard:slave:(4) 2.373871] [msg_test/INFO] Received "Task_11"
 > [Fafard:slave:(4) 2.373871] [msg_test/INFO] Processing "Task_11"
+> [Tremblay:master:(1) 2.373871] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 2.373871] [msg_test/INFO] Sending "Task_12" to "Ginette"
 > [Tremblay:slave:(2) 2.499466] [msg_test/INFO] "Task_9" done
 > [Ginette:slave:(5) 2.727230] [msg_test/INFO] "Task_7" done
 > [Jupiter:slave:(3) 2.811060] [msg_test/INFO] "Task_10" done
@@ -78,18 +78,18 @@ $ $SG_TEST_EXENV masterslave/masterslave_forwarder$EXEEXT ${srcdir:=.}/small_pla
 > [Tremblay:master:(1) 3.234387] [msg_test/INFO] Hey ! It's me ! :)
 > [Bourassa:slave:(6) 3.234387] [msg_test/INFO] Received "Task_13"
 > [Bourassa:slave:(6) 3.234387] [msg_test/INFO] Processing "Task_13"
-> [Tremblay:master:(1) 3.236726] [msg_test/INFO] Sent
-> [Tremblay:master:(1) 3.236726] [msg_test/INFO] Sending "Task_15" to "Jupiter"
 > [Tremblay:slave:(2) 3.236726] [msg_test/INFO] Received "Task_14"
 > [Tremblay:slave:(2) 3.236726] [msg_test/INFO] Processing "Task_14"
-> [Tremblay:master:(1) 3.402688] [msg_test/INFO] Sent
-> [Tremblay:master:(1) 3.402688] [msg_test/INFO] Sending "Task_16" to "Fafard"
+> [Tremblay:master:(1) 3.236726] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 3.236726] [msg_test/INFO] Sending "Task_15" to "Jupiter"
 > [Jupiter:slave:(3) 3.402688] [msg_test/INFO] Received "Task_15"
 > [Jupiter:slave:(3) 3.402688] [msg_test/INFO] Processing "Task_15"
-> [Tremblay:master:(1) 3.620841] [msg_test/INFO] Sent
-> [Tremblay:master:(1) 3.620841] [msg_test/INFO] Sending "Task_17" to "Ginette"
+> [Tremblay:master:(1) 3.402688] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 3.402688] [msg_test/INFO] Sending "Task_16" to "Fafard"
 > [Fafard:slave:(4) 3.620841] [msg_test/INFO] Received "Task_16"
 > [Fafard:slave:(4) 3.620841] [msg_test/INFO] Processing "Task_16"
+> [Tremblay:master:(1) 3.620841] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 3.620841] [msg_test/INFO] Sending "Task_17" to "Ginette"
 > [Tremblay:slave:(2) 3.746436] [msg_test/INFO] "Task_14" done
 > [Ginette:slave:(5) 3.898788] [msg_test/INFO] "Task_12" done
 > [Tremblay:master:(1) 4.039247] [msg_test/INFO] Sent
@@ -104,10 +104,10 @@ $ $SG_TEST_EXENV masterslave/masterslave_forwarder$EXEEXT ${srcdir:=.}/small_pla
 > [Tremblay:master:(1) 4.481357] [msg_test/INFO] Hey ! It's me ! :)
 > [Bourassa:slave:(6) 4.481357] [msg_test/INFO] Received "Task_18"
 > [Bourassa:slave:(6) 4.481357] [msg_test/INFO] Processing "Task_18"
-> [Tremblay:master:(1) 4.483696] [msg_test/INFO] Sent
-> [Tremblay:master:(1) 4.483696] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
 > [Tremblay:slave:(2) 4.483696] [msg_test/INFO] Received "Task_19"
 > [Tremblay:slave:(2) 4.483696] [msg_test/INFO] Processing "Task_19"
+> [Tremblay:master:(1) 4.483696] [msg_test/INFO] Sent
+> [Tremblay:master:(1) 4.483696] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
 > [Jupiter:slave:(3) 4.498896] [msg_test/INFO] Received "finalize"
 > [Jupiter:slave:(3) 4.498896] [msg_test/INFO] I'm done. See you!
 > [Fafard:slave:(4) 4.519447] [msg_test/INFO] Received "finalize"
@@ -119,9 +119,9 @@ $ $SG_TEST_EXENV masterslave/masterslave_forwarder$EXEEXT ${srcdir:=.}/small_pla
 > [Bourassa:slave:(6) 5.512455] [msg_test/INFO] "Task_18" done
 > [Bourassa:slave:(6) 5.532791] [msg_test/INFO] Received "finalize"
 > [Bourassa:slave:(6) 5.532791] [msg_test/INFO] I'm done. See you!
-> [Tremblay:master:(1) 5.532947] [msg_test/INFO] Goodbye now!
 > [Tremblay:slave:(2) 5.532947] [msg_test/INFO] Received "finalize"
 > [Tremblay:slave:(2) 5.532947] [msg_test/INFO] I'm done. See you!
+> [Tremblay:master:(1) 5.532947] [msg_test/INFO] Goodbye now!
 > [5.532947] [msg_test/INFO] Simulation time 5.53295
 
 p Testing a master/slave example application with a forwarder module
@@ -136,114 +136,114 @@ $ $SG_TEST_EXENV masterslave/masterslave_forwarder$EXEEXT ${srcdir:=.}/msg_platf
 > [iRMX:slave:(4) 4.772530] [msg_test/INFO] Received "Task_0"
 > [iRMX:slave:(4) 4.772530] [msg_test/INFO] Processing "Task_0"
 > [iRMX:slave:(4) 4.845345] [msg_test/INFO] "Task_0" done
-> [Jacquelin:master:(1) 6.900351] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 6.900351] [msg_test/INFO] Sending "Task_2" to "Bousquet"
 > [Casavant:forwarder:(3) 6.900351] [msg_test/INFO] Received "Task_1"
 > [Casavant:forwarder:(3) 6.900351] [msg_test/INFO] Sending "Task_1" to "Robert"
-> [Jacquelin:master:(1) 8.491392] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 8.491392] [msg_test/INFO] Sending "Task_3" to "Soucy"
+> [Jacquelin:master:(1) 6.900351] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 6.900351] [msg_test/INFO] Sending "Task_2" to "Bousquet"
 > [Bousquet:slave:(5) 8.491392] [msg_test/INFO] Received "Task_2"
 > [Bousquet:slave:(5) 8.491392] [msg_test/INFO] Processing "Task_2"
+> [Jacquelin:master:(1) 8.491392] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 8.491392] [msg_test/INFO] Sending "Task_3" to "Soucy"
 > [Bousquet:slave:(5) 8.607896] [msg_test/INFO] "Task_2" done
 > [Robert:slave:(10) 9.260549] [msg_test/INFO] Received "Task_1"
 > [Robert:slave:(10) 9.260549] [msg_test/INFO] Processing "Task_1"
 > [Robert:slave:(10) 9.296956] [msg_test/INFO] "Task_1" done
-> [Jacquelin:master:(1) 10.755127] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 10.755127] [msg_test/INFO] Sending "Task_4" to "Jackson"
 > [Soucy:slave:(6) 10.755127] [msg_test/INFO] Received "Task_3"
 > [Soucy:slave:(6) 10.755127] [msg_test/INFO] Processing "Task_3"
+> [Jacquelin:master:(1) 10.755127] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 10.755127] [msg_test/INFO] Sending "Task_4" to "Jackson"
 > [Soucy:slave:(6) 10.791535] [msg_test/INFO] "Task_3" done
-> [Jacquelin:master:(1) 12.090242] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 12.090242] [msg_test/INFO] Sending "Task_5" to "iRMX"
 > [Jackson:forwarder:(2) 12.090242] [msg_test/INFO] Received "Task_4"
 > [Jackson:forwarder:(2) 12.090242] [msg_test/INFO] Sending "Task_4" to "Kuenning"
+> [Jacquelin:master:(1) 12.090242] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 12.090242] [msg_test/INFO] Sending "Task_5" to "iRMX"
 > [Kuenning:slave:(7) 12.173866] [msg_test/INFO] Received "Task_4"
 > [Kuenning:slave:(7) 12.173866] [msg_test/INFO] Processing "Task_4"
 > [Kuenning:slave:(7) 12.232118] [msg_test/INFO] "Task_4" done
-> [Jacquelin:master:(1) 16.862772] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 16.862772] [msg_test/INFO] Sending "Task_6" to "Casavant"
 > [iRMX:slave:(4) 16.862772] [msg_test/INFO] Received "Task_5"
 > [iRMX:slave:(4) 16.862772] [msg_test/INFO] Processing "Task_5"
+> [Jacquelin:master:(1) 16.862772] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 16.862772] [msg_test/INFO] Sending "Task_6" to "Casavant"
 > [iRMX:slave:(4) 16.935587] [msg_test/INFO] "Task_5" done
-> [Jacquelin:master:(1) 18.990593] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 18.990593] [msg_test/INFO] Sending "Task_7" to "Bousquet"
 > [Casavant:forwarder:(3) 18.990593] [msg_test/INFO] Received "Task_6"
 > [Casavant:forwarder:(3) 18.990593] [msg_test/INFO] Sending "Task_6" to "Sirois"
+> [Jacquelin:master:(1) 18.990593] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 18.990593] [msg_test/INFO] Sending "Task_7" to "Bousquet"
 > [Sirois:slave:(11) 19.793293] [msg_test/INFO] Received "Task_6"
 > [Sirois:slave:(11) 19.793293] [msg_test/INFO] Processing "Task_6"
 > [Sirois:slave:(11) 19.836983] [msg_test/INFO] "Task_6" done
-> [Jacquelin:master:(1) 20.581634] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 20.581634] [msg_test/INFO] Sending "Task_8" to "Soucy"
 > [Bousquet:slave:(5) 20.581634] [msg_test/INFO] Received "Task_7"
 > [Bousquet:slave:(5) 20.581634] [msg_test/INFO] Processing "Task_7"
+> [Jacquelin:master:(1) 20.581634] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 20.581634] [msg_test/INFO] Sending "Task_8" to "Soucy"
 > [Bousquet:slave:(5) 20.698138] [msg_test/INFO] "Task_7" done
-> [Jacquelin:master:(1) 22.845369] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 22.845369] [msg_test/INFO] Sending "Task_9" to "Jackson"
 > [Soucy:slave:(6) 22.845369] [msg_test/INFO] Received "Task_8"
 > [Soucy:slave:(6) 22.845369] [msg_test/INFO] Processing "Task_8"
+> [Jacquelin:master:(1) 22.845369] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 22.845369] [msg_test/INFO] Sending "Task_9" to "Jackson"
 > [Soucy:slave:(6) 22.881777] [msg_test/INFO] "Task_8" done
-> [Jacquelin:master:(1) 24.180485] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 24.180485] [msg_test/INFO] Sending "Task_10" to "iRMX"
 > [Jackson:forwarder:(2) 24.180485] [msg_test/INFO] Received "Task_9"
 > [Jackson:forwarder:(2) 24.180485] [msg_test/INFO] Sending "Task_9" to "Browne"
+> [Jacquelin:master:(1) 24.180485] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 24.180485] [msg_test/INFO] Sending "Task_10" to "iRMX"
 > [Browne:slave:(8) 27.009931] [msg_test/INFO] Received "Task_9"
 > [Browne:slave:(8) 27.009931] [msg_test/INFO] Processing "Task_9"
 > [Browne:slave:(8) 27.046339] [msg_test/INFO] "Task_9" done
-> [Jacquelin:master:(1) 28.953014] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 28.953014] [msg_test/INFO] Sending "Task_11" to "Casavant"
 > [iRMX:slave:(4) 28.953014] [msg_test/INFO] Received "Task_10"
 > [iRMX:slave:(4) 28.953014] [msg_test/INFO] Processing "Task_10"
+> [Jacquelin:master:(1) 28.953014] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 28.953014] [msg_test/INFO] Sending "Task_11" to "Casavant"
 > [iRMX:slave:(4) 29.025830] [msg_test/INFO] "Task_10" done
-> [Jacquelin:master:(1) 31.080835] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 31.080835] [msg_test/INFO] Sending "Task_12" to "Bousquet"
 > [Casavant:forwarder:(3) 31.080835] [msg_test/INFO] Received "Task_11"
 > [Casavant:forwarder:(3) 31.080835] [msg_test/INFO] Sending "Task_11" to "Monique"
+> [Jacquelin:master:(1) 31.080835] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 31.080835] [msg_test/INFO] Sending "Task_12" to "Bousquet"
 > [Monique:slave:(12) 32.472434] [msg_test/INFO] Received "Task_11"
 > [Monique:slave:(12) 32.472434] [msg_test/INFO] Processing "Task_11"
 > [Monique:slave:(12) 32.516124] [msg_test/INFO] "Task_11" done
-> [Jacquelin:master:(1) 32.671876] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 32.671876] [msg_test/INFO] Sending "Task_13" to "Soucy"
 > [Bousquet:slave:(5) 32.671876] [msg_test/INFO] Received "Task_12"
 > [Bousquet:slave:(5) 32.671876] [msg_test/INFO] Processing "Task_12"
+> [Jacquelin:master:(1) 32.671876] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 32.671876] [msg_test/INFO] Sending "Task_13" to "Soucy"
 > [Bousquet:slave:(5) 32.788380] [msg_test/INFO] "Task_12" done
-> [Jacquelin:master:(1) 34.935611] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 34.935611] [msg_test/INFO] Sending "Task_14" to "Jackson"
 > [Soucy:slave:(6) 34.935611] [msg_test/INFO] Received "Task_13"
 > [Soucy:slave:(6) 34.935611] [msg_test/INFO] Processing "Task_13"
+> [Jacquelin:master:(1) 34.935611] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 34.935611] [msg_test/INFO] Sending "Task_14" to "Jackson"
 > [Soucy:slave:(6) 34.972019] [msg_test/INFO] "Task_13" done
-> [Jacquelin:master:(1) 36.270727] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 36.270727] [msg_test/INFO] Sending "Task_15" to "iRMX"
 > [Jackson:forwarder:(2) 36.270727] [msg_test/INFO] Received "Task_14"
 > [Jackson:forwarder:(2) 36.270727] [msg_test/INFO] Sending "Task_14" to "Stephen"
+> [Jacquelin:master:(1) 36.270727] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 36.270727] [msg_test/INFO] Sending "Task_15" to "iRMX"
 > [Stephen:slave:(9) 40.508273] [msg_test/INFO] Received "Task_14"
 > [Stephen:slave:(9) 40.508273] [msg_test/INFO] Processing "Task_14"
 > [Stephen:slave:(9) 40.581088] [msg_test/INFO] "Task_14" done
-> [Jacquelin:master:(1) 41.043257] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 41.043257] [msg_test/INFO] Sending "Task_16" to "Casavant"
 > [iRMX:slave:(4) 41.043257] [msg_test/INFO] Received "Task_15"
 > [iRMX:slave:(4) 41.043257] [msg_test/INFO] Processing "Task_15"
+> [Jacquelin:master:(1) 41.043257] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 41.043257] [msg_test/INFO] Sending "Task_16" to "Casavant"
 > [iRMX:slave:(4) 41.116072] [msg_test/INFO] "Task_15" done
-> [Jacquelin:master:(1) 43.171078] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 43.171078] [msg_test/INFO] Sending "Task_17" to "Bousquet"
 > [Casavant:forwarder:(3) 43.171078] [msg_test/INFO] Received "Task_16"
 > [Casavant:forwarder:(3) 43.171078] [msg_test/INFO] Sending "Task_16" to "Robert"
-> [Jacquelin:master:(1) 44.762118] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 44.762118] [msg_test/INFO] Sending "Task_18" to "Soucy"
+> [Jacquelin:master:(1) 43.171078] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 43.171078] [msg_test/INFO] Sending "Task_17" to "Bousquet"
 > [Bousquet:slave:(5) 44.762118] [msg_test/INFO] Received "Task_17"
 > [Bousquet:slave:(5) 44.762118] [msg_test/INFO] Processing "Task_17"
+> [Jacquelin:master:(1) 44.762118] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 44.762118] [msg_test/INFO] Sending "Task_18" to "Soucy"
 > [Bousquet:slave:(5) 44.878622] [msg_test/INFO] "Task_17" done
 > [Robert:slave:(10) 45.531275] [msg_test/INFO] Received "Task_16"
 > [Robert:slave:(10) 45.531275] [msg_test/INFO] Processing "Task_16"
 > [Robert:slave:(10) 45.567683] [msg_test/INFO] "Task_16" done
-> [Jacquelin:master:(1) 47.025854] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 47.025854] [msg_test/INFO] Sending "Task_19" to "Jackson"
 > [Soucy:slave:(6) 47.025854] [msg_test/INFO] Received "Task_18"
 > [Soucy:slave:(6) 47.025854] [msg_test/INFO] Processing "Task_18"
+> [Jacquelin:master:(1) 47.025854] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 47.025854] [msg_test/INFO] Sending "Task_19" to "Jackson"
 > [Soucy:slave:(6) 47.062262] [msg_test/INFO] "Task_18" done
-> [Jacquelin:master:(1) 48.360969] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 48.360969] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
 > [Jackson:forwarder:(2) 48.360969] [msg_test/INFO] Received "Task_19"
 > [Jackson:forwarder:(2) 48.360969] [msg_test/INFO] Sending "Task_19" to "Kuenning"
+> [Jacquelin:master:(1) 48.360969] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 48.360969] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
 > [Kuenning:slave:(7) 48.444592] [msg_test/INFO] Received "Task_19"
 > [Kuenning:slave:(7) 48.444592] [msg_test/INFO] Processing "Task_19"
 > [Kuenning:slave:(7) 48.502845] [msg_test/INFO] "Task_19" done
@@ -259,19 +259,19 @@ $ $SG_TEST_EXENV masterslave/masterslave_forwarder$EXEEXT ${srcdir:=.}/msg_platf
 > [Sirois:slave:(11) 53.491253] [msg_test/INFO] I'm done. See you!
 > [Soucy:slave:(6) 53.843975] [msg_test/INFO] Received "finalize"
 > [Soucy:slave:(6) 53.843975] [msg_test/INFO] I'm done. See you!
-> [Casavant:forwarder:(3) 54.200695] [msg_test/INFO] I'm done. See you!
 > [Monique:slave:(12) 54.200695] [msg_test/INFO] Received "finalize"
 > [Monique:slave:(12) 54.200695] [msg_test/INFO] I'm done. See you!
-> [Jacquelin:master:(1) 54.524622] [msg_test/INFO] Goodbye now!
+> [Casavant:forwarder:(3) 54.200695] [msg_test/INFO] I'm done. See you!
 > [Jackson:forwarder:(2) 54.524622] [msg_test/INFO] Received "finalize"
 > [Jackson:forwarder:(2) 54.524622] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
+> [Jacquelin:master:(1) 54.524622] [msg_test/INFO] Goodbye now!
 > [Kuenning:slave:(7) 54.529294] [msg_test/INFO] Received "finalize"
 > [Kuenning:slave:(7) 54.529294] [msg_test/INFO] I'm done. See you!
 > [Browne:slave:(8) 55.971757] [msg_test/INFO] Received "finalize"
 > [Browne:slave:(8) 55.971757] [msg_test/INFO] I'm done. See you!
-> [Jackson:forwarder:(2) 58.132075] [msg_test/INFO] I'm done. See you!
 > [Stephen:slave:(9) 58.132075] [msg_test/INFO] Received "finalize"
 > [Stephen:slave:(9) 58.132075] [msg_test/INFO] I'm done. See you!
+> [Jackson:forwarder:(2) 58.132075] [msg_test/INFO] I'm done. See you!
 > [58.132075] [msg_test/INFO] Simulation time 58.1321
 
 p Testing a simple master/slave example application handling failures
@@ -293,161 +293,67 @@ $ masterslave/masterslave_failure$EXEEXT --log=xbt_cfg.thres:critical --log=no_l
 > [Jupiter:slave:(3) 0.821304] [msg_test/INFO] "Task" done
 > [Jupiter:slave:(3) 1.100000] [msg_test/INFO] Gloups. The cpu on which I'm running just turned off!. See you!
 > [Tremblay:master:(1) 10.165962] [msg_test/INFO] Mmh. Something went wrong with 'Fafard'. Nevermind. Let's keep going!
-> [Tremblay:master:(1) 10.306421] [msg_test/INFO] Send completed
 > [Ginette:slave:(4) 10.306421] [msg_test/INFO] Received "Task"
 > [Ginette:slave:(4) 10.306421] [msg_test/INFO] Communication time : "0.140460"
 > [Ginette:slave:(4) 10.306421] [msg_test/INFO] Processing "Task"
-> [Tremblay:master:(1) 10.522294] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 10.306421] [msg_test/INFO] Send completed
 > [Bourassa:slave:(5) 10.522294] [msg_test/INFO] Received "Task"
 > [Bourassa:slave:(5) 10.522294] [msg_test/INFO] Communication time : "0.215872"
 > [Bourassa:slave:(5) 10.522294] [msg_test/INFO] Processing "Task"
-> [Tremblay:master:(1) 10.524632] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 10.522294] [msg_test/INFO] Send completed
 > [Tremblay:slave:(2) 10.524632] [msg_test/INFO] Received "Task"
 > [Tremblay:slave:(2) 10.524632] [msg_test/INFO] Communication time : "0.002339"
 > [Tremblay:slave:(2) 10.524632] [msg_test/INFO] Processing "Task"
+> [Tremblay:master:(1) 10.524632] [msg_test/INFO] Send completed
 > [Tremblay:slave:(2) 11.034342] [msg_test/INFO] "Task" done
 > [Ginette:slave:(4) 11.337519] [msg_test/INFO] "Task" done
 > [Bourassa:slave:(5) 11.553392] [msg_test/INFO] "Task" done
 > [Tremblay:master:(1) 20.524632] [msg_test/INFO] Mmh. Something went wrong with 'Jupiter'. Nevermind. Let's keep going!
 > [Tremblay:master:(1) 30.524632] [msg_test/INFO] Mmh. Something went wrong with 'Fafard'. Nevermind. Let's keep going!
-> [Tremblay:master:(1) 30.524632] [msg_test/INFO] Mmh. Something went wrong with 'Ginette'. Nevermind. Let's keep going!
 > [Ginette:slave:(4) 30.524632] [msg_test/INFO] Mmh. Something went wrong. Nevermind. Let's keep going!
-> [Tremblay:master:(1) 30.740505] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 30.524632] [msg_test/INFO] Mmh. Something went wrong with 'Ginette'. Nevermind. Let's keep going!
 > [Bourassa:slave:(5) 30.740505] [msg_test/INFO] Received "Task"
 > [Bourassa:slave:(5) 30.740505] [msg_test/INFO] Communication time : "0.215872"
 > [Bourassa:slave:(5) 30.740505] [msg_test/INFO] Processing "Task"
-> [Tremblay:master:(1) 30.742843] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 30.740505] [msg_test/INFO] Send completed
 > [Tremblay:slave:(2) 30.742843] [msg_test/INFO] Received "Task"
 > [Tremblay:slave:(2) 30.742843] [msg_test/INFO] Communication time : "0.002339"
 > [Tremblay:slave:(2) 30.742843] [msg_test/INFO] Processing "Task"
+> [Tremblay:master:(1) 30.742843] [msg_test/INFO] Send completed
 > [Tremblay:slave:(2) 31.252553] [msg_test/INFO] "Task" done
 > [Bourassa:slave:(5) 31.771603] [msg_test/INFO] "Task" done
 > [Tremblay:master:(1) 40.742843] [msg_test/INFO] Mmh. Something went wrong with 'Jupiter'. Nevermind. Let's keep going!
 > [Tremblay:master:(1) 50.742843] [msg_test/INFO] Mmh. Something went wrong with 'Fafard'. Nevermind. Let's keep going!
-> [Tremblay:master:(1) 50.883303] [msg_test/INFO] Send completed
 > [Ginette:slave:(4) 50.883303] [msg_test/INFO] Received "Task"
 > [Ginette:slave:(4) 50.883303] [msg_test/INFO] Communication time : "0.140460"
 > [Ginette:slave:(4) 50.883303] [msg_test/INFO] Processing "Task"
-> [Tremblay:master:(1) 51.099175] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 50.883303] [msg_test/INFO] Send completed
 > [Bourassa:slave:(5) 51.099175] [msg_test/INFO] Received "Task"
 > [Bourassa:slave:(5) 51.099175] [msg_test/INFO] Communication time : "0.215872"
 > [Bourassa:slave:(5) 51.099175] [msg_test/INFO] Processing "Task"
-> [Tremblay:master:(1) 51.101514] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 51.099175] [msg_test/INFO] Send completed
 > [Tremblay:slave:(2) 51.101514] [msg_test/INFO] Received "Task"
 > [Tremblay:slave:(2) 51.101514] [msg_test/INFO] Communication time : "0.002339"
 > [Tremblay:slave:(2) 51.101514] [msg_test/INFO] Processing "Task"
+> [Tremblay:master:(1) 51.101514] [msg_test/INFO] Send completed
 > [Tremblay:slave:(2) 51.611224] [msg_test/INFO] "Task" done
 > [Ginette:slave:(4) 51.914401] [msg_test/INFO] "Task" done
 > [Bourassa:slave:(5) 52.130273] [msg_test/INFO] "Task" done
 > [Tremblay:master:(1) 61.101514] [msg_test/INFO] Mmh. Something went wrong with 'Jupiter'. Nevermind. Let's keep going!
 > [Tremblay:master:(1) 71.101514] [msg_test/INFO] Mmh. Something went wrong with 'Fafard'. Nevermind. Let's keep going!
-> [Tremblay:master:(1) 71.241973] [msg_test/INFO] Send completed
 > [Ginette:slave:(4) 71.241973] [msg_test/INFO] Received "Task"
 > [Ginette:slave:(4) 71.241973] [msg_test/INFO] Communication time : "0.140460"
 > [Ginette:slave:(4) 71.241973] [msg_test/INFO] Processing "Task"
-> [Tremblay:master:(1) 71.457846] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 71.241973] [msg_test/INFO] Send completed
 > [Bourassa:slave:(5) 71.457846] [msg_test/INFO] Received "Task"
 > [Bourassa:slave:(5) 71.457846] [msg_test/INFO] Communication time : "0.215872"
 > [Bourassa:slave:(5) 71.457846] [msg_test/INFO] Processing "Task"
-> [Tremblay:master:(1) 71.460184] [msg_test/INFO] Send completed
-> [Tremblay:master:(1) 71.460184] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
+> [Tremblay:master:(1) 71.457846] [msg_test/INFO] Send completed
 > [Tremblay:slave:(2) 71.460184] [msg_test/INFO] Received "Task"
 > [Tremblay:slave:(2) 71.460184] [msg_test/INFO] Communication time : "0.002339"
 > [Tremblay:slave:(2) 71.460184] [msg_test/INFO] Processing "Task"
-> [Tremblay:slave:(2) 71.969894] [msg_test/INFO] "Task" done
-> [Ginette:slave:(4) 72.273071] [msg_test/INFO] "Task" done
-> [Tremblay:master:(1) 72.460184] [msg_test/INFO] Mmh. Can't reach 'Jupiter'! Nevermind. Let's keep going!
-> [Bourassa:slave:(5) 72.488944] [msg_test/INFO] "Task" done
-> [Tremblay:master:(1) 73.460184] [msg_test/INFO] Mmh. Can't reach 'Fafard'! Nevermind. Let's keep going!
-> [Ginette:slave:(4) 73.473416] [msg_test/INFO] Received "finalize"
-> [Ginette:slave:(4) 73.473416] [msg_test/INFO] I'm done. See you!
-> [Bourassa:slave:(5) 73.493752] [msg_test/INFO] Received "finalize"
-> [Bourassa:slave:(5) 73.493752] [msg_test/INFO] I'm done. See you!
-> [Tremblay:master:(1) 73.493908] [msg_test/INFO] Goodbye now!
-> [Tremblay:slave:(2) 73.493908] [msg_test/INFO] Received "finalize"
-> [Tremblay:slave:(2) 73.493908] [msg_test/INFO] I'm done. See you!
-> [73.493908] [msg_test/INFO] Simulation time 73.4939
-
-p Testing a simple master/slave example application handling failures
-
-$ masterslave/masterslave_failure$EXEEXT --log=xbt_cfg.thres:critical --log=no_loc ${srcdir:=.}/small_platform_with_failures.xml ${srcdir:=.}/masterslave/deployment_masterslave.xml --cfg=path:${srcdir} --cfg=cpu_model:CpuTI
-> [0.000000] [surf_config/INFO] Switching workstation model to compound since you changed the network and/or cpu model(s)
-> [0.000000] [simix_process/WARNING] Cannot launch process 'slave' on failed host 'Fafard'
-> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Got 5 slave(s) :
-> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Jupiter
-> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Fafard
-> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Ginette
-> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Bourassa
-> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Tremblay
-> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Got 20 task to process :
-> [Tremblay:master:(1) 0.165962] [msg_test/INFO] Send completed
-> [Jupiter:slave:(3) 0.165962] [msg_test/INFO] Received "Task"
-> [Jupiter:slave:(3) 0.165962] [msg_test/INFO] Communication time : "0.165962"
-> [Jupiter:slave:(3) 0.165962] [msg_test/INFO] Processing "Task"
-> [Jupiter:slave:(3) 0.821304] [msg_test/INFO] "Task" done
-> [Jupiter:slave:(3) 1.100000] [msg_test/INFO] Gloups. The cpu on which I'm running just turned off!. See you!
-> [Tremblay:master:(1) 10.165962] [msg_test/INFO] Mmh. Something went wrong with 'Fafard'. Nevermind. Let's keep going!
-> [Tremblay:master:(1) 10.306421] [msg_test/INFO] Send completed
-> [Ginette:slave:(4) 10.306421] [msg_test/INFO] Received "Task"
-> [Ginette:slave:(4) 10.306421] [msg_test/INFO] Communication time : "0.140460"
-> [Ginette:slave:(4) 10.306421] [msg_test/INFO] Processing "Task"
-> [Tremblay:master:(1) 10.522294] [msg_test/INFO] Send completed
-> [Bourassa:slave:(5) 10.522294] [msg_test/INFO] Received "Task"
-> [Bourassa:slave:(5) 10.522294] [msg_test/INFO] Communication time : "0.215872"
-> [Bourassa:slave:(5) 10.522294] [msg_test/INFO] Processing "Task"
-> [Tremblay:master:(1) 10.524632] [msg_test/INFO] Send completed
-> [Tremblay:slave:(2) 10.524632] [msg_test/INFO] Received "Task"
-> [Tremblay:slave:(2) 10.524632] [msg_test/INFO] Communication time : "0.002339"
-> [Tremblay:slave:(2) 10.524632] [msg_test/INFO] Processing "Task"
-> [Tremblay:slave:(2) 11.034342] [msg_test/INFO] "Task" done
-> [Ginette:slave:(4) 11.337519] [msg_test/INFO] "Task" done
-> [Bourassa:slave:(5) 11.553392] [msg_test/INFO] "Task" done
-> [Tremblay:master:(1) 20.524632] [msg_test/INFO] Mmh. Something went wrong with 'Jupiter'. Nevermind. Let's keep going!
-> [Tremblay:master:(1) 30.524632] [msg_test/INFO] Mmh. Something went wrong with 'Fafard'. Nevermind. Let's keep going!
-> [Tremblay:master:(1) 30.524632] [msg_test/INFO] Mmh. Something went wrong with 'Ginette'. Nevermind. Let's keep going!
-> [Ginette:slave:(4) 30.524632] [msg_test/INFO] Mmh. Something went wrong. Nevermind. Let's keep going!
-> [Tremblay:master:(1) 30.740505] [msg_test/INFO] Send completed
-> [Bourassa:slave:(5) 30.740505] [msg_test/INFO] Received "Task"
-> [Bourassa:slave:(5) 30.740505] [msg_test/INFO] Communication time : "0.215872"
-> [Bourassa:slave:(5) 30.740505] [msg_test/INFO] Processing "Task"
-> [Tremblay:master:(1) 30.742843] [msg_test/INFO] Send completed
-> [Tremblay:slave:(2) 30.742843] [msg_test/INFO] Received "Task"
-> [Tremblay:slave:(2) 30.742843] [msg_test/INFO] Communication time : "0.002339"
-> [Tremblay:slave:(2) 30.742843] [msg_test/INFO] Processing "Task"
-> [Tremblay:slave:(2) 31.252553] [msg_test/INFO] "Task" done
-> [Bourassa:slave:(5) 31.771603] [msg_test/INFO] "Task" done
-> [Tremblay:master:(1) 40.742843] [msg_test/INFO] Mmh. Something went wrong with 'Jupiter'. Nevermind. Let's keep going!
-> [Tremblay:master:(1) 50.742843] [msg_test/INFO] Mmh. Something went wrong with 'Fafard'. Nevermind. Let's keep going!
-> [Tremblay:master:(1) 50.883303] [msg_test/INFO] Send completed
-> [Ginette:slave:(4) 50.883303] [msg_test/INFO] Received "Task"
-> [Ginette:slave:(4) 50.883303] [msg_test/INFO] Communication time : "0.140460"
-> [Ginette:slave:(4) 50.883303] [msg_test/INFO] Processing "Task"
-> [Tremblay:master:(1) 51.099175] [msg_test/INFO] Send completed
-> [Bourassa:slave:(5) 51.099175] [msg_test/INFO] Received "Task"
-> [Bourassa:slave:(5) 51.099175] [msg_test/INFO] Communication time : "0.215872"
-> [Bourassa:slave:(5) 51.099175] [msg_test/INFO] Processing "Task"
-> [Tremblay:master:(1) 51.101514] [msg_test/INFO] Send completed
-> [Tremblay:slave:(2) 51.101514] [msg_test/INFO] Received "Task"
-> [Tremblay:slave:(2) 51.101514] [msg_test/INFO] Communication time : "0.002339"
-> [Tremblay:slave:(2) 51.101514] [msg_test/INFO] Processing "Task"
-> [Tremblay:slave:(2) 51.611224] [msg_test/INFO] "Task" done
-> [Ginette:slave:(4) 51.914401] [msg_test/INFO] "Task" done
-> [Bourassa:slave:(5) 52.130273] [msg_test/INFO] "Task" done
-> [Tremblay:master:(1) 61.101514] [msg_test/INFO] Mmh. Something went wrong with 'Jupiter'. Nevermind. Let's keep going!
-> [Tremblay:master:(1) 71.101514] [msg_test/INFO] Mmh. Something went wrong with 'Fafard'. Nevermind. Let's keep going!
-> [Tremblay:master:(1) 71.241973] [msg_test/INFO] Send completed
-> [Ginette:slave:(4) 71.241973] [msg_test/INFO] Received "Task"
-> [Ginette:slave:(4) 71.241973] [msg_test/INFO] Communication time : "0.140460"
-> [Ginette:slave:(4) 71.241973] [msg_test/INFO] Processing "Task"
-> [Tremblay:master:(1) 71.457846] [msg_test/INFO] Send completed
-> [Bourassa:slave:(5) 71.457846] [msg_test/INFO] Received "Task"
-> [Bourassa:slave:(5) 71.457846] [msg_test/INFO] Communication time : "0.215872"
-> [Bourassa:slave:(5) 71.457846] [msg_test/INFO] Processing "Task"
 > [Tremblay:master:(1) 71.460184] [msg_test/INFO] Send completed
 > [Tremblay:master:(1) 71.460184] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
-> [Tremblay:slave:(2) 71.460184] [msg_test/INFO] Received "Task"
-> [Tremblay:slave:(2) 71.460184] [msg_test/INFO] Communication time : "0.002339"
-> [Tremblay:slave:(2) 71.460184] [msg_test/INFO] Processing "Task"
 > [Tremblay:slave:(2) 71.969894] [msg_test/INFO] "Task" done
 > [Ginette:slave:(4) 72.273071] [msg_test/INFO] "Task" done
 > [Tremblay:master:(1) 72.460184] [msg_test/INFO] Mmh. Can't reach 'Jupiter'! Nevermind. Let's keep going!
@@ -457,9 +363,9 @@ $ masterslave/masterslave_failure$EXEEXT --log=xbt_cfg.thres:critical --log=no_l
 > [Ginette:slave:(4) 73.473416] [msg_test/INFO] I'm done. See you!
 > [Bourassa:slave:(5) 73.493752] [msg_test/INFO] Received "finalize"
 > [Bourassa:slave:(5) 73.493752] [msg_test/INFO] I'm done. See you!
-> [Tremblay:master:(1) 73.493908] [msg_test/INFO] Goodbye now!
 > [Tremblay:slave:(2) 73.493908] [msg_test/INFO] Received "finalize"
 > [Tremblay:slave:(2) 73.493908] [msg_test/INFO] I'm done. See you!
+> [Tremblay:master:(1) 73.493908] [msg_test/INFO] Goodbye now!
 > [73.493908] [msg_test/INFO] Simulation time 73.4939
 
 p Testing the bypassing of the flexml parser
index 9b7c5bd..582b8c8 100644 (file)
@@ -18,67 +18,67 @@ $ masterslave/masterslave_failure$EXEEXT --log=xbt_cfg.thres:critical --log=no_l
 > [Jupiter:slave:(3) 0.821304] [msg_test/INFO] "Task" done
 > [Jupiter:slave:(3) 1.100000] [msg_test/INFO] Gloups. The cpu on which I'm running just turned off!. See you!
 > [Tremblay:master:(1) 10.165962] [msg_test/INFO] Mmh. Something went wrong with 'Fafard'. Nevermind. Let's keep going!
-> [Tremblay:master:(1) 10.306421] [msg_test/INFO] Send completed
 > [Ginette:slave:(4) 10.306421] [msg_test/INFO] Received "Task"
 > [Ginette:slave:(4) 10.306421] [msg_test/INFO] Communication time : "0.140460"
 > [Ginette:slave:(4) 10.306421] [msg_test/INFO] Processing "Task"
-> [Tremblay:master:(1) 10.522294] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 10.306421] [msg_test/INFO] Send completed
 > [Bourassa:slave:(5) 10.522294] [msg_test/INFO] Received "Task"
 > [Bourassa:slave:(5) 10.522294] [msg_test/INFO] Communication time : "0.215872"
 > [Bourassa:slave:(5) 10.522294] [msg_test/INFO] Processing "Task"
-> [Tremblay:master:(1) 10.524632] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 10.522294] [msg_test/INFO] Send completed
 > [Tremblay:slave:(2) 10.524632] [msg_test/INFO] Received "Task"
 > [Tremblay:slave:(2) 10.524632] [msg_test/INFO] Communication time : "0.002339"
 > [Tremblay:slave:(2) 10.524632] [msg_test/INFO] Processing "Task"
+> [Tremblay:master:(1) 10.524632] [msg_test/INFO] Send completed
 > [Tremblay:slave:(2) 11.034342] [msg_test/INFO] "Task" done
 > [Ginette:slave:(4) 11.337519] [msg_test/INFO] "Task" done
 > [Bourassa:slave:(5) 11.553392] [msg_test/INFO] "Task" done
 > [Tremblay:master:(1) 20.524632] [msg_test/INFO] Mmh. Something went wrong with 'Jupiter'. Nevermind. Let's keep going!
 > [Tremblay:master:(1) 30.524632] [msg_test/INFO] Mmh. Something went wrong with 'Fafard'. Nevermind. Let's keep going!
-> [Tremblay:master:(1) 30.524632] [msg_test/INFO] Mmh. Something went wrong with 'Ginette'. Nevermind. Let's keep going!
 > [Ginette:slave:(4) 30.524632] [msg_test/INFO] Mmh. Something went wrong. Nevermind. Let's keep going!
-> [Tremblay:master:(1) 30.740505] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 30.524632] [msg_test/INFO] Mmh. Something went wrong with 'Ginette'. Nevermind. Let's keep going!
 > [Bourassa:slave:(5) 30.740505] [msg_test/INFO] Received "Task"
 > [Bourassa:slave:(5) 30.740505] [msg_test/INFO] Communication time : "0.215872"
 > [Bourassa:slave:(5) 30.740505] [msg_test/INFO] Processing "Task"
-> [Tremblay:master:(1) 30.742843] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 30.740505] [msg_test/INFO] Send completed
 > [Tremblay:slave:(2) 30.742843] [msg_test/INFO] Received "Task"
 > [Tremblay:slave:(2) 30.742843] [msg_test/INFO] Communication time : "0.002339"
 > [Tremblay:slave:(2) 30.742843] [msg_test/INFO] Processing "Task"
+> [Tremblay:master:(1) 30.742843] [msg_test/INFO] Send completed
 > [Tremblay:slave:(2) 31.252553] [msg_test/INFO] "Task" done
 > [Bourassa:slave:(5) 31.771603] [msg_test/INFO] "Task" done
 > [Tremblay:master:(1) 40.742843] [msg_test/INFO] Mmh. Something went wrong with 'Jupiter'. Nevermind. Let's keep going!
 > [Tremblay:master:(1) 50.742843] [msg_test/INFO] Mmh. Something went wrong with 'Fafard'. Nevermind. Let's keep going!
-> [Tremblay:master:(1) 50.883303] [msg_test/INFO] Send completed
 > [Ginette:slave:(4) 50.883303] [msg_test/INFO] Received "Task"
 > [Ginette:slave:(4) 50.883303] [msg_test/INFO] Communication time : "0.140460"
 > [Ginette:slave:(4) 50.883303] [msg_test/INFO] Processing "Task"
-> [Tremblay:master:(1) 51.099175] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 50.883303] [msg_test/INFO] Send completed
 > [Bourassa:slave:(5) 51.099175] [msg_test/INFO] Received "Task"
 > [Bourassa:slave:(5) 51.099175] [msg_test/INFO] Communication time : "0.215872"
 > [Bourassa:slave:(5) 51.099175] [msg_test/INFO] Processing "Task"
-> [Tremblay:master:(1) 51.101514] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 51.099175] [msg_test/INFO] Send completed
 > [Tremblay:slave:(2) 51.101514] [msg_test/INFO] Received "Task"
 > [Tremblay:slave:(2) 51.101514] [msg_test/INFO] Communication time : "0.002339"
 > [Tremblay:slave:(2) 51.101514] [msg_test/INFO] Processing "Task"
+> [Tremblay:master:(1) 51.101514] [msg_test/INFO] Send completed
 > [Tremblay:slave:(2) 51.611224] [msg_test/INFO] "Task" done
 > [Ginette:slave:(4) 51.914401] [msg_test/INFO] "Task" done
 > [Bourassa:slave:(5) 52.130273] [msg_test/INFO] "Task" done
 > [Tremblay:master:(1) 61.101514] [msg_test/INFO] Mmh. Something went wrong with 'Jupiter'. Nevermind. Let's keep going!
 > [Tremblay:master:(1) 71.101514] [msg_test/INFO] Mmh. Something went wrong with 'Fafard'. Nevermind. Let's keep going!
-> [Tremblay:master:(1) 71.241973] [msg_test/INFO] Send completed
 > [Ginette:slave:(4) 71.241973] [msg_test/INFO] Received "Task"
 > [Ginette:slave:(4) 71.241973] [msg_test/INFO] Communication time : "0.140460"
 > [Ginette:slave:(4) 71.241973] [msg_test/INFO] Processing "Task"
-> [Tremblay:master:(1) 71.457846] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 71.241973] [msg_test/INFO] Send completed
 > [Bourassa:slave:(5) 71.457846] [msg_test/INFO] Received "Task"
 > [Bourassa:slave:(5) 71.457846] [msg_test/INFO] Communication time : "0.215872"
 > [Bourassa:slave:(5) 71.457846] [msg_test/INFO] Processing "Task"
-> [Tremblay:master:(1) 71.460184] [msg_test/INFO] Send completed
-> [Tremblay:master:(1) 71.460184] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
+> [Tremblay:master:(1) 71.457846] [msg_test/INFO] Send completed
 > [Tremblay:slave:(2) 71.460184] [msg_test/INFO] Received "Task"
 > [Tremblay:slave:(2) 71.460184] [msg_test/INFO] Communication time : "0.002339"
 > [Tremblay:slave:(2) 71.460184] [msg_test/INFO] Processing "Task"
+> [Tremblay:master:(1) 71.460184] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 71.460184] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
 > [Tremblay:slave:(2) 71.969894] [msg_test/INFO] "Task" done
 > [Ginette:slave:(4) 72.273071] [msg_test/INFO] "Task" done
 > [Tremblay:master:(1) 72.460184] [msg_test/INFO] Mmh. Can't reach 'Jupiter'! Nevermind. Let's keep going!
@@ -88,7 +88,7 @@ $ masterslave/masterslave_failure$EXEEXT --log=xbt_cfg.thres:critical --log=no_l
 > [Ginette:slave:(4) 73.473416] [msg_test/INFO] I'm done. See you!
 > [Bourassa:slave:(5) 73.493752] [msg_test/INFO] Received "finalize"
 > [Bourassa:slave:(5) 73.493752] [msg_test/INFO] I'm done. See you!
-> [Tremblay:master:(1) 73.493908] [msg_test/INFO] Goodbye now!
 > [Tremblay:slave:(2) 73.493908] [msg_test/INFO] Received "finalize"
 > [Tremblay:slave:(2) 73.493908] [msg_test/INFO] I'm done. See you!
+> [Tremblay:master:(1) 73.493908] [msg_test/INFO] Goodbye now!
 > [73.493908] [msg_test/INFO] Simulation time 73.4939
index 1335626..82e2702 100644 (file)
@@ -10,114 +10,114 @@ $ $SG_TEST_EXENV masterslave/masterslave_forwarder$EXEEXT ${srcdir:=.}/msg_platf
 > [iRMX:slave:(4) 4.772530] [msg_test/INFO] Received "Task_0"
 > [iRMX:slave:(4) 4.772530] [msg_test/INFO] Processing "Task_0"
 > [iRMX:slave:(4) 4.845345] [msg_test/INFO] "Task_0" done
-> [Jacquelin:master:(1) 6.900351] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 6.900351] [msg_test/INFO] Sending "Task_2" to "Bousquet"
 > [Casavant:forwarder:(3) 6.900351] [msg_test/INFO] Received "Task_1"
 > [Casavant:forwarder:(3) 6.900351] [msg_test/INFO] Sending "Task_1" to "Robert"
-> [Jacquelin:master:(1) 8.491392] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 8.491392] [msg_test/INFO] Sending "Task_3" to "Soucy"
+> [Jacquelin:master:(1) 6.900351] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 6.900351] [msg_test/INFO] Sending "Task_2" to "Bousquet"
 > [Bousquet:slave:(5) 8.491392] [msg_test/INFO] Received "Task_2"
 > [Bousquet:slave:(5) 8.491392] [msg_test/INFO] Processing "Task_2"
+> [Jacquelin:master:(1) 8.491392] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 8.491392] [msg_test/INFO] Sending "Task_3" to "Soucy"
 > [Bousquet:slave:(5) 8.607896] [msg_test/INFO] "Task_2" done
 > [Robert:slave:(10) 9.260549] [msg_test/INFO] Received "Task_1"
 > [Robert:slave:(10) 9.260549] [msg_test/INFO] Processing "Task_1"
 > [Robert:slave:(10) 9.296956] [msg_test/INFO] "Task_1" done
-> [Jacquelin:master:(1) 10.755127] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 10.755127] [msg_test/INFO] Sending "Task_4" to "Jackson"
 > [Soucy:slave:(6) 10.755127] [msg_test/INFO] Received "Task_3"
 > [Soucy:slave:(6) 10.755127] [msg_test/INFO] Processing "Task_3"
+> [Jacquelin:master:(1) 10.755127] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 10.755127] [msg_test/INFO] Sending "Task_4" to "Jackson"
 > [Soucy:slave:(6) 10.791535] [msg_test/INFO] "Task_3" done
-> [Jacquelin:master:(1) 12.090242] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 12.090242] [msg_test/INFO] Sending "Task_5" to "iRMX"
 > [Jackson:forwarder:(2) 12.090242] [msg_test/INFO] Received "Task_4"
 > [Jackson:forwarder:(2) 12.090242] [msg_test/INFO] Sending "Task_4" to "Kuenning"
+> [Jacquelin:master:(1) 12.090242] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 12.090242] [msg_test/INFO] Sending "Task_5" to "iRMX"
 > [Kuenning:slave:(7) 12.173866] [msg_test/INFO] Received "Task_4"
 > [Kuenning:slave:(7) 12.173866] [msg_test/INFO] Processing "Task_4"
 > [Kuenning:slave:(7) 12.232118] [msg_test/INFO] "Task_4" done
-> [Jacquelin:master:(1) 16.862772] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 16.862772] [msg_test/INFO] Sending "Task_6" to "Casavant"
 > [iRMX:slave:(4) 16.862772] [msg_test/INFO] Received "Task_5"
 > [iRMX:slave:(4) 16.862772] [msg_test/INFO] Processing "Task_5"
+> [Jacquelin:master:(1) 16.862772] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 16.862772] [msg_test/INFO] Sending "Task_6" to "Casavant"
 > [iRMX:slave:(4) 16.935587] [msg_test/INFO] "Task_5" done
-> [Jacquelin:master:(1) 18.990593] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 18.990593] [msg_test/INFO] Sending "Task_7" to "Bousquet"
 > [Casavant:forwarder:(3) 18.990593] [msg_test/INFO] Received "Task_6"
 > [Casavant:forwarder:(3) 18.990593] [msg_test/INFO] Sending "Task_6" to "Sirois"
+> [Jacquelin:master:(1) 18.990593] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 18.990593] [msg_test/INFO] Sending "Task_7" to "Bousquet"
 > [Sirois:slave:(11) 19.793293] [msg_test/INFO] Received "Task_6"
 > [Sirois:slave:(11) 19.793293] [msg_test/INFO] Processing "Task_6"
 > [Sirois:slave:(11) 19.836983] [msg_test/INFO] "Task_6" done
-> [Jacquelin:master:(1) 20.581634] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 20.581634] [msg_test/INFO] Sending "Task_8" to "Soucy"
 > [Bousquet:slave:(5) 20.581634] [msg_test/INFO] Received "Task_7"
 > [Bousquet:slave:(5) 20.581634] [msg_test/INFO] Processing "Task_7"
+> [Jacquelin:master:(1) 20.581634] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 20.581634] [msg_test/INFO] Sending "Task_8" to "Soucy"
 > [Bousquet:slave:(5) 20.698138] [msg_test/INFO] "Task_7" done
-> [Jacquelin:master:(1) 22.845369] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 22.845369] [msg_test/INFO] Sending "Task_9" to "Jackson"
 > [Soucy:slave:(6) 22.845369] [msg_test/INFO] Received "Task_8"
 > [Soucy:slave:(6) 22.845369] [msg_test/INFO] Processing "Task_8"
+> [Jacquelin:master:(1) 22.845369] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 22.845369] [msg_test/INFO] Sending "Task_9" to "Jackson"
 > [Soucy:slave:(6) 22.881777] [msg_test/INFO] "Task_8" done
-> [Jacquelin:master:(1) 24.180485] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 24.180485] [msg_test/INFO] Sending "Task_10" to "iRMX"
 > [Jackson:forwarder:(2) 24.180485] [msg_test/INFO] Received "Task_9"
 > [Jackson:forwarder:(2) 24.180485] [msg_test/INFO] Sending "Task_9" to "Browne"
+> [Jacquelin:master:(1) 24.180485] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 24.180485] [msg_test/INFO] Sending "Task_10" to "iRMX"
 > [Browne:slave:(8) 27.009931] [msg_test/INFO] Received "Task_9"
 > [Browne:slave:(8) 27.009931] [msg_test/INFO] Processing "Task_9"
 > [Browne:slave:(8) 27.046339] [msg_test/INFO] "Task_9" done
-> [Jacquelin:master:(1) 28.953014] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 28.953014] [msg_test/INFO] Sending "Task_11" to "Casavant"
 > [iRMX:slave:(4) 28.953014] [msg_test/INFO] Received "Task_10"
 > [iRMX:slave:(4) 28.953014] [msg_test/INFO] Processing "Task_10"
+> [Jacquelin:master:(1) 28.953014] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 28.953014] [msg_test/INFO] Sending "Task_11" to "Casavant"
 > [iRMX:slave:(4) 29.025830] [msg_test/INFO] "Task_10" done
-> [Jacquelin:master:(1) 31.080835] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 31.080835] [msg_test/INFO] Sending "Task_12" to "Bousquet"
 > [Casavant:forwarder:(3) 31.080835] [msg_test/INFO] Received "Task_11"
 > [Casavant:forwarder:(3) 31.080835] [msg_test/INFO] Sending "Task_11" to "Monique"
+> [Jacquelin:master:(1) 31.080835] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 31.080835] [msg_test/INFO] Sending "Task_12" to "Bousquet"
 > [Monique:slave:(12) 32.472434] [msg_test/INFO] Received "Task_11"
 > [Monique:slave:(12) 32.472434] [msg_test/INFO] Processing "Task_11"
 > [Monique:slave:(12) 32.516124] [msg_test/INFO] "Task_11" done
-> [Jacquelin:master:(1) 32.671876] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 32.671876] [msg_test/INFO] Sending "Task_13" to "Soucy"
 > [Bousquet:slave:(5) 32.671876] [msg_test/INFO] Received "Task_12"
 > [Bousquet:slave:(5) 32.671876] [msg_test/INFO] Processing "Task_12"
+> [Jacquelin:master:(1) 32.671876] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 32.671876] [msg_test/INFO] Sending "Task_13" to "Soucy"
 > [Bousquet:slave:(5) 32.788380] [msg_test/INFO] "Task_12" done
-> [Jacquelin:master:(1) 34.935611] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 34.935611] [msg_test/INFO] Sending "Task_14" to "Jackson"
 > [Soucy:slave:(6) 34.935611] [msg_test/INFO] Received "Task_13"
 > [Soucy:slave:(6) 34.935611] [msg_test/INFO] Processing "Task_13"
+> [Jacquelin:master:(1) 34.935611] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 34.935611] [msg_test/INFO] Sending "Task_14" to "Jackson"
 > [Soucy:slave:(6) 34.972019] [msg_test/INFO] "Task_13" done
-> [Jacquelin:master:(1) 36.270727] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 36.270727] [msg_test/INFO] Sending "Task_15" to "iRMX"
 > [Jackson:forwarder:(2) 36.270727] [msg_test/INFO] Received "Task_14"
 > [Jackson:forwarder:(2) 36.270727] [msg_test/INFO] Sending "Task_14" to "Stephen"
+> [Jacquelin:master:(1) 36.270727] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 36.270727] [msg_test/INFO] Sending "Task_15" to "iRMX"
 > [Stephen:slave:(9) 40.508273] [msg_test/INFO] Received "Task_14"
 > [Stephen:slave:(9) 40.508273] [msg_test/INFO] Processing "Task_14"
 > [Stephen:slave:(9) 40.581088] [msg_test/INFO] "Task_14" done
-> [Jacquelin:master:(1) 41.043257] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 41.043257] [msg_test/INFO] Sending "Task_16" to "Casavant"
 > [iRMX:slave:(4) 41.043257] [msg_test/INFO] Received "Task_15"
 > [iRMX:slave:(4) 41.043257] [msg_test/INFO] Processing "Task_15"
+> [Jacquelin:master:(1) 41.043257] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 41.043257] [msg_test/INFO] Sending "Task_16" to "Casavant"
 > [iRMX:slave:(4) 41.116072] [msg_test/INFO] "Task_15" done
-> [Jacquelin:master:(1) 43.171078] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 43.171078] [msg_test/INFO] Sending "Task_17" to "Bousquet"
 > [Casavant:forwarder:(3) 43.171078] [msg_test/INFO] Received "Task_16"
 > [Casavant:forwarder:(3) 43.171078] [msg_test/INFO] Sending "Task_16" to "Robert"
-> [Jacquelin:master:(1) 44.762118] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 44.762118] [msg_test/INFO] Sending "Task_18" to "Soucy"
+> [Jacquelin:master:(1) 43.171078] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 43.171078] [msg_test/INFO] Sending "Task_17" to "Bousquet"
 > [Bousquet:slave:(5) 44.762118] [msg_test/INFO] Received "Task_17"
 > [Bousquet:slave:(5) 44.762118] [msg_test/INFO] Processing "Task_17"
+> [Jacquelin:master:(1) 44.762118] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 44.762118] [msg_test/INFO] Sending "Task_18" to "Soucy"
 > [Bousquet:slave:(5) 44.878622] [msg_test/INFO] "Task_17" done
 > [Robert:slave:(10) 45.531275] [msg_test/INFO] Received "Task_16"
 > [Robert:slave:(10) 45.531275] [msg_test/INFO] Processing "Task_16"
 > [Robert:slave:(10) 45.567683] [msg_test/INFO] "Task_16" done
-> [Jacquelin:master:(1) 47.025854] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 47.025854] [msg_test/INFO] Sending "Task_19" to "Jackson"
 > [Soucy:slave:(6) 47.025854] [msg_test/INFO] Received "Task_18"
 > [Soucy:slave:(6) 47.025854] [msg_test/INFO] Processing "Task_18"
+> [Jacquelin:master:(1) 47.025854] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 47.025854] [msg_test/INFO] Sending "Task_19" to "Jackson"
 > [Soucy:slave:(6) 47.062262] [msg_test/INFO] "Task_18" done
-> [Jacquelin:master:(1) 48.360969] [msg_test/INFO] Sent
-> [Jacquelin:master:(1) 48.360969] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
 > [Jackson:forwarder:(2) 48.360969] [msg_test/INFO] Received "Task_19"
 > [Jackson:forwarder:(2) 48.360969] [msg_test/INFO] Sending "Task_19" to "Kuenning"
+> [Jacquelin:master:(1) 48.360969] [msg_test/INFO] Sent
+> [Jacquelin:master:(1) 48.360969] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
 > [Kuenning:slave:(7) 48.444592] [msg_test/INFO] Received "Task_19"
 > [Kuenning:slave:(7) 48.444592] [msg_test/INFO] Processing "Task_19"
 > [Kuenning:slave:(7) 48.502845] [msg_test/INFO] "Task_19" done
@@ -133,17 +133,17 @@ $ $SG_TEST_EXENV masterslave/masterslave_forwarder$EXEEXT ${srcdir:=.}/msg_platf
 > [Sirois:slave:(11) 53.491253] [msg_test/INFO] I'm done. See you!
 > [Soucy:slave:(6) 53.843975] [msg_test/INFO] Received "finalize"
 > [Soucy:slave:(6) 53.843975] [msg_test/INFO] I'm done. See you!
-> [Casavant:forwarder:(3) 54.200695] [msg_test/INFO] I'm done. See you!
 > [Monique:slave:(12) 54.200695] [msg_test/INFO] Received "finalize"
 > [Monique:slave:(12) 54.200695] [msg_test/INFO] I'm done. See you!
-> [Jacquelin:master:(1) 54.524622] [msg_test/INFO] Goodbye now!
+> [Casavant:forwarder:(3) 54.200695] [msg_test/INFO] I'm done. See you!
 > [Jackson:forwarder:(2) 54.524622] [msg_test/INFO] Received "finalize"
 > [Jackson:forwarder:(2) 54.524622] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
+> [Jacquelin:master:(1) 54.524622] [msg_test/INFO] Goodbye now!
 > [Kuenning:slave:(7) 54.529294] [msg_test/INFO] Received "finalize"
 > [Kuenning:slave:(7) 54.529294] [msg_test/INFO] I'm done. See you!
 > [Browne:slave:(8) 55.971757] [msg_test/INFO] Received "finalize"
 > [Browne:slave:(8) 55.971757] [msg_test/INFO] I'm done. See you!
-> [Jackson:forwarder:(2) 58.132075] [msg_test/INFO] I'm done. See you!
 > [Stephen:slave:(9) 58.132075] [msg_test/INFO] Received "finalize"
 > [Stephen:slave:(9) 58.132075] [msg_test/INFO] I'm done. See you!
+> [Jackson:forwarder:(2) 58.132075] [msg_test/INFO] I'm done. See you!
 > [58.132075] [msg_test/INFO] Simulation time 58.1321
index ac8da62..0260a97 100644 (file)
@@ -196,9 +196,10 @@ smx_comm_t SIMIX_communication_new(smx_comm_type_t type, smx_rdv_t rdv);
 void SIMIX_communication_destroy(smx_comm_t comm);
 static inline void SIMIX_communication_use(smx_comm_t comm);
 static inline void SIMIX_communication_wait_for_completion(smx_comm_t comm, double timeout);
-smx_comm_t SIMIX_rdv_get_request(smx_rdv_t rvp, int (filter)(smx_comm_t, void *), void *arg);
-static inline void SIMIX_rdv_push(smx_rdv_t rvp, smx_comm_t comm);
-static inline smx_cond_t SIMIX_rdv_get_cond(smx_rdv_t rvp);
+smx_comm_t SIMIX_rdv_get_request(smx_rdv_t rdv, int (filter)(smx_comm_t, void *), void *arg);
+static inline void SIMIX_rdv_push(smx_rdv_t rdv, smx_comm_t comm);
+static inline void SIMIX_rdv_remove(smx_rdv_t rdv, smx_comm_t comm);
+static inline smx_cond_t SIMIX_rdv_get_cond(smx_rdv_t rdv);
 void SIMIX_network_copy_data(smx_comm_t comm);
 
 SG_END_DECL()
index 8d40e0e..3e45a08 100644 (file)
@@ -135,10 +135,10 @@ typedef struct s_smx_comm {
   smx_rdv_t rdv;
   smx_cond_t cond;
   smx_action_t act;
-  void *data;
-  size_t data_size;
-  void *dest_buff;
-  size_t *dest_buff_size;
+  void *src_buff;
+  size_t src_buff_size;
+  void *dst_buff;
+  size_t *dst_buff_size;
   double rate;
   double task_size;
   int refcount;
index 4e2a96c..400e8d0 100644 (file)
@@ -23,56 +23,66 @@ XBT_LOG_NEW_DEFAULT_SUBCATEGORY(simix_network, simix,
  */
 smx_rdv_t SIMIX_rdv_create(const char *name)
 {
-  smx_rdv_t rvp = xbt_new0(s_smx_rvpoint_t, 1);
-  rvp->name = name ? xbt_strdup(name) : NULL;
-  rvp->read = SIMIX_mutex_init();
-  rvp->write = SIMIX_mutex_init();
-  rvp->comm_fifo = xbt_fifo_new();
+  smx_rdv_t rdv = xbt_new0(s_smx_rvpoint_t, 1);
+  rdv->name = name ? xbt_strdup(name) : NULL;
+  rdv->read = SIMIX_mutex_init();
+  rdv->write = SIMIX_mutex_init();
+  rdv->comm_fifo = xbt_fifo_new();
 
-  return rvp;
+  return rdv;
 }
 
 /**
  *  \brief Destroy a rendez-vous point
  *  \param name The rendez-vous point to destroy
  */
-void SIMIX_rdv_destroy(smx_rdv_t rvp)
+void SIMIX_rdv_destroy(smx_rdv_t rdv)
 {
-  if(rvp->name)
-    xbt_free(rvp->name);
-  SIMIX_mutex_destroy(rvp->read);
-  SIMIX_mutex_destroy(rvp->write);
-  xbt_fifo_free(rvp->comm_fifo);
-  xbt_free(rvp);
+  if(rdv->name)
+    xbt_free(rdv->name);
+  SIMIX_mutex_destroy(rdv->read);
+  SIMIX_mutex_destroy(rdv->write);
+  xbt_fifo_free(rdv->comm_fifo);
+  xbt_free(rdv);
 }
 
 /**
  *  \brief Push a communication request into a rendez-vous point
- *  The communications request are dequeued by the two functions below
- *  \param rvp The rendez-vous point
+ *  \param rdv The rendez-vous point
  *  \param comm The communication request
  */
-static inline void SIMIX_rdv_push(smx_rdv_t rvp, smx_comm_t comm)
+static inline void SIMIX_rdv_push(smx_rdv_t rdv, smx_comm_t comm)
 {
-  xbt_fifo_push(rvp->comm_fifo, comm);
+  xbt_fifo_push(rdv->comm_fifo, comm);
 }
 
+/**
+ *  \brief Remove a communication request from a rendez-vous point
+ *  \param rdv The rendez-vous point
+ *  \param comm The communication request
+ */
+static inline void SIMIX_rdv_remove(smx_rdv_t rdv, smx_comm_t comm)
+{
+  xbt_fifo_remove(rdv->comm_fifo, comm);
+}
+  
+
 /**
  *  \brief Checks if there is a communication request queued in a rendez-vous matching our needs
- *  \param rvp The rendez-vous with the queue
+ *  \param rdv The rendez-vous with the queue
  *  \param look_for_src boolean. True: we are receiver looking for sender; False: other way round
  *  \return The communication request if found, or a newly created one otherwise.
  */
-smx_comm_t SIMIX_rdv_get_request(smx_rdv_t rvp, int (filter)(smx_comm_t, void*), void *arg) {
+smx_comm_t SIMIX_rdv_get_request(smx_rdv_t rdv, int (filter)(smx_comm_t, void*), void *arg) {
   smx_comm_t comm;
   xbt_fifo_item_t item;
 
   /* Traverse the rendez-vous queue looking for a comm request matching the
      filter conditions. If found return it and remove it from the list. */
-  xbt_fifo_foreach(rvp->comm_fifo, item, comm, smx_comm_t) {
+  xbt_fifo_foreach(rdv->comm_fifo, item, comm, smx_comm_t) {
     if(filter(comm, arg)){
       SIMIX_communication_use(comm);
-      xbt_fifo_remove_item(rvp->comm_fifo, item);
+      xbt_fifo_remove_item(rdv->comm_fifo, item);
       DEBUG1("Communication request found! %p", comm);
       return comm;
     }
@@ -145,7 +155,8 @@ static inline void SIMIX_communication_start(smx_comm_t comm)
     DEBUG1("Starting communication %p", comm);
     comm->act = SIMIX_action_communicate(comm->src_host, comm->dst_host, NULL, 
                                          comm->task_size, comm->rate);
-    /* Add the communication as user data into the action, so it can be reached from it later */
+
+    /* Add the communication as user data of the action */
     comm->act->data = comm;
     
     SIMIX_register_action_to_condition(comm->act, comm->cond);
@@ -178,10 +189,12 @@ static inline void SIMIX_communication_wait_for_completion(smx_comm_t comm, doub
       /* If it's a timeout then cancel the communication and signal the other peer */
       if(e.category == timeout_error){
         DEBUG1("Communication timeout! %p", comm);
-        if(SIMIX_action_get_state(comm->act) == SURF_ACTION_RUNNING)
+        if(comm->act && SIMIX_action_get_state(comm->act) == SURF_ACTION_RUNNING)
           SIMIX_action_cancel(comm->act);
+        else
+          SIMIX_rdv_remove(comm->rdv, comm);
+          
         SIMIX_cond_signal(comm->cond);
-        /* FIXME: remove from the rvp if the communication didn't started */
         SIMIX_communication_destroy(comm);
       }
       RETHROW;
@@ -193,12 +206,9 @@ static inline void SIMIX_communication_wait_for_completion(smx_comm_t comm, doub
   DEBUG1("Communication %p complete! Let's check for errors", comm);
   
   /* Check for errors */
-  if (SIMIX_host_get_state(comm->dst_host) == 0){
+  if(!SIMIX_host_get_state(SIMIX_host_self())){
     SIMIX_communication_destroy(comm);
-    THROW1(host_error, 0, "Destination host %s failed", comm->dst_host->name);
-  } else if (SIMIX_host_get_state(comm->src_host) == 0){
-    SIMIX_communication_destroy(comm);
-    THROW1(host_error, 0, "Source host %s failed", comm->src_host->name);
+    THROW0(host_error, 0, "Host failed");
   } else if (SIMIX_action_get_state(comm->act) == SURF_ACTION_FAILED){
     SIMIX_communication_destroy(comm);
     THROW0(network_error, 0, "Link failure");
@@ -213,35 +223,19 @@ static inline void SIMIX_communication_wait_for_completion(smx_comm_t comm, doub
  */
 void SIMIX_network_copy_data(smx_comm_t comm)
 {
-  /* Copy the minimum between the size of the sender's message and the size of the
-     receiver's buffer */
-  *comm->dest_buff_size = *comm->dest_buff_size < comm->data_size ? 
-                            *comm->dest_buff_size : comm->data_size;
+  size_t src_buff_size = comm->src_buff_size;
+  size_t dst_buff_size = *comm->dst_buff_size;
 
-  DEBUG4("Copying comm %p data from %s -> %s (%zu bytes)", comm, 
-         comm->src_host->name, comm->dst_host->name, *comm->dest_buff_size);
+  /* Copy at most dst_buff_size bytes of the message to receiver's buffer */
+  dst_buff_size = MIN(dst_buff_size, src_buff_size);
 
-  memcpy(comm->dest_buff, comm->data, *comm->dest_buff_size);
-}
+  /* Update the receiver's buffer size to the copied amount */
+  *comm->dst_buff_size = dst_buff_size;
 
-/**
- *  \brief Checks if a communication is a send request
- *  \param comm The communication
- *  \return Boolean value
- */
-int SIMIX_communication_isSend(smx_comm_t comm)
-{
-  return comm->type == comm_send ? TRUE : FALSE;
-}
+  memcpy(comm->dst_buff, comm->src_buff, dst_buff_size);
 
-/**
- *  \brief Checks if a communication is a recv request
- *  \param comm The communication
- *  \return Boolean value
- */
-int SIMIX_communication_isRecv(smx_comm_t comm)
-{
-  return comm->type == comm_recv ? TRUE : FALSE;
+  DEBUG4("Copying comm %p data from %s -> %s (%zu bytes)", 
+         comm, comm->src_host->name, comm->dst_host->name, dst_buff_size);
 }
 
 /* FIXME: move to some other place */
@@ -288,14 +282,13 @@ void SIMIX_network_send(smx_rdv_t rdv, double task_size, double rate,
   comm->src_host = SIMIX_host_self();
   comm->task_size = task_size;
   comm->rate = rate;
-  comm->data = data;
-  comm->data_size = data_size;
+  comm->src_buff = data;
+  comm->src_buff_size = data_size;
 
   SIMIX_communication_start(comm);
 
   /* Wait for communication completion */
   /* FIXME: if the semantic is non blocking, it shouldn't wait on the condition here */
-  /* FIXME: add timeout checking stuff */
   SIMIX_communication_wait_for_completion(comm, timeout);
 
   SIMIX_communication_destroy(comm);
@@ -322,14 +315,13 @@ void SIMIX_network_recv(smx_rdv_t rdv, double timeout, void *data,
 
   /* Setup communication request */
   comm->dst_host = SIMIX_host_self();
-  comm->dest_buff = data;
-  comm->dest_buff_size = data_size;
+  comm->dst_buff = data;
+  comm->dst_buff_size = data_size;
 
   SIMIX_communication_start(comm);
 
   /* Wait for communication completion */
   /* FIXME: if the semantic is non blocking, it shouldn't wait on the condition here */
-  /* FIXME: add timeout checking stuff */
   SIMIX_communication_wait_for_completion(comm, timeout);
 
   SIMIX_communication_destroy(comm);
@@ -343,9 +335,9 @@ void SIMIX_network_recv(smx_rdv_t rdv, double timeout, void *data,
 void SIMIX_network_wait(smx_action_t comm, double timeout)
 {
     if (timeout > 0)
-      SIMIX_cond_wait_timeout(rvp_cond, rvp_comm_mutex, timeout - start_time);
+      SIMIX_cond_wait_timeout(rdv_cond, rdv_comm_mutex, timeout - start_time);
     else
-      SIMIX_cond_wait(rvp_cond, rvp_comm_mutex);    
+      SIMIX_cond_wait(rdv_cond, rdv_comm_mutex);    
 
 }