Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
keep polite and informative
[simgrid.git] / teshsuite / msg / host_on_off_processes / host_on_off_processes.tesh
index c448cf4..8d79c41 100644 (file)
@@ -1,30 +1,89 @@
 
-$ ./host_on_off_processes ${srcdir:=.}/../../../examples/platforms/small_platform.xml ${srcdir:=.}/host_on_off_processes_d.xml 1 --log=no_loc --log=msg.thresh:error --log=surf_maxmin.thresh:error
-> [Tremblay:test:(1) 0.000000] [msg_test/INFO] Test 1:
-> [Tremblay:test:(1) 0.000000] [msg_test/INFO]   Create a process on Jupiter
-> [Jupiter:daemon:(2) 0.000000] [msg_test/INFO]   Execute deamon
-> [Tremblay:test:(1) 0.000000] [msg_test/INFO]   Turn off Jupiter
-> [Tremblay:test:(1) 10.000000] [msg_test/INFO] Test 1 seems ok, cool !(number of Process : 1, it should be 1 (i.e. the Test one))
-> [10.000000] [msg_test/INFO] Simulation time 10
+$ ./host_on_off_processes ${srcdir:=.}/../../../examples/platforms/small_platform.xml 1 --log=no_loc --log=msg.thresh:error --log=surf_maxmin.thresh:error
+> [Tremblay:test_launcher:(1) 0.000000] [msg_test/INFO] Test 1:
+> [Tremblay:test_launcher:(1) 0.000000] [msg_test/INFO]   Create a process on Jupiter
+> [Jupiter:process_daemon:(2) 0.000000] [msg_test/INFO]   Start daemon on Jupiter (76296000.000000)
+> [Jupiter:process_daemon:(2) 0.000000] [msg_test/INFO]   Execute daemon
+> [Jupiter:process_daemon:(2) 1.000000] [msg_test/INFO]   Execute daemon
+> [Jupiter:process_daemon:(2) 2.000000] [msg_test/INFO]   Execute daemon
+> [Tremblay:test_launcher:(1) 3.000000] [msg_test/INFO]   Turn off Jupiter
+> [Jupiter:process_daemon:(2) 3.000000] [msg_test/INFO]   Execute daemon
+> [Tremblay:test_launcher:(1) 13.000000] [msg_test/INFO] Test 1 seems ok, cool !(#Processes: 1, it should be 1; #tasks: 3)
+> [Tremblay:test_launcher:(1) 13.000000] [msg_test/INFO]   Test done. See you!
+> [13.000000] [msg_test/INFO] Simulation time 13
 
-$ ./host_on_off_processes ${srcdir:=.}/../../../examples/platforms/small_platform.xml ${srcdir:=.}/host_on_off_processes_d.xml 2 --log=no_loc --log=msg.thresh:error --log=surf_maxmin.thresh:error
-> [Tremblay:test:(1) 0.000000] [msg_test/INFO] Test 2:
-> [Tremblay:test:(1) 0.000000] [msg_test/INFO]   Turn off Jupiter
-> [0.000000] [simix_process/WARNING] Cannot launch process 'daemon' on failed host 'Jupiter'
-> [Tremblay:test:(1) 10.000000] [msg_test/INFO]   Test 2 does not crash, WTF ?!(number of Process : 1, it should be 1)
-> [Tremblay:test:(1) 10.000000] [msg_test/INFO]   Ok so let's turn on/off the node to see whether the process is correctly bound to Jupiter
-> [Tremblay:test:(1) 10.000000] [msg_test/INFO]   Turn off
-> [Tremblay:test:(1) 10.000000] [msg_test/INFO]   sleep
-> [Tremblay:test:(1) 20.000000] [msg_test/INFO] number of Process : 1 it should be 1. The daemon that has been created for test2 has been correctly destroyed....ok at least it looks rigorous, cool ! You just have to disallow the possibility to create a new process on a node when the node is off.)
+$ ./host_on_off_processes ${srcdir:=.}/../../../examples/platforms/small_platform.xml 2 --log=no_loc --log=msg.thresh:error --log=surf_maxmin.thresh:error
+> [Tremblay:test_launcher:(1) 0.000000] [msg_test/INFO] Test 2:
+> [Tremblay:test_launcher:(1) 0.000000] [msg_test/INFO]   Turn off Jupiter
+> [0.000000] [simix_process/WARNING] Cannot launch process 'process_daemon' on failed host 'Jupiter'
+> [Tremblay:test_launcher:(1) 10.000000] [msg_test/INFO]   Test 2 does not crash as it should (number of Process : 1, it should be 1)
+> [Tremblay:test_launcher:(1) 10.000000] [msg_test/INFO]   Ok so let's turn on/off the node to see whether the process is correctly bound to Jupiter
+> [Tremblay:test_launcher:(1) 10.000000] [msg_test/INFO]   Turn off
+> [Tremblay:test_launcher:(1) 10.000000] [msg_test/INFO]   sleep
+> [Tremblay:test_launcher:(1) 20.000000] [msg_test/INFO] number of Process : 1 it should be 1. The daemon that has been created for test2 has been correctly destroyed....ok at least it looks rigorous, cool ! You just have to disallow the possibility to create a new process on a node when the node is off.)
+> [Tremblay:test_launcher:(1) 20.000000] [msg_test/INFO]   Test done. See you!
 > [20.000000] [msg_test/INFO] Simulation time 20
 
-$ ./host_on_off_processes ${srcdir:=.}/../../../examples/platforms/small_platform.xml ${srcdir:=.}/host_on_off_processes_d.xml 3 --log=no_loc --log=msg.thresh:error --log=surf_maxmin.thresh:error
-> [Tremblay:test:(1) 0.000000] [msg_test/INFO] Test 3 (turn off src during a communication) : Create a Process/task to make a communication between Jupiter and Tremblay and turn off Jupiter during the communication
+$ ./host_on_off_processes ${srcdir:=.}/../../../examples/platforms/small_platform.xml 3 --log=no_loc --log=msg.thresh:error --log=surf_maxmin.thresh:error
+> [Tremblay:test_launcher:(1) 0.000000] [msg_test/INFO] Test 3:
+> [Jupiter:process_sleep:(2) 0.000000] [msg_test/INFO]   I'm alive but I should sleep
+> [Jupiter:process_sleep:(2) 10.000000] [msg_test/INFO]   I'm alive but I should sleep
+> [Jupiter:process_sleep:(2) 20.000000] [msg_test/INFO]   I'm alive but I should sleep
+> [Jupiter:process_sleep:(2) 30.000000] [msg_test/INFO]   I'm alive but I should sleep
+> [Jupiter:process_sleep:(2) 40.000000] [msg_test/INFO]   I'm alive but I should sleep
+> [Jupiter:process_sleep:(2) 50.000000] [msg_test/INFO]   I'm alive but I should sleep
+> [Jupiter:process_sleep:(2) 60.000000] [msg_test/INFO]   I'm alive but I should sleep
+> [Jupiter:process_sleep:(2) 70.000000] [msg_test/INFO]   I'm alive but I should sleep
+> [Jupiter:process_sleep:(2) 80.000000] [msg_test/INFO]   I'm alive but I should sleep
+> [Jupiter:process_sleep:(2) 90.000000] [msg_test/INFO]   I'm alive but I should sleep
+> [Tremblay:test_launcher:(1) 100.000000] [msg_test/INFO]   Turn off
+> [Jupiter:process_sleep:(2) 100.000000] [msg_test/INFO]   I'm alive but I should sleep
+> [Tremblay:test_launcher:(1) 100.000000] [msg_test/INFO]   sleep for 10 seconds
+> [Tremblay:test_launcher:(1) 10100.000000] [msg_test/INFO] number of Process : 1 it should be 1 (i.e. the Test one))
+> [Tremblay:test_launcher:(1) 10100.000000] [msg_test/INFO]   Test done. See you!
+> [10100.000000] [msg_test/INFO] Simulation time 10100
+
+$ ./host_on_off_processes ${srcdir:=.}/../../../examples/platforms/small_platform.xml 4 --log=no_loc --log=msg.thresh:error --log=surf_maxmin.thresh:error
+> [Tremblay:test_launcher:(1) 0.000000] [msg_test/INFO] Test 4 (turn off src during a communication) : Create a Process/task to make a communication between Jupiter and Tremblay and turn off Jupiter during the communication
 > [Tremblay:commRX:(2) 10.000000] [msg_test/INFO]   Start RX
 > [Jupiter:commTX:(3) 10.000000] [msg_test/INFO]   Start TX
-> [Tremblay:test:(1) 10.000000] [msg_test/INFO]   number of processes: 3
-> [Tremblay:test:(1) 20.000000] [msg_test/INFO]   Turn Jupiter off
-> [Tremblay:test:(1) 20.000000] [msg_test/INFO] Test 3 seems ok  (number of Process : 2, it should be 1 or 2 if RX has not been satisfied) cool, you can now turn off a node that has a process paused by a sleep call
+> [Tremblay:test_launcher:(1) 10.000000] [msg_test/INFO]   number of processes: 3
+> [Tremblay:test_launcher:(1) 20.000000] [msg_test/INFO]   Turn Jupiter off
+> [Tremblay:test_launcher:(1) 20.000000] [msg_test/INFO] Test 4 seems ok  (number of Process : 2, it should be 1 or 2 if RX has not been satisfied) cool, you can now turn off a node that has a process paused by a sleep call
+> [Tremblay:test_launcher:(1) 20.000000] [msg_test/INFO]   Test done. See you!
 > [Tremblay:commRX:(2) 20.000000] [msg_test/INFO]   Receive message: TRANSFERT_FAILURE
 > [Tremblay:commRX:(2) 20.000000] [msg_test/INFO]   RX Done
 > [20.000000] [msg_test/INFO] Simulation time 20
+
+$ ./host_on_off_processes ${srcdir:=.}/../../../examples/platforms/small_platform.xml 5 --log=no_loc --log=msg.thresh:error --log=surf_maxmin.thresh:error
+> [Tremblay:test_launcher:(1) 0.000000] [msg_test/INFO] Test 5 (turn off dest during a communication : Create a Process/task to make a communication between Tremblay and Jupiter and turn off Jupiter during the communication
+> [Jupiter:commRX:(2) 10.000000] [msg_test/INFO]   Start RX
+> [Tremblay:commTX:(3) 10.000000] [msg_test/INFO]   Start TX
+> [Tremblay:test_launcher:(1) 10.000000] [msg_test/INFO]   number of processes: 3
+> [Tremblay:test_launcher:(1) 20.000000] [msg_test/INFO]   Turn Jupiter off
+> [Tremblay:test_launcher:(1) 20.000000] [msg_test/INFO] Test 5 seems ok, cool !(number of Process : 2, it should be 2
+> [Tremblay:test_launcher:(1) 20.000000] [msg_test/INFO]   Test done. See you!
+> [Tremblay:commTX:(3) 40.000000] [msg_test/INFO]   TX done
+> [40.000000] [msg_test/INFO] Simulation time 40
+
+$ ./host_on_off_processes ${srcdir:=.}/../../../examples/platforms/small_platform.xml 6 --log=no_loc --log=msg.thresh:error --log=surf_maxmin.thresh:error
+> [Tremblay:test_launcher:(1) 0.000000] [msg_test/INFO] Test 6: Turn on Jupiter, assign a VM on Jupiter, launch a process inside the VM, and turn off the node
+> [vm0:process_daemon:(2) 0.000000] [msg_test/INFO]   Start daemon on vm0 (76296000.000000)
+> [vm0:process_daemon:(2) 0.000000] [msg_test/INFO]   Execute daemon
+> [Jupiter:process_daemonJUPI:(3) 0.000000] [msg_test/INFO]   Start daemon on Jupiter (76296000.000000)
+> [Jupiter:process_daemonJUPI:(3) 0.000000] [msg_test/INFO]   Execute daemon
+> [Jupiter:process_daemonJUPI:(3) 1.000001] [msg_test/INFO]   Execute daemon
+> [Jupiter:process_daemonJUPI:(3) 2.000002] [msg_test/INFO]   Execute daemon
+> [Jupiter:process_daemonJUPI:(3) 3.000004] [msg_test/INFO]   Execute daemon
+> [Jupiter:process_daemonJUPI:(3) 4.000005] [msg_test/INFO]   Execute daemon
+> [Jupiter:process_daemonJUPI:(3) 5.000006] [msg_test/INFO]   Execute daemon
+> [Jupiter:process_daemonJUPI:(3) 6.000007] [msg_test/INFO]   Execute daemon
+> [Jupiter:process_daemonJUPI:(3) 7.000008] [msg_test/INFO]   Execute daemon
+> [Jupiter:process_daemonJUPI:(3) 8.000009] [msg_test/INFO]   Execute daemon
+> [Jupiter:process_daemonJUPI:(3) 9.000011] [msg_test/INFO]   Execute daemon
+> [Tremblay:test_launcher:(1) 10.000000] [msg_test/INFO]   Turn Jupiter off
+> [Tremblay:test_launcher:(1) 10.000000] [msg_test/INFO]   Shutdown vm0
+> [Tremblay:test_launcher:(1) 10.000000] [msg_test/INFO]   Destroy vm0
+> [Tremblay:test_launcher:(1) 10.000000] [msg_test/INFO] Test 6 is also weird: when the node Jupiter is turned off once again, the VM and its daemon are not killed. However, the issue regarding the shutdown of hosted VMs can be seen a feature not a bug ;)
+> [Tremblay:test_launcher:(1) 10.000000] [msg_test/INFO]   Test done. See you!
+> [10.000000] [msg_test/INFO] Simulation time 10