X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/b2bf6d917053fb882c7b2593400b568639c14d3b..0f006bc6ea77c06645cdc324129c469e39224b61:/teshsuite/msg/host_on_off_processes/host_on_off_processes.tesh diff --git a/teshsuite/msg/host_on_off_processes/host_on_off_processes.tesh b/teshsuite/msg/host_on_off_processes/host_on_off_processes.tesh index 6968449c19..fb1fb12f5d 100644 --- a/teshsuite/msg/host_on_off_processes/host_on_off_processes.tesh +++ b/teshsuite/msg/host_on_off_processes/host_on_off_processes.tesh @@ -1,24 +1,30 @@ -$ ./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 +$ ./host_on_off_processes ${srcdir:=.}/../../../examples/platforms/small_platform.xml 1 --log=no_loc > [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] Execute deamon -> [Tremblay:test_launcher:(1) 0.000000] [msg_test/INFO] Turn off Jupiter -> [Tremblay:test_launcher:(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 +> [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 +$ ./host_on_off_processes ${srcdir:=.}/../../../examples/platforms/small_platform.xml 2 --log=no_loc > [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, WTF ?!(number of Process : 1, it should be 1) +> [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 +$ ./host_on_off_processes ${srcdir:=.}/../../../examples/platforms/small_platform.xml 3 --log=no_loc > [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 @@ -34,15 +40,54 @@ $ ./host_on_off_processes ${srcdir:=.}/../../../examples/platforms/small_platfor > [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 ${srcdir:=.}/host_on_off_processes_d.xml 4 --log=no_loc --log=msg.thresh:error --log=surf_maxmin.thresh:error -> [Tremblay:test:(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 +$ ./host_on_off_processes ${srcdir:=.}/../../../examples/platforms/small_platform.xml 4 --log=no_loc +> [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 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) 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 +> [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 +> [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 +> [10.000000] [surf_vm/WARNING] Dirty page tracking: 1 pending task(s) on a destroyed VM (first one is (name hidden)). +> If you don't understand why your task was not properly removed, please report that bug. +> This is a known bug if you turned the host off during the VM execution. +> Please remind us of that problem at some point: our code base is not ready to fix this harmless issue in 2016, sorry. +> [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