Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
finish the convertion of tests to TESH
authormquinson <mquinson@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Wed, 4 Jul 2007 08:52:35 +0000 (08:52 +0000)
committermquinson <mquinson@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Wed, 4 Jul 2007 08:52:35 +0000 (08:52 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@3654 48e7efb5-ca39-0410-a469-dd3cf9ba447f

examples/msg/Makefile.am
examples/msg/Makefile.in
examples/msg/basic.tesh [new file with mode: 0644]
examples/msg/flexml_bypass.tesh [new file with mode: 0644]
examples/msg/small_plat.tesh [new file with mode: 0644]
examples/msg/suspend.tesh [new file with mode: 0644]

index 2d6b937..bf452f9 100644 (file)
@@ -1,7 +1,7 @@
 INCLUDES= -I$(top_srcdir)/include
 AM_CFLAGS=-g
 EXTRA_DIST= msg_deployment.xml msg_platform.xml small_platform.xml small_deployment.xml msg_deployment_suspend.xml \
 INCLUDES= -I$(top_srcdir)/include
 AM_CFLAGS=-g
 EXTRA_DIST= msg_deployment.xml msg_platform.xml small_platform.xml small_deployment.xml msg_deployment_suspend.xml \
-            basic.tesh.in small_plat.tesh.in suspend.tesh.in flexml_bypass.tesh.in
+            flexml_bypass.tesh
 
 CLEANFILES=msg_test.trace
 
 
 CLEANFILES=msg_test.trace
 
index fa3b8f4..50e0cab 100644 (file)
@@ -234,7 +234,7 @@ target_os = @target_os@
 target_vendor = @target_vendor@
 INCLUDES = -I$(top_srcdir)/include
 EXTRA_DIST = msg_deployment.xml msg_platform.xml small_platform.xml small_deployment.xml msg_deployment_suspend.xml \
 target_vendor = @target_vendor@
 INCLUDES = -I$(top_srcdir)/include
 EXTRA_DIST = msg_deployment.xml msg_platform.xml small_platform.xml small_deployment.xml msg_deployment_suspend.xml \
-            basic.tesh.in small_plat.tesh.in suspend.tesh.in flexml_bypass.tesh.in
+            flexml_bypass.tesh
 
 CLEANFILES = msg_test.trace
 TESTS_ENVIRONMENT = $(top_builddir)/tools/tesh/tesh
 
 CLEANFILES = msg_test.trace
 TESTS_ENVIRONMENT = $(top_builddir)/tools/tesh/tesh
diff --git a/examples/msg/basic.tesh b/examples/msg/basic.tesh
new file mode 100644 (file)
index 0000000..d9e4540
--- /dev/null
@@ -0,0 +1,175 @@
+
+p Testing MSG on a "large" platform
+
+! timeout no
+$ $SG_TEST_EXENV ./msg_test ./msg_platform.xml ./msg_deployment.xml
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO] Got 5 slave(s) :
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]       iRMX
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]       Casavant
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]       Bousquet
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]       Soucy
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]       Jackson
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO] Got 20 task to process :
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]      "Task_0"
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]      "Task_1"
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]      "Task_2"
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]      "Task_3"
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]      "Task_4"
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]      "Task_5"
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]      "Task_6"
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]      "Task_7"
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]      "Task_8"
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]      "Task_9"
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]      "Task_10"
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]      "Task_11"
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]      "Task_12"
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]      "Task_13"
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]      "Task_14"
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]      "Task_15"
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]      "Task_16"
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]      "Task_17"
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]      "Task_18"
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO]      "Task_19"
+> [Jacquelin:master:(1) 0.000000] [msg_test/INFO] Sending "Task_0" to "iRMX"
+> [Jacquelin:master:(1) 2.573423] [msg_test/INFO] Send completed
+> [Jacquelin:master:(1) 2.573423] [msg_test/INFO] Sending "Task_1" to "Casavant"
+> [iRMX:slave:(4) 2.573423] [msg_test/INFO] Received "Task_0" 
+> [iRMX:slave:(4) 2.573423] [msg_test/INFO] Processing "Task_0" 
+> [iRMX:slave:(4) 2.646238] [msg_test/INFO] "Task_0" done 
+> [Jacquelin:master:(1) 3.720777] [msg_test/INFO] Send completed
+> [Jacquelin:master:(1) 3.720777] [msg_test/INFO] Sending "Task_2" to "Bousquet"
+> [Casavant:forwarder:(3) 3.720777] [msg_test/INFO] Received "Task_1" 
+> [Casavant:forwarder:(3) 3.720777] [msg_test/INFO] Sending "Task_1" to "Robert"
+> [Jacquelin:master:(1) 4.578692] [msg_test/INFO] Send completed
+> [Jacquelin:master:(1) 4.578692] [msg_test/INFO] Sending "Task_3" to "Soucy"
+> [Bousquet:slave:(5) 4.578692] [msg_test/INFO] Received "Task_2" 
+> [Bousquet:slave:(5) 4.578692] [msg_test/INFO] Processing "Task_2" 
+> [Bousquet:slave:(5) 4.695195] [msg_test/INFO] "Task_2" done 
+> [Robert:slave:(10) 4.993433] [msg_test/INFO] Received "Task_1" 
+> [Robert:slave:(10) 4.993433] [msg_test/INFO] Processing "Task_1" 
+> [Robert:slave:(10) 5.029841] [msg_test/INFO] "Task_1" done 
+> [Jacquelin:master:(1) 5.799333] [msg_test/INFO] Send completed
+> [Jacquelin:master:(1) 5.799333] [msg_test/INFO] Sending "Task_4" to "Jackson"
+> [Soucy:slave:(6) 5.799333] [msg_test/INFO] Received "Task_3" 
+> [Soucy:slave:(6) 5.799333] [msg_test/INFO] Processing "Task_3" 
+> [Soucy:slave:(6) 5.835741] [msg_test/INFO] "Task_3" done 
+> [Jacquelin:master:(1) 6.519248] [msg_test/INFO] Send completed
+> [Jacquelin:master:(1) 6.519248] [msg_test/INFO] Sending "Task_5" to "iRMX"
+> [Jackson:forwarder:(2) 6.519248] [msg_test/INFO] Received "Task_4" 
+> [Jackson:forwarder:(2) 6.519248] [msg_test/INFO] Sending "Task_4" to "Kuenning"
+> [Kuenning:slave:(7) 6.592332] [msg_test/INFO] Received "Task_4" 
+> [Kuenning:slave:(7) 6.592332] [msg_test/INFO] Processing "Task_4" 
+> [Kuenning:slave:(7) 6.650585] [msg_test/INFO] "Task_4" done 
+> [Jacquelin:master:(1) 9.092671] [msg_test/INFO] Send completed
+> [Jacquelin:master:(1) 9.092671] [msg_test/INFO] Sending "Task_6" to "Casavant"
+> [iRMX:slave:(4) 9.092671] [msg_test/INFO] Received "Task_5" 
+> [iRMX:slave:(4) 9.092671] [msg_test/INFO] Processing "Task_5" 
+> [iRMX:slave:(4) 9.165486] [msg_test/INFO] "Task_5" done 
+> [Jacquelin:master:(1) 10.240026] [msg_test/INFO] Send completed
+> [Jacquelin:master:(1) 10.240026] [msg_test/INFO] Sending "Task_7" to "Bousquet"
+> [Casavant:forwarder:(3) 10.240026] [msg_test/INFO] Received "Task_6" 
+> [Casavant:forwarder:(3) 10.240026] [msg_test/INFO] Sending "Task_6" to "Sirois"
+> [Sirois:slave:(11) 10.672854] [msg_test/INFO] Received "Task_6" 
+> [Sirois:slave:(11) 10.672854] [msg_test/INFO] Processing "Task_6" 
+> [Sirois:slave:(11) 10.716544] [msg_test/INFO] "Task_6" done 
+> [Jacquelin:master:(1) 11.097940] [msg_test/INFO] Send completed
+> [Jacquelin:master:(1) 11.097940] [msg_test/INFO] Sending "Task_8" to "Soucy"
+> [Bousquet:slave:(5) 11.097940] [msg_test/INFO] Received "Task_7" 
+> [Bousquet:slave:(5) 11.097940] [msg_test/INFO] Processing "Task_7" 
+> [Bousquet:slave:(5) 11.214444] [msg_test/INFO] "Task_7" done 
+> [Jacquelin:master:(1) 12.318581] [msg_test/INFO] Send completed
+> [Jacquelin:master:(1) 12.318581] [msg_test/INFO] Sending "Task_9" to "Jackson"
+> [Soucy:slave:(6) 12.318581] [msg_test/INFO] Received "Task_8" 
+> [Soucy:slave:(6) 12.318581] [msg_test/INFO] Processing "Task_8" 
+> [Soucy:slave:(6) 12.354989] [msg_test/INFO] "Task_8" done 
+> [Jacquelin:master:(1) 13.038497] [msg_test/INFO] Send completed
+> [Jacquelin:master:(1) 13.038497] [msg_test/INFO] Sending "Task_10" to "iRMX"
+> [Jackson:forwarder:(2) 13.038497] [msg_test/INFO] Received "Task_9" 
+> [Jackson:forwarder:(2) 13.038497] [msg_test/INFO] Sending "Task_9" to "Browne"
+> [Browne:slave:(8) 14.564178] [msg_test/INFO] Received "Task_9" 
+> [Browne:slave:(8) 14.564178] [msg_test/INFO] Processing "Task_9" 
+> [Browne:slave:(8) 14.600586] [msg_test/INFO] "Task_9" done 
+> [Jacquelin:master:(1) 15.611920] [msg_test/INFO] Send completed
+> [Jacquelin:master:(1) 15.611920] [msg_test/INFO] Sending "Task_11" to "Casavant"
+> [iRMX:slave:(4) 15.611920] [msg_test/INFO] Received "Task_10" 
+> [iRMX:slave:(4) 15.611920] [msg_test/INFO] Processing "Task_10" 
+> [iRMX:slave:(4) 15.684735] [msg_test/INFO] "Task_10" done 
+> [Jacquelin:master:(1) 16.759274] [msg_test/INFO] Send completed
+> [Jacquelin:master:(1) 16.759274] [msg_test/INFO] Sending "Task_12" to "Bousquet"
+> [Casavant:forwarder:(3) 16.759274] [msg_test/INFO] Received "Task_11" 
+> [Casavant:forwarder:(3) 16.759274] [msg_test/INFO] Sending "Task_11" to "Monique"
+> [Monique:slave:(12) 17.509646] [msg_test/INFO] Received "Task_11" 
+> [Monique:slave:(12) 17.509646] [msg_test/INFO] Processing "Task_11" 
+> [Monique:slave:(12) 17.553336] [msg_test/INFO] "Task_11" done 
+> [Jacquelin:master:(1) 17.617188] [msg_test/INFO] Send completed
+> [Jacquelin:master:(1) 17.617188] [msg_test/INFO] Sending "Task_13" to "Soucy"
+> [Bousquet:slave:(5) 17.617188] [msg_test/INFO] Received "Task_12" 
+> [Bousquet:slave:(5) 17.617188] [msg_test/INFO] Processing "Task_12" 
+> [Bousquet:slave:(5) 17.733692] [msg_test/INFO] "Task_12" done 
+> [Jacquelin:master:(1) 18.837830] [msg_test/INFO] Send completed
+> [Jacquelin:master:(1) 18.837830] [msg_test/INFO] Sending "Task_14" to "Jackson"
+> [Soucy:slave:(6) 18.837830] [msg_test/INFO] Received "Task_13" 
+> [Soucy:slave:(6) 18.837830] [msg_test/INFO] Processing "Task_13" 
+> [Soucy:slave:(6) 18.874238] [msg_test/INFO] "Task_13" done 
+> [Jacquelin:master:(1) 19.557745] [msg_test/INFO] Send completed
+> [Jacquelin:master:(1) 19.557745] [msg_test/INFO] Sending "Task_15" to "iRMX"
+> [Jackson:forwarder:(2) 19.557745] [msg_test/INFO] Received "Task_14" 
+> [Jackson:forwarder:(2) 19.557745] [msg_test/INFO] Sending "Task_14" to "Stephen"
+> [Stephen:slave:(9) 21.842696] [msg_test/INFO] Received "Task_14" 
+> [Stephen:slave:(9) 21.842696] [msg_test/INFO] Processing "Task_14" 
+> [Stephen:slave:(9) 21.915511] [msg_test/INFO] "Task_14" done 
+> [Jacquelin:master:(1) 22.131168] [msg_test/INFO] Send completed
+> [Jacquelin:master:(1) 22.131168] [msg_test/INFO] Sending "Task_16" to "Casavant"
+> [iRMX:slave:(4) 22.131168] [msg_test/INFO] Received "Task_15" 
+> [iRMX:slave:(4) 22.131168] [msg_test/INFO] Processing "Task_15" 
+> [iRMX:slave:(4) 22.203983] [msg_test/INFO] "Task_15" done 
+> [Jacquelin:master:(1) 23.278522] [msg_test/INFO] Send completed
+> [Jacquelin:master:(1) 23.278522] [msg_test/INFO] Sending "Task_17" to "Bousquet"
+> [Casavant:forwarder:(3) 23.278522] [msg_test/INFO] Received "Task_16" 
+> [Casavant:forwarder:(3) 23.278522] [msg_test/INFO] Sending "Task_16" to "Robert"
+> [Jacquelin:master:(1) 24.136436] [msg_test/INFO] Send completed
+> [Jacquelin:master:(1) 24.136436] [msg_test/INFO] Sending "Task_18" to "Soucy"
+> [Bousquet:slave:(5) 24.136436] [msg_test/INFO] Received "Task_17" 
+> [Bousquet:slave:(5) 24.136436] [msg_test/INFO] Processing "Task_17" 
+> [Bousquet:slave:(5) 24.252940] [msg_test/INFO] "Task_17" done 
+> [Robert:slave:(10) 24.551178] [msg_test/INFO] Received "Task_16" 
+> [Robert:slave:(10) 24.551178] [msg_test/INFO] Processing "Task_16" 
+> [Robert:slave:(10) 24.587586] [msg_test/INFO] "Task_16" done 
+> [Jacquelin:master:(1) 25.357078] [msg_test/INFO] Send completed
+> [Jacquelin:master:(1) 25.357078] [msg_test/INFO] Sending "Task_19" to "Jackson"
+> [Soucy:slave:(6) 25.357078] [msg_test/INFO] Received "Task_18" 
+> [Soucy:slave:(6) 25.357078] [msg_test/INFO] Processing "Task_18" 
+> [Soucy:slave:(6) 25.393486] [msg_test/INFO] "Task_18" done 
+> [Jacquelin:master:(1) 26.076993] [msg_test/INFO] Send completed
+> [Jacquelin:master:(1) 26.076993] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
+> [Jackson:forwarder:(2) 26.076993] [msg_test/INFO] Received "Task_19" 
+> [Jackson:forwarder:(2) 26.076993] [msg_test/INFO] Sending "Task_19" to "Kuenning"
+> [Kuenning:slave:(7) 26.150077] [msg_test/INFO] Received "Task_19" 
+> [Kuenning:slave:(7) 26.150077] [msg_test/INFO] Processing "Task_19" 
+> [Kuenning:slave:(7) 26.208330] [msg_test/INFO] "Task_19" done 
+> [iRMX:slave:(4) 26.310941] [msg_test/INFO] Received "finalize" 
+> [iRMX:slave:(4) 26.310941] [msg_test/INFO] I'm done. See you!
+> [Casavant:forwarder:(3) 26.415246] [msg_test/INFO] Received "finalize" 
+> [Casavant:forwarder:(3) 26.415246] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
+> [Bousquet:slave:(5) 26.493238] [msg_test/INFO] Received "finalize" 
+> [Bousquet:slave:(5) 26.493238] [msg_test/INFO] I'm done. See you!
+> [Robert:slave:(10) 26.530942] [msg_test/INFO] Received "finalize" 
+> [Robert:slave:(10) 26.530942] [msg_test/INFO] I'm done. See you!
+> [Sirois:slave:(11) 26.570290] [msg_test/INFO] Received "finalize" 
+> [Sirois:slave:(11) 26.570290] [msg_test/INFO] I'm done. See you!
+> [Soucy:slave:(6) 26.604205] [msg_test/INFO] Received "finalize" 
+> [Soucy:slave:(6) 26.604205] [msg_test/INFO] I'm done. See you!
+> [Casavant:forwarder:(3) 26.638505] [msg_test/INFO] I'm done. See you!
+> [Monique:slave:(12) 26.638505] [msg_test/INFO] Received "finalize" 
+> [Monique:slave:(12) 26.638505] [msg_test/INFO] I'm done. See you!
+> [Jacquelin:master:(1) 26.669652] [msg_test/INFO] Goodbye now!
+> [Jackson:forwarder:(2) 26.669652] [msg_test/INFO] Received "finalize" 
+> [Jackson:forwarder:(2) 26.669652] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
+> [Kuenning:slave:(7) 26.670101] [msg_test/INFO] Received "finalize" 
+> [Kuenning:slave:(7) 26.670101] [msg_test/INFO] I'm done. See you!
+> [Browne:slave:(8) 26.808800] [msg_test/INFO] Received "finalize" 
+> [Browne:slave:(8) 26.808800] [msg_test/INFO] I'm done. See you!
+> [Jackson:forwarder:(2) 27.016523] [msg_test/INFO] I'm done. See you!
+> [Stephen:slave:(9) 27.016523] [msg_test/INFO] Received "finalize" 
+> [Stephen:slave:(9) 27.016523] [msg_test/INFO] I'm done. See you!
+> [27.016523] [msg_test/INFO] Simulation time 27.0165
diff --git a/examples/msg/flexml_bypass.tesh b/examples/msg/flexml_bypass.tesh
new file mode 100644 (file)
index 0000000..06b1f38
--- /dev/null
@@ -0,0 +1,134 @@
+#! ./tesh
+p Testing the bypassing of the flexml parser
+
+
+$ ./msg_test_surfxml_bypassed
+> [0.000000] surf/surfxml_parse.c:188: [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.
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO] Got 1 slave(s) :
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]   Cpu B
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO] Got 20 task to process :
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]  "Task_0"
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]  "Task_1"
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]  "Task_2"
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]  "Task_3"
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]  "Task_4"
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]  "Task_5"
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]  "Task_6"
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]  "Task_7"
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]  "Task_8"
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]  "Task_9"
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]  "Task_10"
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]  "Task_11"
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]  "Task_12"
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]  "Task_13"
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]  "Task_14"
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]  "Task_15"
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]  "Task_16"
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]  "Task_17"
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]  "Task_18"
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO]  "Task_19"
+> [Cpu A:master:(1) 0.000000] [msg_test/INFO] Sending "Task_0" to "Cpu B"
+> [Cpu A:master:(1) 2.200000] [msg_test/INFO] Send completed
+> [Cpu A:master:(1) 2.200000] [msg_test/INFO] Sending "Task_1" to "Cpu B"
+> [Cpu B:slave:(2) 2.200000] [msg_test/INFO] Received "Task_0" 
+> [Cpu B:slave:(2) 2.200000] [msg_test/INFO] Processing "Task_0" 
+> [Cpu B:slave:(2) 2.250000] [msg_test/INFO] "Task_0" done 
+> [Cpu A:master:(1) 4.450000] [msg_test/INFO] Send completed
+> [Cpu A:master:(1) 4.450000] [msg_test/INFO] Sending "Task_2" to "Cpu B"
+> [Cpu B:slave:(2) 4.450000] [msg_test/INFO] Received "Task_1" 
+> [Cpu B:slave:(2) 4.450000] [msg_test/INFO] Processing "Task_1" 
+> [Cpu B:slave:(2) 4.500000] [msg_test/INFO] "Task_1" done 
+> [Cpu A:master:(1) 6.700000] [msg_test/INFO] Send completed
+> [Cpu A:master:(1) 6.700000] [msg_test/INFO] Sending "Task_3" to "Cpu B"
+> [Cpu B:slave:(2) 6.700000] [msg_test/INFO] Received "Task_2" 
+> [Cpu B:slave:(2) 6.700000] [msg_test/INFO] Processing "Task_2" 
+> [Cpu B:slave:(2) 6.750000] [msg_test/INFO] "Task_2" done 
+> [Cpu A:master:(1) 8.950000] [msg_test/INFO] Send completed
+> [Cpu A:master:(1) 8.950000] [msg_test/INFO] Sending "Task_4" to "Cpu B"
+> [Cpu B:slave:(2) 8.950000] [msg_test/INFO] Received "Task_3" 
+> [Cpu B:slave:(2) 8.950000] [msg_test/INFO] Processing "Task_3" 
+> [Cpu B:slave:(2) 9.000000] [msg_test/INFO] "Task_3" done 
+> [Cpu A:master:(1) 11.200000] [msg_test/INFO] Send completed
+> [Cpu A:master:(1) 11.200000] [msg_test/INFO] Sending "Task_5" to "Cpu B"
+> [Cpu B:slave:(2) 11.200000] [msg_test/INFO] Received "Task_4" 
+> [Cpu B:slave:(2) 11.200000] [msg_test/INFO] Processing "Task_4" 
+> [Cpu B:slave:(2) 11.250000] [msg_test/INFO] "Task_4" done 
+> [Cpu A:master:(1) 13.450000] [msg_test/INFO] Send completed
+> [Cpu A:master:(1) 13.450000] [msg_test/INFO] Sending "Task_6" to "Cpu B"
+> [Cpu B:slave:(2) 13.450000] [msg_test/INFO] Received "Task_5" 
+> [Cpu B:slave:(2) 13.450000] [msg_test/INFO] Processing "Task_5" 
+> [Cpu B:slave:(2) 13.500000] [msg_test/INFO] "Task_5" done 
+> [Cpu A:master:(1) 15.700000] [msg_test/INFO] Send completed
+> [Cpu A:master:(1) 15.700000] [msg_test/INFO] Sending "Task_7" to "Cpu B"
+> [Cpu B:slave:(2) 15.700000] [msg_test/INFO] Received "Task_6" 
+> [Cpu B:slave:(2) 15.700000] [msg_test/INFO] Processing "Task_6" 
+> [Cpu B:slave:(2) 15.750000] [msg_test/INFO] "Task_6" done 
+> [Cpu A:master:(1) 17.950000] [msg_test/INFO] Send completed
+> [Cpu A:master:(1) 17.950000] [msg_test/INFO] Sending "Task_8" to "Cpu B"
+> [Cpu B:slave:(2) 17.950000] [msg_test/INFO] Received "Task_7" 
+> [Cpu B:slave:(2) 17.950000] [msg_test/INFO] Processing "Task_7" 
+> [Cpu B:slave:(2) 18.000000] [msg_test/INFO] "Task_7" done 
+> [Cpu A:master:(1) 20.200000] [msg_test/INFO] Send completed
+> [Cpu A:master:(1) 20.200000] [msg_test/INFO] Sending "Task_9" to "Cpu B"
+> [Cpu B:slave:(2) 20.200000] [msg_test/INFO] Received "Task_8" 
+> [Cpu B:slave:(2) 20.200000] [msg_test/INFO] Processing "Task_8" 
+> [Cpu B:slave:(2) 20.250000] [msg_test/INFO] "Task_8" done 
+> [Cpu A:master:(1) 22.450000] [msg_test/INFO] Send completed
+> [Cpu A:master:(1) 22.450000] [msg_test/INFO] Sending "Task_10" to "Cpu B"
+> [Cpu B:slave:(2) 22.450000] [msg_test/INFO] Received "Task_9" 
+> [Cpu B:slave:(2) 22.450000] [msg_test/INFO] Processing "Task_9" 
+> [Cpu B:slave:(2) 22.500000] [msg_test/INFO] "Task_9" done 
+> [Cpu A:master:(1) 24.700000] [msg_test/INFO] Send completed
+> [Cpu A:master:(1) 24.700000] [msg_test/INFO] Sending "Task_11" to "Cpu B"
+> [Cpu B:slave:(2) 24.700000] [msg_test/INFO] Received "Task_10" 
+> [Cpu B:slave:(2) 24.700000] [msg_test/INFO] Processing "Task_10" 
+> [Cpu B:slave:(2) 24.750000] [msg_test/INFO] "Task_10" done 
+> [Cpu A:master:(1) 26.950000] [msg_test/INFO] Send completed
+> [Cpu A:master:(1) 26.950000] [msg_test/INFO] Sending "Task_12" to "Cpu B"
+> [Cpu B:slave:(2) 26.950000] [msg_test/INFO] Received "Task_11" 
+> [Cpu B:slave:(2) 26.950000] [msg_test/INFO] Processing "Task_11" 
+> [Cpu B:slave:(2) 27.000000] [msg_test/INFO] "Task_11" done 
+> [Cpu A:master:(1) 29.200000] [msg_test/INFO] Send completed
+> [Cpu A:master:(1) 29.200000] [msg_test/INFO] Sending "Task_13" to "Cpu B"
+> [Cpu B:slave:(2) 29.200000] [msg_test/INFO] Received "Task_12" 
+> [Cpu B:slave:(2) 29.200000] [msg_test/INFO] Processing "Task_12" 
+> [Cpu B:slave:(2) 29.250000] [msg_test/INFO] "Task_12" done 
+> [Cpu A:master:(1) 31.450000] [msg_test/INFO] Send completed
+> [Cpu A:master:(1) 31.450000] [msg_test/INFO] Sending "Task_14" to "Cpu B"
+> [Cpu B:slave:(2) 31.450000] [msg_test/INFO] Received "Task_13" 
+> [Cpu B:slave:(2) 31.450000] [msg_test/INFO] Processing "Task_13" 
+> [Cpu B:slave:(2) 31.500000] [msg_test/INFO] "Task_13" done 
+> [Cpu A:master:(1) 33.700000] [msg_test/INFO] Send completed
+> [Cpu A:master:(1) 33.700000] [msg_test/INFO] Sending "Task_15" to "Cpu B"
+> [Cpu B:slave:(2) 33.700000] [msg_test/INFO] Received "Task_14" 
+> [Cpu B:slave:(2) 33.700000] [msg_test/INFO] Processing "Task_14" 
+> [Cpu B:slave:(2) 33.750000] [msg_test/INFO] "Task_14" done 
+> [Cpu A:master:(1) 35.950000] [msg_test/INFO] Send completed
+> [Cpu A:master:(1) 35.950000] [msg_test/INFO] Sending "Task_16" to "Cpu B"
+> [Cpu B:slave:(2) 35.950000] [msg_test/INFO] Received "Task_15" 
+> [Cpu B:slave:(2) 35.950000] [msg_test/INFO] Processing "Task_15" 
+> [Cpu B:slave:(2) 36.000000] [msg_test/INFO] "Task_15" done 
+> [Cpu A:master:(1) 38.200000] [msg_test/INFO] Send completed
+> [Cpu A:master:(1) 38.200000] [msg_test/INFO] Sending "Task_17" to "Cpu B"
+> [Cpu B:slave:(2) 38.200000] [msg_test/INFO] Received "Task_16" 
+> [Cpu B:slave:(2) 38.200000] [msg_test/INFO] Processing "Task_16" 
+> [Cpu B:slave:(2) 38.250000] [msg_test/INFO] "Task_16" done 
+> [Cpu A:master:(1) 40.450000] [msg_test/INFO] Send completed
+> [Cpu A:master:(1) 40.450000] [msg_test/INFO] Sending "Task_18" to "Cpu B"
+> [Cpu B:slave:(2) 40.450000] [msg_test/INFO] Received "Task_17" 
+> [Cpu B:slave:(2) 40.450000] [msg_test/INFO] Processing "Task_17" 
+> [Cpu B:slave:(2) 40.500000] [msg_test/INFO] "Task_17" done 
+> [Cpu A:master:(1) 42.700000] [msg_test/INFO] Send completed
+> [Cpu A:master:(1) 42.700000] [msg_test/INFO] Sending "Task_19" to "Cpu B"
+> [Cpu B:slave:(2) 42.700000] [msg_test/INFO] Received "Task_18" 
+> [Cpu B:slave:(2) 42.700000] [msg_test/INFO] Processing "Task_18" 
+> [Cpu B:slave:(2) 42.750000] [msg_test/INFO] "Task_18" done 
+> [Cpu A:master:(1) 44.950000] [msg_test/INFO] Send completed
+> [Cpu A:master:(1) 44.950000] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
+> [Cpu B:slave:(2) 44.950000] [msg_test/INFO] Received "Task_19" 
+> [Cpu B:slave:(2) 44.950000] [msg_test/INFO] Processing "Task_19" 
+> [Cpu B:slave:(2) 45.000000] [msg_test/INFO] "Task_19" done 
+> [Cpu A:master:(1) 45.200000] [msg_test/INFO] Goodbye now!
+> [Cpu B:slave:(2) 45.200000] [msg_test/INFO] Received "finalize" 
+> [Cpu B:slave:(2) 45.200000] [msg_test/INFO] I'm done. See you!
+> [45.200000] [msg_test/INFO] Simulation time 45.2
diff --git a/examples/msg/small_plat.tesh b/examples/msg/small_plat.tesh
new file mode 100644 (file)
index 0000000..d1c5e47
--- /dev/null
@@ -0,0 +1,148 @@
+
+p Testing MSG on a small platform
+
+$ $SG_TEST_EXENV ./msg_test ./small_platform.xml ./small_deployment.xml
+> [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.000000] [msg_test/INFO]       "Task_0"
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO]       "Task_1"
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO]       "Task_2"
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO]       "Task_3"
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO]       "Task_4"
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO]       "Task_5"
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO]       "Task_6"
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO]       "Task_7"
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO]       "Task_8"
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO]       "Task_9"
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO]       "Task_10"
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO]       "Task_11"
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO]       "Task_12"
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO]       "Task_13"
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO]       "Task_14"
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO]       "Task_15"
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO]       "Task_16"
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO]       "Task_17"
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO]       "Task_18"
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO]       "Task_19"
+> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Sending "Task_0" to "Jupiter"
+> [Tremblay:master:(1) 0.016077] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 0.016077] [msg_test/INFO] Sending "Task_1" to "Fafard"
+> [Jupiter:slave:(3) 0.016077] [msg_test/INFO] Received "Task_0" 
+> [Jupiter:slave:(3) 0.016077] [msg_test/INFO] Processing "Task_0" 
+> [Tremblay:master:(1) 0.037813] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 0.037813] [msg_test/INFO] Sending "Task_2" to "Ginette"
+> [Fafard:slave:(4) 0.037813] [msg_test/INFO] Received "Task_1" 
+> [Fafard:slave:(4) 0.037813] [msg_test/INFO] Processing "Task_1" 
+> [Tremblay:master:(1) 0.051808] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 0.051808] [msg_test/INFO] Sending "Task_3" to "Bourassa"
+> [Ginette:slave:(5) 0.051808] [msg_test/INFO] Received "Task_2" 
+> [Ginette:slave:(5) 0.051808] [msg_test/INFO] Processing "Task_2" 
+> [Tremblay:master:(1) 0.073317] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 0.073317] [msg_test/INFO] Sending "Task_4" to "Tremblay"
+> [Tremblay:master:(1) 0.073317] [msg_test/INFO] Hey ! It's me ! :)
+> [Bourassa:slave:(6) 0.073317] [msg_test/INFO] Received "Task_3" 
+> [Bourassa:slave:(6) 0.073317] [msg_test/INFO] Processing "Task_3" 
+> [Tremblay:master:(1) 0.073533] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 0.073533] [msg_test/INFO] Sending "Task_5" to "Jupiter"
+> [Tremblay:slave:(2) 0.073533] [msg_test/INFO] Received "Task_4" 
+> [Tremblay:slave:(2) 0.073533] [msg_test/INFO] Processing "Task_4" 
+> [Jupiter:slave:(3) 0.081611] [msg_test/INFO] "Task_0" done 
+> [Tremblay:master:(1) 0.097688] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 0.097688] [msg_test/INFO] Sending "Task_6" to "Fafard"
+> [Jupiter:slave:(3) 0.097688] [msg_test/INFO] Received "Task_5" 
+> [Jupiter:slave:(3) 0.097688] [msg_test/INFO] Processing "Task_5" 
+> [Fafard:slave:(4) 0.103347] [msg_test/INFO] "Task_1" done 
+> [Tremblay:slave:(2) 0.124504] [msg_test/INFO] "Task_4" done 
+> [Tremblay:master:(1) 0.125083] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 0.125083] [msg_test/INFO] Sending "Task_7" to "Ginette"
+> [Fafard:slave:(4) 0.125083] [msg_test/INFO] Received "Task_6" 
+> [Fafard:slave:(4) 0.125083] [msg_test/INFO] Processing "Task_6" 
+> [Ginette:slave:(5) 0.154918] [msg_test/INFO] "Task_2" done 
+> [Jupiter:slave:(3) 0.163222] [msg_test/INFO] "Task_5" done 
+> [Tremblay:master:(1) 0.168913] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 0.168913] [msg_test/INFO] Sending "Task_8" to "Bourassa"
+> [Ginette:slave:(5) 0.168913] [msg_test/INFO] Received "Task_7" 
+> [Ginette:slave:(5) 0.168913] [msg_test/INFO] Processing "Task_7" 
+> [Bourassa:slave:(6) 0.176427] [msg_test/INFO] "Task_3" done 
+> [Fafard:slave:(4) 0.190618] [msg_test/INFO] "Task_6" done 
+> [Tremblay:master:(1) 0.197936] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 0.197936] [msg_test/INFO] Sending "Task_9" to "Tremblay"
+> [Tremblay:master:(1) 0.197936] [msg_test/INFO] Hey ! It's me ! :)
+> [Bourassa:slave:(6) 0.197936] [msg_test/INFO] Received "Task_8" 
+> [Bourassa:slave:(6) 0.197936] [msg_test/INFO] Processing "Task_8" 
+> [Tremblay:master:(1) 0.198152] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 0.198152] [msg_test/INFO] Sending "Task_10" to "Jupiter"
+> [Tremblay:slave:(2) 0.198152] [msg_test/INFO] Received "Task_9" 
+> [Tremblay:slave:(2) 0.198152] [msg_test/INFO] Processing "Task_9" 
+> [Tremblay:master:(1) 0.214228] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 0.214228] [msg_test/INFO] Sending "Task_11" to "Fafard"
+> [Jupiter:slave:(3) 0.214228] [msg_test/INFO] Received "Task_10" 
+> [Jupiter:slave:(3) 0.214228] [msg_test/INFO] Processing "Task_10" 
+> [Tremblay:master:(1) 0.235965] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 0.235965] [msg_test/INFO] Sending "Task_12" to "Ginette"
+> [Fafard:slave:(4) 0.235965] [msg_test/INFO] Received "Task_11" 
+> [Fafard:slave:(4) 0.235965] [msg_test/INFO] Processing "Task_11" 
+> [Tremblay:slave:(2) 0.249123] [msg_test/INFO] "Task_9" done 
+> [Ginette:slave:(5) 0.272023] [msg_test/INFO] "Task_7" done 
+> [Jupiter:slave:(3) 0.279763] [msg_test/INFO] "Task_10" done 
+> [Tremblay:master:(1) 0.286018] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 0.286018] [msg_test/INFO] Sending "Task_13" to "Bourassa"
+> [Ginette:slave:(5) 0.286018] [msg_test/INFO] Received "Task_12" 
+> [Ginette:slave:(5) 0.286018] [msg_test/INFO] Processing "Task_12" 
+> [Bourassa:slave:(6) 0.301046] [msg_test/INFO] "Task_8" done 
+> [Fafard:slave:(4) 0.301499] [msg_test/INFO] "Task_11" done 
+> [Tremblay:master:(1) 0.322555] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 0.322555] [msg_test/INFO] Sending "Task_14" to "Tremblay"
+> [Tremblay:master:(1) 0.322555] [msg_test/INFO] Hey ! It's me ! :)
+> [Bourassa:slave:(6) 0.322555] [msg_test/INFO] Received "Task_13" 
+> [Bourassa:slave:(6) 0.322555] [msg_test/INFO] Processing "Task_13" 
+> [Tremblay:master:(1) 0.322770] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 0.322770] [msg_test/INFO] Sending "Task_15" to "Jupiter"
+> [Tremblay:slave:(2) 0.322770] [msg_test/INFO] Received "Task_14" 
+> [Tremblay:slave:(2) 0.322770] [msg_test/INFO] Processing "Task_14" 
+> [Tremblay:master:(1) 0.338847] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 0.338847] [msg_test/INFO] Sending "Task_16" to "Fafard"
+> [Jupiter:slave:(3) 0.338847] [msg_test/INFO] Received "Task_15" 
+> [Jupiter:slave:(3) 0.338847] [msg_test/INFO] Processing "Task_15" 
+> [Tremblay:master:(1) 0.360583] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 0.360583] [msg_test/INFO] Sending "Task_17" to "Ginette"
+> [Fafard:slave:(4) 0.360583] [msg_test/INFO] Received "Task_16" 
+> [Fafard:slave:(4) 0.360583] [msg_test/INFO] Processing "Task_16" 
+> [Tremblay:slave:(2) 0.373741] [msg_test/INFO] "Task_14" done 
+> [Ginette:slave:(5) 0.389128] [msg_test/INFO] "Task_12" done 
+> [Tremblay:master:(1) 0.403123] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 0.403123] [msg_test/INFO] Sending "Task_18" to "Bourassa"
+> [Ginette:slave:(5) 0.403123] [msg_test/INFO] Received "Task_17" 
+> [Ginette:slave:(5) 0.403123] [msg_test/INFO] Processing "Task_17" 
+> [Jupiter:slave:(3) 0.404381] [msg_test/INFO] "Task_15" done 
+> [Bourassa:slave:(6) 0.425664] [msg_test/INFO] "Task_13" done 
+> [Fafard:slave:(4) 0.426118] [msg_test/INFO] "Task_16" done 
+> [Tremblay:master:(1) 0.447173] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 0.447173] [msg_test/INFO] Sending "Task_19" to "Tremblay"
+> [Tremblay:master:(1) 0.447173] [msg_test/INFO] Hey ! It's me ! :)
+> [Bourassa:slave:(6) 0.447173] [msg_test/INFO] Received "Task_18" 
+> [Bourassa:slave:(6) 0.447173] [msg_test/INFO] Processing "Task_18" 
+> [Tremblay:master:(1) 0.447389] [msg_test/INFO] Send completed
+> [Tremblay:master:(1) 0.447389] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over.
+> [Tremblay:slave:(2) 0.447389] [msg_test/INFO] Received "Task_19" 
+> [Tremblay:slave:(2) 0.447389] [msg_test/INFO] Processing "Task_19" 
+> [Jupiter:slave:(3) 0.448851] [msg_test/INFO] Received "finalize" 
+> [Jupiter:slave:(3) 0.448851] [msg_test/INFO] I'm done. See you!
+> [Fafard:slave:(4) 0.450827] [msg_test/INFO] Received "finalize" 
+> [Fafard:slave:(4) 0.450827] [msg_test/INFO] I'm done. See you!
+> [Tremblay:slave:(2) 0.498360] [msg_test/INFO] "Task_19" done 
+> [Ginette:slave:(5) 0.506232] [msg_test/INFO] "Task_17" done 
+> [Ginette:slave:(5) 0.507505] [msg_test/INFO] Received "finalize" 
+> [Ginette:slave:(5) 0.507505] [msg_test/INFO] I'm done. See you!
+> [Bourassa:slave:(6) 0.550283] [msg_test/INFO] "Task_18" done 
+> [Bourassa:slave:(6) 0.552239] [msg_test/INFO] Received "finalize" 
+> [Bourassa:slave:(6) 0.552239] [msg_test/INFO] I'm done. See you!
+> [Tremblay:master:(1) 0.552254] [msg_test/INFO] Goodbye now!
+> [Tremblay:slave:(2) 0.552254] [msg_test/INFO] Received "finalize" 
+> [Tremblay:slave:(2) 0.552254] [msg_test/INFO] I'm done. See you!
+> [0.552254] [msg_test/INFO] Simulation time 0.552254
diff --git a/examples/msg/suspend.tesh b/examples/msg/suspend.tesh
new file mode 100644 (file)
index 0000000..36a438a
--- /dev/null
@@ -0,0 +1,14 @@
+#! ./tesh
+
+p Testing the suspend feature of MSG
+
+! timeout no
+$ $SG_TEST_EXENV ./msg_test_suspend ./msg_platform.xml ./msg_deployment_suspend.xml 
+> [Jacquelin:dream_master:(1) 0.000000] [msg_test/INFO] Let's create a lazy guy.
+> [Jacquelin:dream_master:(1) 0.000000] [msg_test/INFO] Let's wait a little bit...
+> [Jacquelin:Lazy:(2) 0.000000] [msg_test/INFO] Nobody's watching me ? Let's go to sleep.
+> [Jacquelin:dream_master:(1) 10.000000] [msg_test/INFO] Let's wake the lazy guy up! >:) BOOOOOUUUHHH!!!!
+> [Jacquelin:dream_master:(1) 10.000000] [msg_test/INFO] OK, goodbye now.
+> [Jacquelin:Lazy:(2) 10.000000] [msg_test/INFO] Uuuh ? Did somebody call me ?
+> [Jacquelin:Lazy:(2) 10.000000] [msg_test/INFO] Mmmh, goodbye now.
+> [10.000000] [msg_test/INFO] Simulation time 10