From: Frederic Suter Date: Tue, 5 Apr 2016 14:31:49 +0000 (+0200) Subject: Merge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot/simgrid/simgrid X-Git-Tag: v3_13~180 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/767a7a537b2ac742705d23b8dcb25d64cd36a2ee?hp=94c66cf5e8b852f6e5562c9b956e647f8ca733d2 Merge branch 'master' of git+ssh://scm.gforge.inria.fr//gitroot/simgrid/simgrid --- diff --git a/.gitignore b/.gitignore index 99d820d3b4..33094bf86b 100644 --- a/.gitignore +++ b/.gitignore @@ -116,14 +116,13 @@ tags callgrind.out.* ### Examples and traces *.exe -examples/msg/actions-mpi/actions-mpi +examples/msg/actions-comm/actions-comm examples/msg/actions-storage/actions-storage examples/msg/async-wait/async-wait examples/msg/async-waitall/async-waitall examples/msg/async-waitany/async-waitany -examples/msg/bittorrent/bittorrent -examples/msg/bittorrent/bittorrent_platfgen -examples/msg/chainsend/chainsend +examples/msg/app-bittorrent/bittorrent +examples/msg/app-chainsend/chainsend examples/msg/cloud-capping/cloud-capping examples/msg/cloud-masterworker/cloud-masterworker examples/msg/cloud-migration/cloud-migration @@ -144,9 +143,8 @@ examples/msg/io-file-unlink/io-file-unlink examples/msg/io-remote/io-remote examples/msg/io-storage/io-storage examples/msg/failures/failures -examples/msg/masterworker/masterworker examples/msg/process-kill/process-kill -examples/msg/masterworker-mailbox/masterworker-mailbox +examples/msg/app-masterworker/app-masterworker examples/msg/mc/bugged1 examples/msg/mc/bugged1_liveness examples/msg/mc/bugged1_stateful diff --git a/examples/msg/CMakeLists.txt b/examples/msg/CMakeLists.txt index 99fd79d1e4..4e4ddde012 100644 --- a/examples/msg/CMakeLists.txt +++ b/examples/msg/CMakeLists.txt @@ -1,7 +1,7 @@ -foreach(x actions-mpi actions-storage async-wait async-waitall async-waitany cloud-capping cloud-masterworker - cloud-migration cloud-multicore cloud-scale cloud-simple cloud-two-tasks dht-chord dht-pastry exception - energy-consumption energy-onoff energy-pstate energy-ptask energy-vm failures io-file io-file-unlink io-remote - io-storage masterworker masterworker-mailbox pmm task-priority process-kill process-migration process-suspend +foreach(x actions-comm actions-storage app-masterworker async-wait async-waitall async-waitany cloud-capping + cloud-masterworker cloud-migration cloud-multicore cloud-scale cloud-simple cloud-two-tasks dht-chord + dht-pastry exception energy-consumption energy-onoff energy-pstate energy-ptask energy-vm failures io-file + io-file-unlink io-remote io-storage pmm task-priority process-kill process-migration process-suspend properties sendrecv set-maestro process-startkilltime synchro token_ring trace-categories trace-link-srcdst-user-variables trace-link-user-variables trace-masterworker trace-platform trace-process-migration trace-simple trace-user-variables) @@ -18,18 +18,18 @@ if(HAVE_NS3) set_target_properties(ns3 PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/ns3) endif() -add_executable (bittorrent bittorrent/bittorrent.c bittorrent/messages.c bittorrent/peer.c bittorrent/tracker.c bittorrent/connection.c) +add_executable (bittorrent app-bittorrent/bittorrent.c app-bittorrent/messages.c app-bittorrent/peer.c app-bittorrent/tracker.c app-bittorrent/connection.c) target_link_libraries(bittorrent simgrid) -set_target_properties(bittorrent PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/bittorrent) +set_target_properties(bittorrent PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/app-bittorrent) foreach (file bittorrent connection messages peer tracker) - set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/bittorrent/${file}.c ${CMAKE_CURRENT_SOURCE_DIR}/bittorrent/${file}.h) + set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/app-bittorrent/${file}.c ${CMAKE_CURRENT_SOURCE_DIR}/app-bittorrent/${file}.h) endforeach() -add_executable (chainsend chainsend/chainsend.c chainsend/iterator.c chainsend/common.c chainsend/messages.c chainsend/broadcaster.c chainsend/peer.c) +add_executable (chainsend app-chainsend/chainsend.c app-chainsend/iterator.c app-chainsend/common.c app-chainsend/messages.c app-chainsend/broadcaster.c app-chainsend/peer.c) target_link_libraries(chainsend simgrid) -set_target_properties(chainsend PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/chainsend) +set_target_properties(chainsend PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/app-chainsend) foreach (file common iterator messages broadcaster peer) - set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/chainsend/${file}.c ${CMAKE_CURRENT_SOURCE_DIR}/chainsend/${file}.h) + set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/app-chainsend/${file}.c ${CMAKE_CURRENT_SOURCE_DIR}/app-chainsend/${file}.h) endforeach() add_executable (dht-kademlia dht-kademlia/dht-kademlia.c dht-kademlia/node.c dht-kademlia/routing_table.c dht-kademlia/task.c dht-kademlia/answer.c) @@ -39,37 +39,35 @@ foreach (file answer dht-kademlia node routing_table task) set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/dht-kademlia/${file}.c ${CMAKE_CURRENT_SOURCE_DIR}/dht-kademlia/${file}.h) endforeach() -foreach (file actions-mpi actions-storage async-wait async-waitall async-waitany bittorrent chainsend dht-chord - dht-kademlia dht-pastry io-remote masterworker masterworker-mailbox properties sendrecv set-maestro - task-priority) +foreach (file actions-comm actions-storage app-bittorrent app-chainsend app-masterworker async-wait async-waitall + async-waitany dht-chord dht-kademlia dht-pastry io-remote properties sendrecv set-maestro task-priority) set(xml_files ${xml_files} ${CMAKE_CURRENT_SOURCE_DIR}/${file}/${file}_d.xml) endforeach() set(txt_files ${txt_files} ${CMAKE_CURRENT_SOURCE_DIR}/README - ${CMAKE_CURRENT_SOURCE_DIR}/actions-mpi/actions-mpi.txt - ${CMAKE_CURRENT_SOURCE_DIR}/actions-mpi/actions-mpi_split_p0.txt - ${CMAKE_CURRENT_SOURCE_DIR}/actions-mpi/actions-mpi_split_p1.txt + ${CMAKE_CURRENT_SOURCE_DIR}/actions-comm/actions-comm.txt + ${CMAKE_CURRENT_SOURCE_DIR}/actions-comm/actions-comm_split_p0.txt + ${CMAKE_CURRENT_SOURCE_DIR}/actions-comm/actions-comm_split_p1.txt ${CMAKE_CURRENT_SOURCE_DIR}/actions-storage/actions-storage.txt PARENT_SCOPE) -set(bin_files ${bin_files} ${CMAKE_CURRENT_SOURCE_DIR}/bittorrent/generate.py +set(bin_files ${bin_files} ${CMAKE_CURRENT_SOURCE_DIR}/app-bittorrent/generate.py ${CMAKE_CURRENT_SOURCE_DIR}/dht-chord/generate.py ${CMAKE_CURRENT_SOURCE_DIR}/dht-kademlia/generate.py PARENT_SCOPE) -set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/chainsend/chainsend.c +set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/app-chainsend/chainsend.c ${CMAKE_CURRENT_SOURCE_DIR}/dht-kademlia/common.h ${CMAKE_CURRENT_SOURCE_DIR}/ns3/ns3.c PARENT_SCOPE) -set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/bittorrent/bittorrent.tesh - ${CMAKE_CURRENT_SOURCE_DIR}/chainsend/chainsend.tesh +set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/app-bittorrent/app-bittorrent.tesh + ${CMAKE_CURRENT_SOURCE_DIR}/app-chainsend/app-chainsend.tesh ${CMAKE_CURRENT_SOURCE_DIR}/dht-kademlia/dht-kademlia.tesh - ${CMAKE_CURRENT_SOURCE_DIR}/masterworker/masterworker_cpu_ti.tesh - ${CMAKE_CURRENT_SOURCE_DIR}/masterworker-mailbox/masterworker-mailbox-multicore.tesh - ${CMAKE_CURRENT_SOURCE_DIR}/masterworker-mailbox/masterworker-mailbox-vivaldi.tesh + ${CMAKE_CURRENT_SOURCE_DIR}/app-masterworker/app-masterworker-multicore.tesh + ${CMAKE_CURRENT_SOURCE_DIR}/app-masterworker/app-masterworker-vivaldi.tesh ${CMAKE_CURRENT_SOURCE_DIR}/ns3/ns3.tesh PARENT_SCOPE) -set(xml_files ${xml_files} ${CMAKE_CURRENT_SOURCE_DIR}/actions-mpi/actions-mpi_split_d.xml +set(xml_files ${xml_files} ${CMAKE_CURRENT_SOURCE_DIR}/actions-comm/actions-comm_split_d.xml + ${CMAKE_CURRENT_SOURCE_DIR}/app-masterworker/app-masterworker-multicore_d.xml + ${CMAKE_CURRENT_SOURCE_DIR}/app-masterworker/app-masterworker-vivaldi_d.xml ${CMAKE_CURRENT_SOURCE_DIR}/async-wait/async-wait2_d.xml ${CMAKE_CURRENT_SOURCE_DIR}/async-wait/async-wait3_d.xml ${CMAKE_CURRENT_SOURCE_DIR}/async-wait/async-wait4_d.xml ${CMAKE_CURRENT_SOURCE_DIR}/energy-onoff/platform_onoff.xml - ${CMAKE_CURRENT_SOURCE_DIR}/masterworker-mailbox/masterworker-mailbox-multicore_d.xml - ${CMAKE_CURRENT_SOURCE_DIR}/masterworker-mailbox/masterworker-mailbox-vivaldi_d.xml ${CMAKE_CURRENT_SOURCE_DIR}/ns3/3hosts_2links_d.xml ${CMAKE_CURRENT_SOURCE_DIR}/ns3/3links-timer_d.xml ${CMAKE_CURRENT_SOURCE_DIR}/ns3/3links_d.xml @@ -83,10 +81,10 @@ set(xml_files ${xml_files} ${CMAKE_CURRENT_SOURCE_DIR}/actions-mpi/action ${CMAKE_CURRENT_SOURCE_DIR}/process-startkilltime/start_d.xml ${CMAKE_CURRENT_SOURCE_DIR}/process-startkilltime/start_kill_d.xml PARENT_SCOPE) -foreach(x actions-mpi actions-storage async-wait async-waitall async-waitany bittorrent chainsend cloud-capping - cloud-masterworker cloud-migration cloud-scale cloud-simple cloud-two-tasks dht-chord dht-kademlia - failures io-file io-file-unlink io-remote io-storage masterworker masterworker-mailbox task-priority process-kill - process-migration process-suspend properties sendrecv synchro process-startkilltime token_ring) +foreach(x actions-comm actions-storage app-bittorrent app-chainsend app-masterworker async-wait async-waitall + async-waitany cloud-capping cloud-masterworker cloud-migration cloud-scale cloud-simple cloud-two-tasks + dht-chord dht-kademlia failures io-file io-file-unlink io-remote io-storage task-priority process-kill + process-migration process-suspend properties sendrecv synchro process-startkilltime token_ring) ADD_TESH_FACTORIES(msg-${x} "thread;ucontext;raw;boost" --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/${x} --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/platforms --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/${x} ${x}.tesh) endforeach() @@ -98,7 +96,7 @@ foreach (x categories link-srcdst-user-variables link-user-variables masterworke ADD_TESH(msg-trace-${x} --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/trace-${x} --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/platforms --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/trace-${x} trace-${x}.tesh) endforeach() -ADD_TESH_FACTORIES(msg-bittorrent-parallel "thread;ucontext;raw" --cfg contexts/nthreads:4 ${CONTEXTS_SYNCHRO} --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/bittorrent --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/platforms --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/bittorrent bittorrent.tesh) +ADD_TESH_FACTORIES(msg-app-bittorrent-parallel "thread;ucontext;raw" --cfg contexts/nthreads:4 ${CONTEXTS_SYNCHRO} --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/app-bittorrent --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/platforms --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/app-bittorrent app-bittorrent.tesh) ADD_TESH_FACTORIES(msg-dht-chord-parallel "thread;ucontext;raw" --cfg contexts/nthreads:4 ${CONTEXTS_SYNCHRO} --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/dht-chord --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/platforms --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/dht-chord dht-chord.tesh) ADD_TESH_FACTORIES(msg-dht-kademlia-parallel "thread;ucontext;raw" --cfg contexts/nthreads:4 ${CONTEXTS_SYNCHRO} --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/dht-kademlia --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/platforms --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/dht-kademlia dht-kademlia.tesh) ADD_TESH_FACTORIES(msg-energy-pstate-ptask "thread;ucontext;raw;boost" --cfg host/model:ptask_L07 --log xbt_cfg.threshold:critical --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/msg --cd ${CMAKE_BINARY_DIR}/examples/msg ${CMAKE_HOME_DIRECTORY}/examples/msg/energy-pstate/energy-pstate.tesh) @@ -106,11 +104,8 @@ ADD_TESH_FACTORIES(msg-energy-consumption-ptask "thread;ucontext;raw;boos ADD_TESH_FACTORIES(msg-energy-ptask "thread;ucontext;raw" --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/msg --cd ${CMAKE_BINARY_DIR}/examples/msg ${CMAKE_HOME_DIRECTORY}/examples/msg/energy-ptask/energy-ptask.tesh) ADD_TESH_FACTORIES(msg-set-maestro "thread" --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/msg --cd ${CMAKE_BINARY_DIR}/examples/msg ${CMAKE_HOME_DIRECTORY}/examples/msg/set-maestro/set-maestro.tesh) -ADD_TESH_FACTORIES(msg-masterworker-mailbox-multicore "thread;ucontext;raw;boost" --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/msg --cd ${CMAKE_BINARY_DIR}/examples/msg ${CMAKE_HOME_DIRECTORY}/examples/msg/masterworker-mailbox/masterworker-mailbox-multicore.tesh) -ADD_TESH_FACTORIES(msg-masterworker-mailbox-vivaldi "thread;ucontext;raw;boost" --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/msg --cd ${CMAKE_BINARY_DIR}/examples/msg ${CMAKE_HOME_DIRECTORY}/examples/msg/masterworker-mailbox/masterworker-mailbox-vivaldi.tesh) - -# Weird issue with this one ... -#ADD_TESH_FACTORIES(msg-masterworker-cpu-ti "thread;ucontext;raw;boost" --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/masterworker --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/platforms --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/masterworker masterworker_cpu_ti.tesh) +ADD_TESH_FACTORIES(app-masterworker-multicore "thread;ucontext;raw;boost" --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/msg --cd ${CMAKE_BINARY_DIR}/examples/msg ${CMAKE_HOME_DIRECTORY}/examples/msg/app-masterworker/app-masterworker-multicore.tesh) +ADD_TESH_FACTORIES(app-masterworker-vivaldi "thread;ucontext;raw;boost" --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/msg --cd ${CMAKE_BINARY_DIR}/examples/msg ${CMAKE_HOME_DIRECTORY}/examples/msg/app-masterworker/app-masterworker-vivaldi.tesh) ADD_TESH(msg-pmm --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/msg --setenv srcdir=${CMAKE_HOME_DIRECTORY}/examples/platforms --cd ${CMAKE_BINARY_DIR}/examples/msg ${CMAKE_HOME_DIRECTORY}/examples/msg/pmm/pmm.tesh) diff --git a/examples/msg/actions-mpi/actions-mpi.c b/examples/msg/actions-comm/actions-comm.c similarity index 69% rename from examples/msg/actions-mpi/actions-mpi.c rename to examples/msg/actions-comm/actions-comm.c index df86b80081..0d2d6461a4 100644 --- a/examples/msg/actions-mpi/actions-mpi.c +++ b/examples/msg/actions-comm/actions-comm.c @@ -210,58 +210,6 @@ static void action_barrier(const char *const *action) } } -static void action_reduce(const char *const *action) -{ - int i; - char *reduce_identifier; - char mailbox[80]; - double comm_size = parse_double(action[2]); - double comp_size = parse_double(action[3]); - msg_task_t comp_task = NULL; - const char *process_name; - double clock = MSG_get_clock(); - - process_globals_t counters = (process_globals_t) MSG_process_get_data(MSG_process_self()); - - xbt_assert(communicator_size, "Size of Communicator is not defined can't use collective operations"); - - process_name = MSG_process_get_name(MSG_process_self()); - - reduce_identifier = bprintf("reduce_%d", counters->reduce_counter++); - - if (!strcmp(process_name, "p0")) { - XBT_DEBUG("%s: %s is the Root", reduce_identifier, process_name); - - msg_comm_t *comms = xbt_new0(msg_comm_t, communicator_size - 1); - msg_task_t *tasks = xbt_new0(msg_task_t, communicator_size - 1); - for (i = 1; i < communicator_size; i++) { - sprintf(mailbox, "%s_p%d_p0", reduce_identifier, i); - comms[i - 1] = MSG_task_irecv(&(tasks[i - 1]), mailbox); - } - MSG_comm_waitall(comms, communicator_size - 1, -1); - for (i = 1; i < communicator_size; i++) { - MSG_comm_destroy(comms[i - 1]); - MSG_task_destroy(tasks[i - 1]); - } - xbt_free(comms); - xbt_free(tasks); - - comp_task = MSG_task_create("reduce_comp", comp_size, 0, NULL); - XBT_DEBUG("%s: computing 'reduce_comp'", reduce_identifier); - MSG_task_execute(comp_task); - MSG_task_destroy(comp_task); - XBT_DEBUG("%s: computed", reduce_identifier); - } else { - XBT_DEBUG("%s: %s sends", reduce_identifier, process_name); - sprintf(mailbox, "%s_%s_p0", reduce_identifier, process_name); - XBT_DEBUG("put on %s", mailbox); - MSG_task_send(MSG_task_create(reduce_identifier, 0, comm_size, NULL), mailbox); - } - - log_action(action, MSG_get_clock() - clock); - xbt_free(reduce_identifier); -} - static void action_bcast(const char *const *action) { int i; @@ -306,83 +254,6 @@ static void action_bcast(const char *const *action) xbt_free(bcast_identifier); } -static void action_sleep(const char *const *action) -{ - const char *duration = action[2]; - double clock = MSG_get_clock(); - - ACT_DEBUG("Entering %s", NAME); - MSG_process_sleep(parse_double(duration)); - log_action(action, MSG_get_clock() - clock); -} - -static void action_allReduce(const char *const *action) -{ - int i; - char *allreduce_identifier; - char mailbox[80]; - double comm_size = parse_double(action[2]); - double comp_size = parse_double(action[3]); - msg_task_t task = NULL, comp_task = NULL; - const char *process_name; - double clock = MSG_get_clock(); - - process_globals_t counters = (process_globals_t) MSG_process_get_data(MSG_process_self()); - - xbt_assert(communicator_size, "Size of Communicator is not defined, can't use collective operations"); - - process_name = MSG_process_get_name(MSG_process_self()); - - allreduce_identifier = bprintf("allReduce_%d", counters->allReduce_counter++); - - if (!strcmp(process_name, "p0")) { - XBT_DEBUG("%s: %s is the Root", allreduce_identifier, process_name); - - msg_comm_t *comms = xbt_new0(msg_comm_t, communicator_size - 1); - msg_task_t *tasks = xbt_new0(msg_task_t, communicator_size - 1); - for (i = 1; i < communicator_size; i++) { - sprintf(mailbox, "%s_p%d_p0", allreduce_identifier, i); - comms[i - 1] = MSG_task_irecv(&(tasks[i - 1]), mailbox); - } - MSG_comm_waitall(comms, communicator_size - 1, -1); - for (i = 1; i < communicator_size; i++) { - MSG_comm_destroy(comms[i - 1]); - MSG_task_destroy(tasks[i - 1]); - } - xbt_free(tasks); - - comp_task = MSG_task_create("allReduce_comp", comp_size, 0, NULL); - XBT_DEBUG("%s: computing 'reduce_comp'", allreduce_identifier); - MSG_task_execute(comp_task); - MSG_task_destroy(comp_task); - XBT_DEBUG("%s: computed", allreduce_identifier); - - for (i = 1; i < communicator_size; i++) { - sprintf(mailbox, "%s_p0_p%d", allreduce_identifier, i); - comms[i - 1] = MSG_task_isend(MSG_task_create(mailbox, 0, comm_size, NULL), mailbox); - } - MSG_comm_waitall(comms, communicator_size - 1, -1); - for (i = 1; i < communicator_size; i++) - MSG_comm_destroy(comms[i - 1]); - xbt_free(comms); - - XBT_DEBUG("%s: all messages sent by %s have been received", allreduce_identifier, process_name); - } else { - XBT_DEBUG("%s: %s sends", allreduce_identifier, process_name); - sprintf(mailbox, "%s_%s_p0", allreduce_identifier, process_name); - XBT_DEBUG("put on %s", mailbox); - MSG_task_send(MSG_task_create(allreduce_identifier, 0, comm_size, NULL), mailbox); - - sprintf(mailbox, "%s_p0_%s", allreduce_identifier, process_name); - MSG_task_receive(&task, mailbox); - MSG_task_destroy(task); - XBT_DEBUG("%s: %s has received", allreduce_identifier, process_name); - } - - log_action(action, MSG_get_clock() - clock); - xbt_free(allreduce_identifier); -} - static void action_comm_size(const char *const *action) { const char *size = action[2]; @@ -444,10 +315,6 @@ int main(int argc, char *argv[]) "\tExample: %s msg_platform.xml msg_deployment.xml ", argv[0],argv[0],argv[0]); - printf("WARNING: THIS BINARY IS KINDA DEPRECATED\n" - "This example is still relevant if you want to learn about MSG-based trace replay, but if you want to simulate " - "MPI-like traces, you should use the newer version that is in the examples/smpi/replay directory instead.\n"); - MSG_create_environment(argv[1]); MSG_launch_application(argv[2]); @@ -462,9 +329,6 @@ int main(int argc, char *argv[]) xbt_replay_action_register("wait", action_wait); xbt_replay_action_register("barrier", action_barrier); xbt_replay_action_register("bcast", action_bcast); - xbt_replay_action_register("reduce", action_reduce); - xbt_replay_action_register("allReduce", action_allReduce); - xbt_replay_action_register("sleep", action_sleep); xbt_replay_action_register("compute", action_compute); /* Actually do the simulation using MSG_action_trace_run */ diff --git a/examples/msg/actions-comm/actions-comm.tesh b/examples/msg/actions-comm/actions-comm.tesh new file mode 100644 index 0000000000..d2833bb3b3 --- /dev/null +++ b/examples/msg/actions-comm/actions-comm.tesh @@ -0,0 +1,27 @@ +! output sort 19 +$ ${bindir:=.}/actions-comm --log=actions.thres=verbose ${srcdir:=.}/small_platform_fatpipe.xml actions-comm_split_d.xml "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" +> [ 20.703314] (1:p0@Tremblay) p0 recv p1 20.703314 +> [ 20.703314] (2:p1@Ruby) p1 send p0 1e10 20.703314 +> [ 30.897513] (0:maestro@) Simulation time 30.8975 +> [ 30.897513] (1:p0@Tremblay) p0 compute 1e9 10.194200 +> [ 30.897513] (2:p1@Ruby) p1 compute 1e9 10.194200 + +! output sort 19 +$ ${bindir:=.}/actions-comm --log=actions.thres=verbose ${srcdir:=.}/small_platform_fatpipe.xml actions-comm_d.xml actions-comm.txt "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" +> [ 0.000000] (1:p0@Tremblay) p0 comm_size 3 0.000000 +> [ 1.037020] (1:p0@Tremblay) p0 bcast 5e8 1.037020 +> [ 1.037020] (2:p1@Ruby) p1 bcast 5e8 1.037020 +> [ 1.037020] (3:p2@Perl) p2 bcast 5e8 1.037020 +> [ 1.082894] (1:p0@Tremblay) p0 compute 4.5E6 0.045874 +> [ 1.123670] (1:p0@Tremblay) p0 compute 4E6 0.040777 +> [ 1.149156] (1:p0@Tremblay) p0 compute 2.5E6 0.025485 +> [ 1.149156] (2:p1@Ruby) p1 Irecv p0 0.000000 +> [ 1.149156] (3:p2@Perl) p2 Irecv p1 0.000000 +> [ 3.221244] (1:p0@Tremblay) p0 send p1 1e9 2.072088 +> [ 6.246256] (3:p2@Perl) p2 compute 5e8 5.097100 +> [ 11.343355] (2:p1@Ruby) p1 compute 1e9 10.194200 +> [ 11.343355] (2:p1@Ruby) p1 wait 0.000000 +> [ 11.343355] (2:p1@Ruby) p1 Isend p2 1e9 0.000000 +> [ 13.415443] (0:maestro@) Simulation time 13.4154 +> [ 13.415443] (1:p0@Tremblay) p0 compute 1e9 10.194200 +> [ 13.415443] (3:p2@Perl) p2 wait 7.169187 diff --git a/examples/msg/actions-mpi/actions-mpi.txt b/examples/msg/actions-comm/actions-comm.txt similarity index 65% rename from examples/msg/actions-mpi/actions-mpi.txt rename to examples/msg/actions-comm/actions-comm.txt index 088c23b21a..94054f29e9 100644 --- a/examples/msg/actions-mpi/actions-mpi.txt +++ b/examples/msg/actions-comm/actions-comm.txt @@ -32,22 +32,6 @@ p0 barrier p1 barrier p2 barrier -p0 reduce 5e8 5e8 -p1 reduce 5e8 5e8 -p2 reduce 5e8 5e8 - -p0 compute 5e8 -p1 compute 5e8 -p2 compute 5e8 - -p0 barrier -p1 barrier -p2 barrier - -p0 allReduce 5e8 5e8 -p1 allReduce 5e8 5e8 -p2 allReduce 5e8 5e8 - p0 finalize p1 finalize p2 finalize diff --git a/examples/msg/actions-mpi/actions-mpi_d.xml b/examples/msg/actions-comm/actions-comm_d.xml similarity index 100% rename from examples/msg/actions-mpi/actions-mpi_d.xml rename to examples/msg/actions-comm/actions-comm_d.xml diff --git a/examples/msg/actions-mpi/actions-mpi_split_d.xml b/examples/msg/actions-comm/actions-comm_split_d.xml similarity index 59% rename from examples/msg/actions-mpi/actions-mpi_split_d.xml rename to examples/msg/actions-comm/actions-comm_split_d.xml index b1419e71b3..84616c22b8 100644 --- a/examples/msg/actions-mpi/actions-mpi_split_d.xml +++ b/examples/msg/actions-comm/actions-comm_split_d.xml @@ -3,8 +3,8 @@ + ./actions-comm ../../platforms/platform.xml actions-comm_split_d.xml --> - - + + diff --git a/examples/msg/actions-comm/actions-comm_split_p0.txt b/examples/msg/actions-comm/actions-comm_split_p0.txt new file mode 100644 index 0000000000..dd16140f49 --- /dev/null +++ b/examples/msg/actions-comm/actions-comm_split_p0.txt @@ -0,0 +1,6 @@ +# sample action file (with only the actions for p0, to be launched by deployment file) +p0 init +p0 recv p1 +p0 compute 1e9 +p0 finalize + diff --git a/examples/msg/actions-comm/actions-comm_split_p1.txt b/examples/msg/actions-comm/actions-comm_split_p1.txt new file mode 100644 index 0000000000..d7e9dfecf5 --- /dev/null +++ b/examples/msg/actions-comm/actions-comm_split_p1.txt @@ -0,0 +1,5 @@ +# sample action file (with only the actions for p1, to be launched by deployment file) +p1 init +p1 send p0 1e10 +p1 compute 1e9 +p1 finalize diff --git a/examples/msg/actions-mpi/actions-mpi.tesh b/examples/msg/actions-mpi/actions-mpi.tesh deleted file mode 100644 index cc49d0a3db..0000000000 --- a/examples/msg/actions-mpi/actions-mpi.tesh +++ /dev/null @@ -1,42 +0,0 @@ -# A little tesh file testing most MPI-related actions - -! output sort 19 -$ ${bindir:=.}/actions-mpi --log=actions.thres=verbose ${srcdir:=.}/small_platform_fatpipe.xml actions-mpi_split_d.xml "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" -> WARNING: THIS BINARY IS KINDA DEPRECATED -> This example is still relevant if you want to learn about MSG-based trace replay, but if you want to simulate MPI-like traces, you should use the newer version that is in the examples/smpi/replay directory instead. -> [ 20.703314] (1:p0@Tremblay) p0 recv p1 20.703314 -> [ 20.703314] (2:p1@Ruby) p1 send p0 1e10 20.703314 -> [ 20.703314] (1:p0@Tremblay) p0 compute 12 0.000000 -> [ 32.703314] (2:p1@Ruby) p1 sleep 12 12.000000 -> [ 32.703314] (0:maestro@) Simulation time 32.7033 - -! output sort 19 -$ ${bindir:=.}/actions-mpi --log=actions.thres=verbose ${srcdir:=.}/small_platform_fatpipe.xml actions-mpi_d.xml actions-mpi.txt "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" -> WARNING: THIS BINARY IS KINDA DEPRECATED -> This example is still relevant if you want to learn about MSG-based trace replay, but if you want to simulate MPI-like traces, you should use the newer version that is in the examples/smpi/replay directory instead. -> [ 0.000000] (1:p0@Tremblay) p0 comm_size 3 0.000000 -> [ 1.037020] (1:p0@Tremblay) p0 bcast 5e8 1.037020 -> [ 1.037020] (2:p1@Ruby) p1 bcast 5e8 1.037020 -> [ 1.037020] (3:p2@Perl) p2 bcast 5e8 1.037020 -> [ 1.082894] (1:p0@Tremblay) p0 compute 4.5E6 0.045874 -> [ 1.123670] (1:p0@Tremblay) p0 compute 4E6 0.040777 -> [ 1.149156] (1:p0@Tremblay) p0 compute 2.5E6 0.025485 -> [ 1.149156] (2:p1@Ruby) p1 Irecv p0 0.000000 -> [ 1.149156] (3:p2@Perl) p2 Irecv p1 0.000000 -> [ 3.221244] (1:p0@Tremblay) p0 send p1 1e9 2.072088 -> [ 6.246256] (3:p2@Perl) p2 compute 5e8 5.097100 -> [ 11.343355] (2:p1@Ruby) p1 compute 1e9 10.194200 -> [ 11.343355] (2:p1@Ruby) p1 wait 0.000000 -> [ 11.343355] (2:p1@Ruby) p1 Isend p2 1e9 0.000000 -> [ 13.415443] (1:p0@Tremblay) p0 compute 1e9 10.194200 -> [ 13.415443] (3:p2@Perl) p2 wait 7.169187 -> [ 14.452463] (2:p1@Ruby) p1 reduce 5e8 5e8 1.037020 -> [ 14.452463] (3:p2@Perl) p2 reduce 5e8 5e8 1.037020 -> [ 19.549562] (1:p0@Tremblay) p0 reduce 5e8 5e8 6.134119 -> [ 19.549562] (2:p1@Ruby) p1 compute 5e8 5.097100 -> [ 19.549562] (3:p2@Perl) p2 compute 5e8 5.097100 -> [ 24.646662] (1:p0@Tremblay) p0 compute 5e8 5.097100 -> [ 31.817801] (0:maestro@) Simulation time 31.8178 -> [ 31.817801] (1:p0@Tremblay) p0 allReduce 5e8 5e8 7.171139 -> [ 31.817801] (2:p1@Ruby) p1 allReduce 5e8 5e8 7.171139 -> [ 31.817801] (3:p2@Perl) p2 allReduce 5e8 5e8 7.171139 diff --git a/examples/msg/actions-mpi/actions-mpi_split_p0.txt b/examples/msg/actions-mpi/actions-mpi_split_p0.txt deleted file mode 100644 index b873353e26..0000000000 --- a/examples/msg/actions-mpi/actions-mpi_split_p0.txt +++ /dev/null @@ -1,7 +0,0 @@ -# sample action file (with only the actions for p0, -# to be launched by deployment file) -p0 init -p0 recv p1 -p0 compute 12 -p0 finalize - diff --git a/examples/msg/actions-mpi/actions-mpi_split_p1.txt b/examples/msg/actions-mpi/actions-mpi_split_p1.txt deleted file mode 100644 index 2c38b293c6..0000000000 --- a/examples/msg/actions-mpi/actions-mpi_split_p1.txt +++ /dev/null @@ -1,6 +0,0 @@ -# sample action file (with only the actions for p1, -# to be launched by deployment file) -p1 init -p1 send p0 1e10 -p1 sleep 12 -p1 finalize diff --git a/examples/msg/bittorrent/bittorrent.tesh b/examples/msg/app-bittorrent/app-bittorrent.tesh similarity index 93% rename from examples/msg/bittorrent/bittorrent.tesh rename to examples/msg/app-bittorrent/app-bittorrent.tesh index 956f4a30f4..dbb9cbccdb 100755 --- a/examples/msg/bittorrent/bittorrent.tesh +++ b/examples/msg/app-bittorrent/app-bittorrent.tesh @@ -4,7 +4,7 @@ p Testing the Bittorrent implementation with MSG ! timeout 10 ! output sort 19 -$ $SG_TEST_EXENV ${bindir:=.}/bittorrent ${srcdir:=.}/cluster.xml ${srcdir:=.}/../msg/bittorrent/bittorrent_d.xml "--log=root.fmt:[%12.6r]%e(%i:%P@%h)%e%m%n" +$ $SG_TEST_EXENV ${bindir:=.}/bittorrent ${srcdir:=.}/cluster.xml ${srcdir:=.}/../msg/app-bittorrent/app-bittorrent_d.xml "--log=root.fmt:[%12.6r]%e(%i:%P@%h)%e%m%n" > [ 0.000000] (1:tracker@node-0.acme.org) Tracker launched. > [ 0.000000] (2:peer@node-1.acme.org) Hi, I'm joining the network with id 2 > [ 0.000000] (3:peer@node-2.acme.org) Hi, I'm joining the network with id 3 diff --git a/examples/msg/bittorrent/bittorrent_d.xml b/examples/msg/app-bittorrent/app-bittorrent_d.xml similarity index 100% rename from examples/msg/bittorrent/bittorrent_d.xml rename to examples/msg/app-bittorrent/app-bittorrent_d.xml diff --git a/examples/msg/bittorrent/bittorrent.c b/examples/msg/app-bittorrent/bittorrent.c similarity index 100% rename from examples/msg/bittorrent/bittorrent.c rename to examples/msg/app-bittorrent/bittorrent.c diff --git a/examples/msg/bittorrent/bittorrent.h b/examples/msg/app-bittorrent/bittorrent.h similarity index 100% rename from examples/msg/bittorrent/bittorrent.h rename to examples/msg/app-bittorrent/bittorrent.h diff --git a/examples/msg/bittorrent/connection.c b/examples/msg/app-bittorrent/connection.c similarity index 100% rename from examples/msg/bittorrent/connection.c rename to examples/msg/app-bittorrent/connection.c diff --git a/examples/msg/bittorrent/connection.h b/examples/msg/app-bittorrent/connection.h similarity index 100% rename from examples/msg/bittorrent/connection.h rename to examples/msg/app-bittorrent/connection.h diff --git a/examples/msg/bittorrent/generate.py b/examples/msg/app-bittorrent/generate.py similarity index 100% rename from examples/msg/bittorrent/generate.py rename to examples/msg/app-bittorrent/generate.py diff --git a/examples/msg/bittorrent/messages.c b/examples/msg/app-bittorrent/messages.c similarity index 100% rename from examples/msg/bittorrent/messages.c rename to examples/msg/app-bittorrent/messages.c diff --git a/examples/msg/bittorrent/messages.h b/examples/msg/app-bittorrent/messages.h similarity index 100% rename from examples/msg/bittorrent/messages.h rename to examples/msg/app-bittorrent/messages.h diff --git a/examples/msg/bittorrent/peer.c b/examples/msg/app-bittorrent/peer.c similarity index 100% rename from examples/msg/bittorrent/peer.c rename to examples/msg/app-bittorrent/peer.c diff --git a/examples/msg/bittorrent/peer.h b/examples/msg/app-bittorrent/peer.h similarity index 100% rename from examples/msg/bittorrent/peer.h rename to examples/msg/app-bittorrent/peer.h diff --git a/examples/msg/bittorrent/tracker.c b/examples/msg/app-bittorrent/tracker.c similarity index 100% rename from examples/msg/bittorrent/tracker.c rename to examples/msg/app-bittorrent/tracker.c diff --git a/examples/msg/bittorrent/tracker.h b/examples/msg/app-bittorrent/tracker.h similarity index 100% rename from examples/msg/bittorrent/tracker.h rename to examples/msg/app-bittorrent/tracker.h diff --git a/examples/msg/chainsend/chainsend.tesh b/examples/msg/app-chainsend/app-chainsend.tesh similarity index 91% rename from examples/msg/chainsend/chainsend.tesh rename to examples/msg/app-chainsend/app-chainsend.tesh index 2b3436b25f..b20d4176ce 100644 --- a/examples/msg/chainsend/chainsend.tesh +++ b/examples/msg/app-chainsend/app-chainsend.tesh @@ -4,7 +4,7 @@ p Testing the chainsend MSG implementation ! timeout 60 ! output sort 19 -$ $SG_TEST_EXENV ${bindir:=.}/chainsend ${srcdir:=.}/platform.xml ${srcdir:=.}/../msg/chainsend/chainsend_d.xml "--log=root.fmt:[%12.6r]%e(%i:%P@%h)%e%m%n" +$ $SG_TEST_EXENV ${bindir:=.}/chainsend ${srcdir:=.}/platform.xml ${srcdir:=.}/../msg/app-chainsend/app-chainsend_d.xml "--log=root.fmt:[%12.6r]%e(%i:%P@%h)%e%m%n" > [ 587.704210] (2:peer@Boivin) ### 587.704224 16777216 bytes (Avg 0.027225 MB/s); copy finished (simulated). > [ 786.931829] (3:peer@Jean_Yves) ### 786.931824 16777216 bytes (Avg 0.020332 MB/s); copy finished (simulated). > [ 788.837385] (4:peer@TeX) ### 788.837402 16777216 bytes (Avg 0.020283 MB/s); copy finished (simulated). diff --git a/examples/msg/chainsend/chainsend_d.xml b/examples/msg/app-chainsend/app-chainsend_d.xml similarity index 100% rename from examples/msg/chainsend/chainsend_d.xml rename to examples/msg/app-chainsend/app-chainsend_d.xml diff --git a/examples/msg/chainsend/broadcaster.c b/examples/msg/app-chainsend/broadcaster.c similarity index 100% rename from examples/msg/chainsend/broadcaster.c rename to examples/msg/app-chainsend/broadcaster.c diff --git a/examples/msg/chainsend/broadcaster.h b/examples/msg/app-chainsend/broadcaster.h similarity index 100% rename from examples/msg/chainsend/broadcaster.h rename to examples/msg/app-chainsend/broadcaster.h diff --git a/examples/msg/chainsend/chainsend.c b/examples/msg/app-chainsend/chainsend.c similarity index 100% rename from examples/msg/chainsend/chainsend.c rename to examples/msg/app-chainsend/chainsend.c diff --git a/examples/msg/chainsend/common.c b/examples/msg/app-chainsend/common.c similarity index 100% rename from examples/msg/chainsend/common.c rename to examples/msg/app-chainsend/common.c diff --git a/examples/msg/chainsend/common.h b/examples/msg/app-chainsend/common.h similarity index 100% rename from examples/msg/chainsend/common.h rename to examples/msg/app-chainsend/common.h diff --git a/examples/msg/chainsend/iterator.c b/examples/msg/app-chainsend/iterator.c similarity index 100% rename from examples/msg/chainsend/iterator.c rename to examples/msg/app-chainsend/iterator.c diff --git a/examples/msg/chainsend/iterator.h b/examples/msg/app-chainsend/iterator.h similarity index 100% rename from examples/msg/chainsend/iterator.h rename to examples/msg/app-chainsend/iterator.h diff --git a/examples/msg/chainsend/messages.c b/examples/msg/app-chainsend/messages.c similarity index 100% rename from examples/msg/chainsend/messages.c rename to examples/msg/app-chainsend/messages.c diff --git a/examples/msg/chainsend/messages.h b/examples/msg/app-chainsend/messages.h similarity index 100% rename from examples/msg/chainsend/messages.h rename to examples/msg/app-chainsend/messages.h diff --git a/examples/msg/chainsend/peer.c b/examples/msg/app-chainsend/peer.c similarity index 100% rename from examples/msg/chainsend/peer.c rename to examples/msg/app-chainsend/peer.c diff --git a/examples/msg/chainsend/peer.h b/examples/msg/app-chainsend/peer.h similarity index 100% rename from examples/msg/chainsend/peer.h rename to examples/msg/app-chainsend/peer.h diff --git a/examples/msg/masterworker-mailbox/masterworker-mailbox-multicore.tesh b/examples/msg/app-masterworker/app-masterworker-multicore.tesh similarity index 90% rename from examples/msg/masterworker-mailbox/masterworker-mailbox-multicore.tesh rename to examples/msg/app-masterworker/app-masterworker-multicore.tesh index b1312624a1..cce44fe1a9 100644 --- a/examples/msg/masterworker-mailbox/masterworker-mailbox-multicore.tesh +++ b/examples/msg/app-masterworker/app-masterworker-multicore.tesh @@ -2,7 +2,7 @@ p Testing a simple master/worker example application -$ $SG_TEST_EXENV ./masterworker-mailbox/masterworker-mailbox ${srcdir:=.}/../platforms/multicore_machine.xml ${srcdir:=.}/masterworker-mailbox/masterworker-mailbox-multicore_d.xml --cfg=cpu/model:Cas01 --cfg=cpu/optim:Full +$ $SG_TEST_EXENV ./app-masterworker/app-masterworker ${srcdir:=.}/../platforms/multicore_machine.xml ${srcdir:=.}/app-masterworker/app-masterworker-multicore_d.xml --cfg=cpu/model:Cas01 --cfg=cpu/optim:Full > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'cpu/model' to 'Cas01' > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'cpu/optim' to 'Full' > [Tremblay:master:(1) 0.000000] [msg_test/INFO] Got 6 workers and 20 tasks to process diff --git a/examples/msg/masterworker-mailbox/masterworker-mailbox-multicore_d.xml b/examples/msg/app-masterworker/app-masterworker-multicore_d.xml similarity index 100% rename from examples/msg/masterworker-mailbox/masterworker-mailbox-multicore_d.xml rename to examples/msg/app-masterworker/app-masterworker-multicore_d.xml diff --git a/examples/msg/masterworker-mailbox/masterworker-mailbox-vivaldi.tesh b/examples/msg/app-masterworker/app-masterworker-vivaldi.tesh similarity index 91% rename from examples/msg/masterworker-mailbox/masterworker-mailbox-vivaldi.tesh rename to examples/msg/app-masterworker/app-masterworker-vivaldi.tesh index 2f488002a2..645e6e8656 100644 --- a/examples/msg/masterworker-mailbox/masterworker-mailbox-vivaldi.tesh +++ b/examples/msg/app-masterworker/app-masterworker-vivaldi.tesh @@ -2,7 +2,7 @@ p Testing a simple master/worker example application -$ $SG_TEST_EXENV ./masterworker-mailbox/masterworker-mailbox ${srcdir:=.}/../platforms/vivaldi.xml ${srcdir:=.}/masterworker-mailbox/masterworker-mailbox-vivaldi_d.xml --cfg=network/latency_factor:1.0 --cfg=network/bandwidth_factor:1.0 +$ $SG_TEST_EXENV ./app-masterworker/app-masterworker ${srcdir:=.}/../platforms/vivaldi.xml ${srcdir:=.}/app-masterworker/app-masterworker-vivaldi_d.xml --cfg=network/latency_factor:1.0 --cfg=network/bandwidth_factor:1.0 > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'network/latency_factor' to '1.0' > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'network/bandwidth_factor' to '1.0' > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'network/coordinates' to 'yes' diff --git a/examples/msg/masterworker-mailbox/masterworker-mailbox-vivaldi_d.xml b/examples/msg/app-masterworker/app-masterworker-vivaldi_d.xml similarity index 100% rename from examples/msg/masterworker-mailbox/masterworker-mailbox-vivaldi_d.xml rename to examples/msg/app-masterworker/app-masterworker-vivaldi_d.xml diff --git a/examples/msg/masterworker-mailbox/masterworker-mailbox.c b/examples/msg/app-masterworker/app-masterworker.c similarity index 96% rename from examples/msg/masterworker-mailbox/masterworker-mailbox.c rename to examples/msg/app-masterworker/app-masterworker.c index e381763989..e61f066993 100644 --- a/examples/msg/masterworker-mailbox/masterworker-mailbox.c +++ b/examples/msg/app-masterworker/app-masterworker.c @@ -48,16 +48,14 @@ static int master(int argc, char *argv[]) static int worker(int argc, char *argv[]) { msg_task_t task = NULL; - XBT_ATTRIB_UNUSED int res; char mailbox[80]; - XBT_ATTRIB_UNUSED int read; long id= xbt_str_parse_int(argv[1], "Invalid argument %s"); sprintf(mailbox, "worker-%ld", id); while (1) { - res = MSG_task_receive(&(task), mailbox); + int res = MSG_task_receive(&(task), mailbox); xbt_assert(res == MSG_OK, "MSG_task_get failed"); // XBT_INFO("Received \"%s\"", MSG_task_get_name(task)); diff --git a/examples/msg/masterworker-mailbox/masterworker-mailbox.tesh b/examples/msg/app-masterworker/app-masterworker.tesh similarity index 90% rename from examples/msg/masterworker-mailbox/masterworker-mailbox.tesh rename to examples/msg/app-masterworker/app-masterworker.tesh index ba612eeb4e..988bda3151 100644 --- a/examples/msg/masterworker-mailbox/masterworker-mailbox.tesh +++ b/examples/msg/app-masterworker/app-masterworker.tesh @@ -3,7 +3,7 @@ p Testing a simple master/worker example application (mailbox version) ! output sort 19 -$ $SG_TEST_EXENV ${bindir:=.}/masterworker-mailbox$EXEEXT ${srcdir:=.}/small_platform_with_routers.xml ${srcdir:=.}/../msg/masterworker-mailbox/masterworker-mailbox_d.xml --cfg=network/crosstraffic:0 --trace "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" +$ $SG_TEST_EXENV ${bindir:=.}/app-masterworker$EXEEXT ${srcdir:=.}/small_platform_with_routers.xml ${srcdir:=.}/../msg/app-masterworker/app-masterworker_d.xml --cfg=network/crosstraffic:0 --trace "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" > [ 0.000000] (0:maestro@) Configuration change: Set 'network/crosstraffic' to '0' > [ 0.000000] (1:master@Tremblay) Got 5 workers and 20 tasks to process > [ 0.000000] (1:master@Tremblay) Sending "Task_0" (of 20) to mailbox "worker-0" @@ -34,7 +34,7 @@ $ $SG_TEST_EXENV ${bindir:=.}/masterworker-mailbox$EXEEXT ${srcdir:=.}/small_pla > [ 5.094868] (0:maestro@) Simulation time 5.09487 > [ 5.094868] (6:worker@Bourassa) I'm done. See you! -$ $SG_TEST_EXENV ${bindir:=.}/masterworker-mailbox$EXEEXT ${srcdir:=.}/small_platform_with_routers.xml ${srcdir:=.}/../msg/masterworker-mailbox/masterworker-mailbox_d.xml --trace "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" +$ $SG_TEST_EXENV ${bindir:=.}/app-masterworker$EXEEXT ${srcdir:=.}/small_platform_with_routers.xml ${srcdir:=.}/../msg/app-masterworker/app-masterworker_d.xml --trace "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" > [ 0.000000] (1:master@Tremblay) Got 5 workers and 20 tasks to process > [ 0.000000] (1:master@Tremblay) Sending "Task_0" (of 20) to mailbox "worker-0" > [ 0.002265] (1:master@Tremblay) Sending "Task_1" (of 20) to mailbox "worker-1" diff --git a/examples/msg/masterworker/masterworker_d.xml b/examples/msg/app-masterworker/app-masterworker_d.xml similarity index 62% rename from examples/msg/masterworker/masterworker_d.xml rename to examples/msg/app-masterworker/app-masterworker_d.xml index 4746b97a3e..764eadd0a1 100644 --- a/examples/msg/masterworker/masterworker_d.xml +++ b/examples/msg/app-masterworker/app-masterworker_d.xml @@ -6,16 +6,12 @@ - - - - - + - - - - - - + + + + + + diff --git a/examples/msg/failures/failures.c b/examples/msg/failures/failures.c index 4a261ceaeb..4065d0f4ce 100644 --- a/examples/msg/failures/failures.c +++ b/examples/msg/failures/failures.c @@ -12,45 +12,23 @@ XBT_LOG_NEW_DEFAULT_CATEGORY(msg_test, "Messages specific for this msg example") static int master(int argc, char *argv[]) { - int workers_count = 0; - msg_host_t *workers = NULL; - int number_of_tasks = 0; - double task_comp_size = 0; - double task_comm_size = 0; int i; - XBT_ATTRIB_UNUSED int read; - - read = sscanf(argv[1], "%d", &number_of_tasks); - xbt_assert(read, "Invalid argument %s\n", argv[1]); - read = sscanf(argv[2], "%lg", &task_comp_size); - xbt_assert(read, "Invalid argument %s\n", argv[2]); - read = sscanf(argv[3], "%lg", &task_comm_size); - xbt_assert(read, "Invalid argument %s\n", argv[3]); - - { /* Process organization */ - workers_count = argc - 4; - workers = xbt_new0(msg_host_t, workers_count); - - for (i = 4; i < argc; i++) { - workers[i - 4] = MSG_host_by_name(argv[i]); - if (workers[i - 4] == NULL) { - XBT_INFO("Unknown host %s. Stopping Now! ", argv[i]); - abort(); - } - } - } - XBT_INFO("Got %d worker(s) :", workers_count); - for (i = 0; i < workers_count; i++) - XBT_INFO("%s", MSG_host_get_name(workers[i])); + long number_of_tasks = xbt_str_parse_int(argv[1], "Invalid amount of tasks: %s"); + double task_comp_size = xbt_str_parse_double(argv[2], "Invalid computational size: %s"); + double task_comm_size = xbt_str_parse_double(argv[3], "Invalid communication size: %s"); + long workers_count = xbt_str_parse_int(argv[4], "Invalid amount of workers: %s"); - XBT_INFO("Got %d task to process :", number_of_tasks); + XBT_INFO("Got %ld workers and %ld tasks to process", workers_count, number_of_tasks); for (i = 0; i < number_of_tasks; i++) { + char mailbox[256]; + sprintf(mailbox, "worker-%ld", i % workers_count); + msg_task_t task = MSG_task_create("Task", task_comp_size, task_comm_size, xbt_new0(double, 1)); *((double *) task->data) = MSG_get_clock(); - msg_error_t a = MSG_task_send_with_timeout(task,MSG_host_get_name(workers[i % workers_count]),10.0); + msg_error_t a = MSG_task_send_with_timeout(task,mailbox,10.0); if (a == MSG_OK) { XBT_INFO("Send completed"); @@ -58,16 +36,13 @@ static int master(int argc, char *argv[]) XBT_INFO("Gloups. The cpu on which I'm running just turned off!. See you!"); free(task->data); MSG_task_destroy(task); - free(workers); return 0; } else if (a == MSG_TRANSFER_FAILURE) { - XBT_INFO("Mmh. Something went wrong with '%s'. Nevermind. Let's keep going!", - MSG_host_get_name(workers[i % workers_count])); + XBT_INFO("Mmh. Something went wrong with '%s'. Nevermind. Let's keep going!", mailbox); free(task->data); MSG_task_destroy(task); } else if (a == MSG_TIMEOUT) { - XBT_INFO ("Mmh. Got timeouted while speaking to '%s'. Nevermind. Let's keep going!", - MSG_host_get_name(workers[i % workers_count])); + XBT_INFO ("Mmh. Got timeouted while speaking to '%s'. Nevermind. Let's keep going!", mailbox); free(task->data); MSG_task_destroy(task); } else { @@ -78,47 +53,53 @@ static int master(int argc, char *argv[]) XBT_INFO("All tasks have been dispatched. Let's tell everybody the computation is over."); for (i = 0; i < workers_count; i++) { + char mailbox[256]; + sprintf(mailbox, "worker-%ld", i % workers_count); msg_task_t task = MSG_task_create("finalize", 0, 0, FINALIZE); - int a = MSG_task_send_with_timeout(task,MSG_host_get_name(workers[i]),1.0); + int a = MSG_task_send_with_timeout(task,mailbox,1.0); if (a == MSG_OK) continue; if (a == MSG_HOST_FAILURE) { XBT_INFO("Gloups. The cpu on which I'm running just turned off!. See you!"); MSG_task_destroy(task); - free(workers); return 0; } else if (a == MSG_TRANSFER_FAILURE) { - XBT_INFO("Mmh. Can't reach '%s'! Nevermind. Let's keep going!", MSG_host_get_name(workers[i])); + XBT_INFO("Mmh. Can't reach '%s'! Nevermind. Let's keep going!", mailbox); MSG_task_destroy(task); } else if (a == MSG_TIMEOUT) { - XBT_INFO("Mmh. Got timeouted while speaking to '%s'. Nevermind. Let's keep going!", - MSG_host_get_name(workers[i % workers_count])); + XBT_INFO("Mmh. Got timeouted while speaking to '%s'. Nevermind. Let's keep going!", mailbox); MSG_task_destroy(task); } else { XBT_INFO("Hey ?! What's up ? "); - xbt_die("Unexpected behavior with '%s': %d", MSG_host_get_name(workers[i]), a); + xbt_die("Unexpected behavior with '%s': %d", mailbox, a); } } XBT_INFO("Goodbye now!"); - free(workers); return 0; } static int worker(int argc, char *argv[]) { + msg_task_t task = NULL; + char mailbox[80]; + + long id= xbt_str_parse_int(argv[1], "Invalid argument %s"); + + sprintf(mailbox, "worker-%ld", id); + while (1) { - msg_task_t task = NULL; int a; double time1, time2; time1 = MSG_get_clock(); - a = MSG_task_receive( &(task), MSG_host_get_name(MSG_host_self()) ); + a = MSG_task_receive( &(task), mailbox); time2 = MSG_get_clock(); if (a == MSG_OK) { XBT_INFO("Received \"%s\"", MSG_task_get_name(task)); if (MSG_task_get_data(task) == FINALIZE) { MSG_task_destroy(task); + task = NULL; break; } if (time1 < *((double *) task->data)) @@ -130,10 +111,12 @@ static int worker(int argc, char *argv[]) XBT_INFO("\"%s\" done", MSG_task_get_name(task)); free(task->data); MSG_task_destroy(task); + task = NULL; } else if (a == MSG_HOST_FAILURE) { XBT_INFO("Gloups. The cpu on which I'm running just turned off!. See you!"); free(task->data); MSG_task_destroy(task); + task = NULL; return 0; } else { XBT_INFO("Hey ?! What's up ? "); diff --git a/examples/msg/failures/failures.tesh b/examples/msg/failures/failures.tesh index 77da0165b9..70797a18c3 100644 --- a/examples/msg/failures/failures.tesh +++ b/examples/msg/failures/failures.tesh @@ -3,20 +3,19 @@ p Testing a simple master/worker example application handling failures TCP crosstraffic DISABLED ! output sort 19 -$ $SG_TEST_EXENV ${bindir:=.}/failures$EXEEXT --log=xbt_cfg.thres:critical --log=no_loc ${srcdir:=.}/small_platform_with_failures.xml ${srcdir:=.}/../msg/masterworker/masterworker_d.xml --cfg=path:${srcdir} --cfg=network/crosstraffic:0 "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" +$ $SG_TEST_EXENV ${bindir:=.}/failures$EXEEXT --log=xbt_cfg.thres:critical --log=no_loc ${srcdir:=.}/small_platform_with_failures.xml ${srcdir:=.}/../msg/app-masterworker/app-masterworker_d.xml --cfg=path:${srcdir} --cfg=network/crosstraffic:0 "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" > [ 0.000000] (0:maestro@) Cannot launch process 'worker' on failed host 'Fafard' -> [ 0.000000] (1:master@Tremblay) Got 5 worker(s) : -> [ 0.000000] (1:master@Tremblay) Jupiter -> [ 0.000000] (1:master@Tremblay) Fafard -> [ 0.000000] (1:master@Tremblay) Ginette -> [ 0.000000] (1:master@Tremblay) Bourassa -> [ 0.000000] (1:master@Tremblay) Tremblay -> [ 0.000000] (1:master@Tremblay) Got 20 task to process : +> [ 0.000000] (1:master@Tremblay) Got 5 workers and 20 tasks to process +> [ 0.010309] (1:master@Tremblay) Send completed +> [ 0.010309] (2:worker@Tremblay) Received "Task" +> [ 0.010309] (2:worker@Tremblay) Communication time : "0.010309" +> [ 0.010309] (2:worker@Tremblay) Processing "Task" > [ 1.000000] (0:maestro@) Restart processes on host: Fafard -> [ 1.000000] (1:master@Tremblay) Mmh. Something went wrong with 'Jupiter'. Nevermind. Let's keep going! +> [ 1.000000] (1:master@Tremblay) Mmh. Something went wrong with 'worker-1'. Nevermind. Let's keep going! > [ 1.000000] (3:worker@Jupiter) Gloups. The cpu on which I'm running just turned off!. See you! > [ 2.000000] (0:maestro@) Restart processes on host: Jupiter -> [ 11.000000] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'Fafard'. Nevermind. Let's keep going! +> [ 2.010309] (2:worker@Tremblay) "Task" done +> [ 11.000000] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'worker-2'. Nevermind. Let's keep going! > [ 12.030928] (1:master@Tremblay) Send completed > [ 12.030928] (4:worker@Ginette) Received "Task" > [ 12.030928] (4:worker@Ginette) Communication time : "1.030928" @@ -37,8 +36,8 @@ $ $SG_TEST_EXENV ${bindir:=.}/failures$EXEEXT --log=xbt_cfg.thres:critical --log > [ 15.061856] (5:worker@Bourassa) "Task" done > [ 15.072165] (2:worker@Tremblay) "Task" done > [ 16.103093] (6:worker@Jupiter) "Task" done -> [ 24.103093] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'Fafard'. Nevermind. Let's keep going! -> [ 24.103093] (1:master@Tremblay) Mmh. Something went wrong with 'Ginette'. Nevermind. Let's keep going! +> [ 24.103093] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'worker-2'. Nevermind. Let's keep going! +> [ 24.103093] (1:master@Tremblay) Mmh. Something went wrong with 'worker-3'. Nevermind. Let's keep going! > [ 24.103093] (4:worker@Ginette) Mmh. Something went wrong. Nevermind. Let's keep going! > [ 25.134021] (1:master@Tremblay) Send completed > [ 25.134021] (5:worker@Bourassa) Received "Task" @@ -55,9 +54,9 @@ $ $SG_TEST_EXENV ${bindir:=.}/failures$EXEEXT --log=xbt_cfg.thres:critical --log > [ 27.134021] (5:worker@Bourassa) "Task" done > [ 27.144330] (2:worker@Tremblay) "Task" done > [ 28.175258] (6:worker@Jupiter) "Task" done -> [ 36.175258] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'Fafard'. Nevermind. Let's keep going! +> [ 36.175258] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'worker-2'. Nevermind. Let's keep going! > [ 37.206186] (1:master@Tremblay) Send completed -> [ 37.206186] (1:master@Tremblay) Mmh. Something went wrong with 'Bourassa'. Nevermind. Let's keep going! +> [ 37.206186] (1:master@Tremblay) Mmh. Something went wrong with 'worker-4'. Nevermind. Let's keep going! > [ 37.206186] (4:worker@Ginette) Received "Task" > [ 37.206186] (4:worker@Ginette) Communication time : "1.030928" > [ 37.206186] (4:worker@Ginette) Processing "Task" @@ -73,51 +72,45 @@ $ $SG_TEST_EXENV ${bindir:=.}/failures$EXEEXT --log=xbt_cfg.thres:critical --log > [ 39.206186] (4:worker@Ginette) "Task" done > [ 39.216495] (2:worker@Tremblay) "Task" done > [ 40.247423] (6:worker@Jupiter) "Task" done -> [ 48.247423] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'Fafard'. Nevermind. Let's keep going! +> [ 48.247423] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'worker-2'. Nevermind. Let's keep going! > [ 49.278351] (1:master@Tremblay) Send completed > [ 49.278351] (4:worker@Ginette) Received "Task" > [ 49.278351] (4:worker@Ginette) Communication time : "1.030928" > [ 49.278351] (4:worker@Ginette) Processing "Task" > [ 50.000000] (4:worker@Ginette) Gloups. The cpu on which I'm running just turned off!. See you! > [ 50.309278] (1:master@Tremblay) Send completed +> [ 50.309278] (1:master@Tremblay) All tasks have been dispatched. Let's tell everybody the computation is over. +> [ 50.309278] (2:worker@Tremblay) Received "finalize" +> [ 50.309278] (2:worker@Tremblay) I'm done. See you! > [ 50.309278] (5:worker@Bourassa) Received "Task" > [ 50.309278] (5:worker@Bourassa) Communication time : "1.030928" > [ 50.309278] (5:worker@Bourassa) Processing "Task" -> [ 50.319588] (1:master@Tremblay) Send completed -> [ 50.319588] (1:master@Tremblay) All tasks have been dispatched. Let's tell everybody the computation is over. -> [ 50.319588] (2:worker@Tremblay) Received "Task" -> [ 50.319588] (2:worker@Tremblay) Communication time : "0.010309" -> [ 50.319588] (2:worker@Tremblay) Processing "Task" -> [ 50.319588] (6:worker@Jupiter) Received "finalize" -> [ 50.319588] (6:worker@Jupiter) I'm done. See you! -> [ 51.319588] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'Fafard'. Nevermind. Let's keep going! +> [ 50.309278] (6:worker@Jupiter) Received "finalize" +> [ 50.309278] (6:worker@Jupiter) I'm done. See you! +> [ 51.309278] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'worker-2'. Nevermind. Let's keep going! +> [ 52.309278] (0:maestro@) Simulation time 52.3093 +> [ 52.309278] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'worker-3'. Nevermind. Let's keep going! +> [ 52.309278] (1:master@Tremblay) Goodbye now! > [ 52.309278] (5:worker@Bourassa) "Task" done -> [ 52.319588] (0:maestro@) Simulation time 52.3196 -> [ 52.319588] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'Ginette'. Nevermind. Let's keep going! -> [ 52.319588] (1:master@Tremblay) Goodbye now! -> [ 52.319588] (2:worker@Tremblay) "Task" done -> [ 52.319588] (2:worker@Tremblay) Received "finalize" -> [ 52.319588] (2:worker@Tremblay) I'm done. See you! -> [ 52.319588] (5:worker@Bourassa) Received "finalize" -> [ 52.319588] (5:worker@Bourassa) I'm done. See you! +> [ 52.309278] (5:worker@Bourassa) Received "finalize" +> [ 52.309278] (5:worker@Bourassa) I'm done. See you! p Testing a simple master/worker example application handling failures. TCP crosstraffic ENABLED ! output sort 19 -$ $SG_TEST_EXENV ${bindir:=.}/failures$EXEEXT --log=xbt_cfg.thres:critical --log=no_loc ${srcdir:=.}/small_platform_with_failures.xml ${srcdir:=.}/../msg/masterworker/masterworker_d.xml --cfg=path:${srcdir} "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" +$ $SG_TEST_EXENV ${bindir:=.}/failures$EXEEXT --log=xbt_cfg.thres:critical --log=no_loc ${srcdir:=.}/small_platform_with_failures.xml ${srcdir:=.}/../msg/app-masterworker/app-masterworker_d.xml --cfg=path:${srcdir} "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" > [ 0.000000] (0:maestro@) Cannot launch process 'worker' on failed host 'Fafard' -> [ 0.000000] (1:master@Tremblay) Got 5 worker(s) : -> [ 0.000000] (1:master@Tremblay) Jupiter -> [ 0.000000] (1:master@Tremblay) Fafard -> [ 0.000000] (1:master@Tremblay) Ginette -> [ 0.000000] (1:master@Tremblay) Bourassa -> [ 0.000000] (1:master@Tremblay) Tremblay -> [ 0.000000] (1:master@Tremblay) Got 20 task to process : +> [ 0.000000] (1:master@Tremblay) Got 5 workers and 20 tasks to process +> [ 0.010825] (1:master@Tremblay) Send completed +> [ 0.010825] (2:worker@Tremblay) Received "Task" +> [ 0.010825] (2:worker@Tremblay) Communication time : "0.010825" +> [ 0.010825] (2:worker@Tremblay) Processing "Task" > [ 1.000000] (0:maestro@) Restart processes on host: Fafard -> [ 1.000000] (1:master@Tremblay) Mmh. Something went wrong with 'Jupiter'. Nevermind. Let's keep going! +> [ 1.000000] (1:master@Tremblay) Mmh. Something went wrong with 'worker-1'. Nevermind. Let's keep going! > [ 1.000000] (3:worker@Jupiter) Gloups. The cpu on which I'm running just turned off!. See you! > [ 2.000000] (0:maestro@) Restart processes on host: Jupiter -> [ 11.000000] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'Fafard'. Nevermind. Let's keep going! +> [ 2.010825] (2:worker@Tremblay) "Task" done +> [ 11.000000] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'worker-2'. Nevermind. Let's keep going! > [ 12.082474] (1:master@Tremblay) Send completed > [ 12.082474] (4:worker@Ginette) Received "Task" > [ 12.082474] (4:worker@Ginette) Communication time : "1.082474" @@ -138,8 +131,8 @@ $ $SG_TEST_EXENV ${bindir:=.}/failures$EXEEXT --log=xbt_cfg.thres:critical --log > [ 15.164948] (5:worker@Bourassa) "Task" done > [ 15.175773] (2:worker@Tremblay) "Task" done > [ 16.258247] (6:worker@Jupiter) "Task" done -> [ 24.258247] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'Fafard'. Nevermind. Let's keep going! -> [ 24.258247] (1:master@Tremblay) Mmh. Something went wrong with 'Ginette'. Nevermind. Let's keep going! +> [ 24.258247] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'worker-2'. Nevermind. Let's keep going! +> [ 24.258247] (1:master@Tremblay) Mmh. Something went wrong with 'worker-3'. Nevermind. Let's keep going! > [ 24.258247] (4:worker@Ginette) Mmh. Something went wrong. Nevermind. Let's keep going! > [ 25.340722] (1:master@Tremblay) Send completed > [ 25.340722] (5:worker@Bourassa) Received "Task" @@ -156,9 +149,9 @@ $ $SG_TEST_EXENV ${bindir:=.}/failures$EXEEXT --log=xbt_cfg.thres:critical --log > [ 27.340722] (5:worker@Bourassa) "Task" done > [ 27.351546] (2:worker@Tremblay) "Task" done > [ 28.434021] (6:worker@Jupiter) "Task" done -> [ 36.434021] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'Fafard'. Nevermind. Let's keep going! +> [ 36.434021] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'worker-2'. Nevermind. Let's keep going! > [ 37.516495] (1:master@Tremblay) Send completed -> [ 37.516495] (1:master@Tremblay) Mmh. Something went wrong with 'Bourassa'. Nevermind. Let's keep going! +> [ 37.516495] (1:master@Tremblay) Mmh. Something went wrong with 'worker-4'. Nevermind. Let's keep going! > [ 37.516495] (4:worker@Ginette) Received "Task" > [ 37.516495] (4:worker@Ginette) Communication time : "1.082474" > [ 37.516495] (4:worker@Ginette) Processing "Task" @@ -174,51 +167,45 @@ $ $SG_TEST_EXENV ${bindir:=.}/failures$EXEEXT --log=xbt_cfg.thres:critical --log > [ 39.516495] (4:worker@Ginette) "Task" done > [ 39.527320] (2:worker@Tremblay) "Task" done > [ 40.609794] (6:worker@Jupiter) "Task" done -> [ 48.609794] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'Fafard'. Nevermind. Let's keep going! +> [ 48.609794] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'worker-2'. Nevermind. Let's keep going! > [ 49.692268] (1:master@Tremblay) Send completed > [ 49.692268] (4:worker@Ginette) Received "Task" > [ 49.692268] (4:worker@Ginette) Communication time : "1.082474" > [ 49.692268] (4:worker@Ginette) Processing "Task" > [ 50.000000] (4:worker@Ginette) Gloups. The cpu on which I'm running just turned off!. See you! > [ 50.774742] (1:master@Tremblay) Send completed +> [ 50.774742] (1:master@Tremblay) All tasks have been dispatched. Let's tell everybody the computation is over. +> [ 50.774742] (2:worker@Tremblay) Received "finalize" +> [ 50.774742] (2:worker@Tremblay) I'm done. See you! > [ 50.774742] (5:worker@Bourassa) Received "Task" > [ 50.774742] (5:worker@Bourassa) Communication time : "1.082474" > [ 50.774742] (5:worker@Bourassa) Processing "Task" -> [ 50.785567] (1:master@Tremblay) Send completed -> [ 50.785567] (1:master@Tremblay) All tasks have been dispatched. Let's tell everybody the computation is over. -> [ 50.785567] (2:worker@Tremblay) Received "Task" -> [ 50.785567] (2:worker@Tremblay) Communication time : "0.010825" -> [ 50.785567] (2:worker@Tremblay) Processing "Task" -> [ 50.785567] (6:worker@Jupiter) Received "finalize" -> [ 50.785567] (6:worker@Jupiter) I'm done. See you! -> [ 51.785567] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'Fafard'. Nevermind. Let's keep going! +> [ 50.774742] (6:worker@Jupiter) Received "finalize" +> [ 50.774742] (6:worker@Jupiter) I'm done. See you! +> [ 51.774742] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'worker-2'. Nevermind. Let's keep going! +> [ 52.774742] (0:maestro@) Simulation time 52.7747 +> [ 52.774742] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'worker-3'. Nevermind. Let's keep going! +> [ 52.774742] (1:master@Tremblay) Goodbye now! > [ 52.774742] (5:worker@Bourassa) "Task" done -> [ 52.785567] (0:maestro@) Simulation time 52.7856 -> [ 52.785567] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'Ginette'. Nevermind. Let's keep going! -> [ 52.785567] (1:master@Tremblay) Goodbye now! -> [ 52.785567] (2:worker@Tremblay) "Task" done -> [ 52.785567] (2:worker@Tremblay) Received "finalize" -> [ 52.785567] (2:worker@Tremblay) I'm done. See you! -> [ 52.785567] (5:worker@Bourassa) Received "finalize" -> [ 52.785567] (5:worker@Bourassa) I'm done. See you! +> [ 52.774742] (5:worker@Bourassa) Received "finalize" +> [ 52.774742] (5:worker@Bourassa) I'm done. See you! p Testing a simple master/worker example application handling failures. CPU_TI optimization enabled ! output sort 19 -$ $SG_TEST_EXENV ${bindir:=.}/failures$EXEEXT --log=xbt_cfg.thres:critical --log=no_loc ${srcdir:=.}/small_platform_with_failures.xml ${srcdir:=.}/../msg/masterworker/masterworker_d.xml --cfg=path:${srcdir} -cfg=cpu/optim:TI "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" +$ $SG_TEST_EXENV ${bindir:=.}/failures$EXEEXT --log=xbt_cfg.thres:critical --log=no_loc ${srcdir:=.}/small_platform_with_failures.xml ${srcdir:=.}/../msg/app-masterworker/app-masterworker_d.xml --cfg=path:${srcdir} -cfg=cpu/optim:TI "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" > [ 0.000000] (0:maestro@) Cannot launch process 'worker' on failed host 'Fafard' -> [ 0.000000] (1:master@Tremblay) Got 5 worker(s) : -> [ 0.000000] (1:master@Tremblay) Jupiter -> [ 0.000000] (1:master@Tremblay) Fafard -> [ 0.000000] (1:master@Tremblay) Ginette -> [ 0.000000] (1:master@Tremblay) Bourassa -> [ 0.000000] (1:master@Tremblay) Tremblay -> [ 0.000000] (1:master@Tremblay) Got 20 task to process : +> [ 0.000000] (1:master@Tremblay) Got 5 workers and 20 tasks to process +> [ 0.010825] (1:master@Tremblay) Send completed +> [ 0.010825] (2:worker@Tremblay) Received "Task" +> [ 0.010825] (2:worker@Tremblay) Communication time : "0.010825" +> [ 0.010825] (2:worker@Tremblay) Processing "Task" > [ 1.000000] (0:maestro@) Restart processes on host: Fafard -> [ 1.000000] (1:master@Tremblay) Mmh. Something went wrong with 'Jupiter'. Nevermind. Let's keep going! +> [ 1.000000] (1:master@Tremblay) Mmh. Something went wrong with 'worker-1'. Nevermind. Let's keep going! > [ 1.000000] (3:worker@Jupiter) Gloups. The cpu on which I'm running just turned off!. See you! > [ 2.000000] (0:maestro@) Restart processes on host: Jupiter -> [ 11.000000] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'Fafard'. Nevermind. Let's keep going! +> [ 2.010825] (2:worker@Tremblay) "Task" done +> [ 11.000000] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'worker-2'. Nevermind. Let's keep going! > [ 12.082474] (1:master@Tremblay) Send completed > [ 12.082474] (4:worker@Ginette) Received "Task" > [ 12.082474] (4:worker@Ginette) Communication time : "1.082474" @@ -239,8 +226,8 @@ $ $SG_TEST_EXENV ${bindir:=.}/failures$EXEEXT --log=xbt_cfg.thres:critical --log > [ 15.164948] (5:worker@Bourassa) "Task" done > [ 15.175773] (2:worker@Tremblay) "Task" done > [ 16.258247] (6:worker@Jupiter) "Task" done -> [ 24.258247] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'Fafard'. Nevermind. Let's keep going! -> [ 24.258247] (1:master@Tremblay) Mmh. Something went wrong with 'Ginette'. Nevermind. Let's keep going! +> [ 24.258247] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'worker-2'. Nevermind. Let's keep going! +> [ 24.258247] (1:master@Tremblay) Mmh. Something went wrong with 'worker-3'. Nevermind. Let's keep going! > [ 24.258247] (4:worker@Ginette) Mmh. Something went wrong. Nevermind. Let's keep going! > [ 25.340722] (1:master@Tremblay) Send completed > [ 25.340722] (5:worker@Bourassa) Received "Task" @@ -257,9 +244,9 @@ $ $SG_TEST_EXENV ${bindir:=.}/failures$EXEEXT --log=xbt_cfg.thres:critical --log > [ 27.340722] (5:worker@Bourassa) "Task" done > [ 27.351546] (2:worker@Tremblay) "Task" done > [ 28.434021] (6:worker@Jupiter) "Task" done -> [ 36.434021] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'Fafard'. Nevermind. Let's keep going! +> [ 36.434021] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'worker-2'. Nevermind. Let's keep going! > [ 37.516495] (1:master@Tremblay) Send completed -> [ 37.516495] (1:master@Tremblay) Mmh. Something went wrong with 'Bourassa'. Nevermind. Let's keep going! +> [ 37.516495] (1:master@Tremblay) Mmh. Something went wrong with 'worker-4'. Nevermind. Let's keep going! > [ 37.516495] (4:worker@Ginette) Received "Task" > [ 37.516495] (4:worker@Ginette) Communication time : "1.082474" > [ 37.516495] (4:worker@Ginette) Processing "Task" @@ -275,30 +262,25 @@ $ $SG_TEST_EXENV ${bindir:=.}/failures$EXEEXT --log=xbt_cfg.thres:critical --log > [ 39.516495] (4:worker@Ginette) "Task" done > [ 39.527320] (2:worker@Tremblay) "Task" done > [ 40.609794] (6:worker@Jupiter) "Task" done -> [ 48.609794] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'Fafard'. Nevermind. Let's keep going! +> [ 48.609794] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'worker-2'. Nevermind. Let's keep going! > [ 49.692268] (1:master@Tremblay) Send completed > [ 49.692268] (4:worker@Ginette) Received "Task" > [ 49.692268] (4:worker@Ginette) Communication time : "1.082474" > [ 49.692268] (4:worker@Ginette) Processing "Task" > [ 50.000000] (4:worker@Ginette) Gloups. The cpu on which I'm running just turned off!. See you! > [ 50.774742] (1:master@Tremblay) Send completed +> [ 50.774742] (1:master@Tremblay) All tasks have been dispatched. Let's tell everybody the computation is over. +> [ 50.774742] (2:worker@Tremblay) Received "finalize" +> [ 50.774742] (2:worker@Tremblay) I'm done. See you! > [ 50.774742] (5:worker@Bourassa) Received "Task" > [ 50.774742] (5:worker@Bourassa) Communication time : "1.082474" > [ 50.774742] (5:worker@Bourassa) Processing "Task" -> [ 50.785567] (1:master@Tremblay) Send completed -> [ 50.785567] (1:master@Tremblay) All tasks have been dispatched. Let's tell everybody the computation is over. -> [ 50.785567] (2:worker@Tremblay) Received "Task" -> [ 50.785567] (2:worker@Tremblay) Communication time : "0.010825" -> [ 50.785567] (2:worker@Tremblay) Processing "Task" -> [ 50.785567] (6:worker@Jupiter) Received "finalize" -> [ 50.785567] (6:worker@Jupiter) I'm done. See you! -> [ 51.785567] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'Fafard'. Nevermind. Let's keep going! +> [ 50.774742] (6:worker@Jupiter) Received "finalize" +> [ 50.774742] (6:worker@Jupiter) I'm done. See you! +> [ 51.774742] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'worker-2'. Nevermind. Let's keep going! +> [ 52.774742] (0:maestro@) Simulation time 52.7747 +> [ 52.774742] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'worker-3'. Nevermind. Let's keep going! +> [ 52.774742] (1:master@Tremblay) Goodbye now! > [ 52.774742] (5:worker@Bourassa) "Task" done -> [ 52.785567] (0:maestro@) Simulation time 52.7856 -> [ 52.785567] (1:master@Tremblay) Mmh. Got timeouted while speaking to 'Ginette'. Nevermind. Let's keep going! -> [ 52.785567] (1:master@Tremblay) Goodbye now! -> [ 52.785567] (2:worker@Tremblay) "Task" done -> [ 52.785567] (2:worker@Tremblay) Received "finalize" -> [ 52.785567] (2:worker@Tremblay) I'm done. See you! -> [ 52.785567] (5:worker@Bourassa) Received "finalize" -> [ 52.785567] (5:worker@Bourassa) I'm done. See you! +> [ 52.774742] (5:worker@Bourassa) Received "finalize" +> [ 52.774742] (5:worker@Bourassa) I'm done. See you! diff --git a/examples/msg/masterworker-mailbox/masterworker-mailbox_d.xml b/examples/msg/masterworker-mailbox/masterworker-mailbox_d.xml deleted file mode 100644 index d4630047de..0000000000 --- a/examples/msg/masterworker-mailbox/masterworker-mailbox_d.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/examples/msg/masterworker/masterworker.c b/examples/msg/masterworker/masterworker.c deleted file mode 100644 index 664836ac43..0000000000 --- a/examples/msg/masterworker/masterworker.c +++ /dev/null @@ -1,121 +0,0 @@ -/* Copyright (c) 2007-2015. The SimGrid Team. - * All rights reserved. */ - -/* This program is free software; you can redistribute it and/or modify it - * under the terms of the license (GNU LGPL) which comes with this package. */ - -#include "simgrid/msg.h" - -XBT_LOG_NEW_DEFAULT_CATEGORY(msg_test, "Messages specific for this msg example"); - -/** @addtogroup MSG_examples - * - * - masterworker/masterworker.c: Master/workers example. This good old example is also very simple. Its - * basic version is fully commented on this page: \ref MSG_ex_master_worker, but several variants can be found in the - * same directory. - */ - -#define FINALIZE ((void*)221297) /* a magic number to tell people to stop working */ - -static int master(int argc, char *argv[]) -{ - msg_host_t *workers = NULL; - msg_task_t *todo = NULL; - long workers_count = 0; - int i; - - long number_of_tasks = xbt_str_parse_int(argv[1], "Invalid amount of tasks: %s"); - double task_comp_size = xbt_str_parse_double(argv[2], "Invalid computational size: %s"); - double task_comm_size = xbt_str_parse_double(argv[3], "Invalid communication size: %s"); - - { /* Task creation */ - char sprintf_buffer[64]; - - todo = xbt_new0(msg_task_t, number_of_tasks); - - for (i = 0; i < number_of_tasks; i++) { - sprintf(sprintf_buffer, "Task_%d", i); - todo[i] = MSG_task_create(sprintf_buffer, task_comp_size, task_comm_size, NULL); - } - } - - { /* Process organization */ - workers_count = argc - 4; - workers = xbt_new0(msg_host_t, workers_count); - - for (i = 4; i < argc; i++) { - workers[i - 4] = MSG_host_by_name(argv[i]); - xbt_assert(workers[i - 4] != NULL, "Unknown host %s. Stopping Now! ", argv[i]); - } - } - - XBT_INFO("Got %ld workers and %ld tasks to process", workers_count, number_of_tasks); - for (i = 0; i < workers_count; i++) - XBT_DEBUG("%s", MSG_host_get_name(workers[i])); - - for (i = 0; i < number_of_tasks; i++) { - XBT_INFO("Sending \"%s\" to \"%s\"", todo[i]->name, MSG_host_get_name(workers[i % workers_count])); - if (MSG_host_self() == workers[i % workers_count]) { - XBT_INFO("Hey ! It's me ! :)"); - } - - MSG_task_send(todo[i], MSG_host_get_name(workers[i % workers_count])); - XBT_INFO("Sent"); - } - - XBT_INFO("All tasks have been dispatched. Let's tell everybody the computation is over."); - for (i = 0; i < workers_count; i++) { - msg_task_t finalize = MSG_task_create("finalize", 0, 0, FINALIZE); - MSG_task_send(finalize, MSG_host_get_name(workers[i])); - } - - XBT_INFO("Goodbye now!"); - free(workers); - free(todo); - return 0; -} - -static int worker(int argc, char *argv[]) -{ - msg_task_t task = NULL; - XBT_ATTRIB_UNUSED int res; - while (1) { - res = MSG_task_receive(&(task),MSG_host_get_name(MSG_host_self())); - xbt_assert(res == MSG_OK, "MSG_task_get failed"); - - XBT_INFO("Received \"%s\"", MSG_task_get_name(task)); - if (!strcmp(MSG_task_get_name(task), "finalize")) { - MSG_task_destroy(task); - break; - } - - XBT_INFO("Processing \"%s\"", MSG_task_get_name(task)); - MSG_task_execute(task); - XBT_INFO("\"%s\" done", MSG_task_get_name(task)); - MSG_task_destroy(task); - task = NULL; - } - XBT_INFO("I'm done. See you!"); - return 0; -} - -int main(int argc, char *argv[]) -{ - msg_error_t res = MSG_OK; - - MSG_init(&argc, argv); - xbt_assert(argc > 2, "Usage: %s platform_file deployment_file\n" - "\tExample: %s msg_platform.xml msg_deployment.xml\n", argv[0], argv[0]); - - MSG_create_environment(argv[1]); - - MSG_function_register("master", master); - MSG_function_register("worker", worker); - MSG_launch_application(argv[2]); - - res = MSG_main(); - - XBT_INFO("Simulation time %g", MSG_get_clock()); - - return res != MSG_OK; -} diff --git a/examples/msg/masterworker/masterworker.tesh b/examples/msg/masterworker/masterworker.tesh deleted file mode 100644 index 158a2b963c..0000000000 --- a/examples/msg/masterworker/masterworker.tesh +++ /dev/null @@ -1,247 +0,0 @@ -#! ./tesh - -p Testing a simple master/worker example application. TCP crosstraffic DISABLED - -! output sort 19 -$ $SG_TEST_EXENV ${bindir:=.}/masterworker$EXEEXT ${srcdir:=.}/small_platform_with_routers.xml ${srcdir:=.}/../msg/masterworker/masterworker_d.xml --cfg=network/crosstraffic:0 --trace "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" -> [ 0.000000] (0:maestro@) Configuration change: Set 'network/crosstraffic' to '0' -> [ 0.000000] (1:master@Tremblay) Got 5 workers and 20 tasks to process -> [ 0.000000] (1:master@Tremblay) Sending "Task_0" to "Jupiter" -> [ 0.162005] (1:master@Tremblay) Sent -> [ 0.162005] (1:master@Tremblay) Sending "Task_1" to "Fafard" -> [ 0.162005] (3:worker@Jupiter) Received "Task_0" -> [ 0.162005] (3:worker@Jupiter) Processing "Task_0" -> [ 0.314083] (1:master@Tremblay) Sent -> [ 0.314083] (1:master@Tremblay) Sending "Task_2" to "Ginette" -> [ 0.314083] (4:worker@Fafard) Received "Task_1" -> [ 0.314083] (4:worker@Fafard) Processing "Task_1" -> [ 0.432712] (1:master@Tremblay) Sent -> [ 0.432712] (1:master@Tremblay) Sending "Task_3" to "Bourassa" -> [ 0.432712] (5:worker@Ginette) Received "Task_2" -> [ 0.432712] (5:worker@Ginette) Processing "Task_2" -> [ 0.560227] (1:master@Tremblay) Sent -> [ 0.560227] (1:master@Tremblay) Sending "Task_4" to "Tremblay" -> [ 0.560227] (1:master@Tremblay) Hey ! It's me ! :) -> [ 0.560227] (6:worker@Bourassa) Received "Task_3" -> [ 0.560227] (6:worker@Bourassa) Processing "Task_3" -> [ 0.562492] (1:master@Tremblay) Sent -> [ 0.562492] (1:master@Tremblay) Sending "Task_5" to "Jupiter" -> [ 0.562492] (2:worker@Tremblay) Received "Task_4" -> [ 0.562492] (2:worker@Tremblay) Processing "Task_4" -> [ 0.817347] (3:worker@Jupiter) "Task_0" done -> [ 0.969426] (4:worker@Fafard) "Task_1" done -> [ 0.979353] (1:master@Tremblay) Sent -> [ 0.979353] (1:master@Tremblay) Sending "Task_6" to "Fafard" -> [ 0.979353] (3:worker@Jupiter) Received "Task_5" -> [ 0.979353] (3:worker@Jupiter) Processing "Task_5" -> [ 1.072202] (2:worker@Tremblay) "Task_4" done -> [ 1.131431] (1:master@Tremblay) Sent -> [ 1.131431] (1:master@Tremblay) Sending "Task_7" to "Ginette" -> [ 1.131431] (4:worker@Fafard) Received "Task_6" -> [ 1.131431] (4:worker@Fafard) Processing "Task_6" -> [ 1.463809] (5:worker@Ginette) "Task_2" done -> [ 1.582438] (1:master@Tremblay) Sent -> [ 1.582438] (1:master@Tremblay) Sending "Task_8" to "Bourassa" -> [ 1.582438] (5:worker@Ginette) Received "Task_7" -> [ 1.582438] (5:worker@Ginette) Processing "Task_7" -> [ 1.591325] (6:worker@Bourassa) "Task_3" done -> [ 1.634695] (3:worker@Jupiter) "Task_5" done -> [ 1.718840] (1:master@Tremblay) Sent -> [ 1.718840] (1:master@Tremblay) Sending "Task_9" to "Tremblay" -> [ 1.718840] (1:master@Tremblay) Hey ! It's me ! :) -> [ 1.718840] (6:worker@Bourassa) Received "Task_8" -> [ 1.718840] (6:worker@Bourassa) Processing "Task_8" -> [ 1.721105] (1:master@Tremblay) Sent -> [ 1.721105] (1:master@Tremblay) Sending "Task_10" to "Jupiter" -> [ 1.721105] (2:worker@Tremblay) Received "Task_9" -> [ 1.721105] (2:worker@Tremblay) Processing "Task_9" -> [ 1.786773] (4:worker@Fafard) "Task_6" done -> [ 1.883110] (1:master@Tremblay) Sent -> [ 1.883110] (1:master@Tremblay) Sending "Task_11" to "Fafard" -> [ 1.883110] (3:worker@Jupiter) Received "Task_10" -> [ 1.883110] (3:worker@Jupiter) Processing "Task_10" -> [ 2.035188] (1:master@Tremblay) Sent -> [ 2.035188] (1:master@Tremblay) Sending "Task_12" to "Ginette" -> [ 2.035188] (4:worker@Fafard) Received "Task_11" -> [ 2.035188] (4:worker@Fafard) Processing "Task_11" -> [ 2.230815] (2:worker@Tremblay) "Task_9" done -> [ 2.538453] (3:worker@Jupiter) "Task_10" done -> [ 2.613536] (5:worker@Ginette) "Task_7" done -> [ 2.690531] (4:worker@Fafard) "Task_11" done -> [ 2.732164] (1:master@Tremblay) Sent -> [ 2.732164] (1:master@Tremblay) Sending "Task_13" to "Bourassa" -> [ 2.732164] (5:worker@Ginette) Received "Task_12" -> [ 2.732164] (5:worker@Ginette) Processing "Task_12" -> [ 2.749938] (6:worker@Bourassa) "Task_8" done -> [ 2.877453] (1:master@Tremblay) Sent -> [ 2.877453] (1:master@Tremblay) Sending "Task_14" to "Tremblay" -> [ 2.877453] (1:master@Tremblay) Hey ! It's me ! :) -> [ 2.877453] (6:worker@Bourassa) Received "Task_13" -> [ 2.877453] (6:worker@Bourassa) Processing "Task_13" -> [ 2.879718] (1:master@Tremblay) Sent -> [ 2.879718] (1:master@Tremblay) Sending "Task_15" to "Jupiter" -> [ 2.879718] (2:worker@Tremblay) Received "Task_14" -> [ 2.879718] (2:worker@Tremblay) Processing "Task_14" -> [ 3.041723] (1:master@Tremblay) Sent -> [ 3.041723] (1:master@Tremblay) Sending "Task_16" to "Fafard" -> [ 3.041723] (3:worker@Jupiter) Received "Task_15" -> [ 3.041723] (3:worker@Jupiter) Processing "Task_15" -> [ 3.193802] (1:master@Tremblay) Sent -> [ 3.193802] (1:master@Tremblay) Sending "Task_17" to "Ginette" -> [ 3.193802] (4:worker@Fafard) Received "Task_16" -> [ 3.193802] (4:worker@Fafard) Processing "Task_16" -> [ 3.389428] (2:worker@Tremblay) "Task_14" done -> [ 3.697066] (3:worker@Jupiter) "Task_15" done -> [ 3.763262] (5:worker@Ginette) "Task_12" done -> [ 3.849144] (4:worker@Fafard) "Task_16" done -> [ 3.881890] (1:master@Tremblay) Sent -> [ 3.881890] (1:master@Tremblay) Sending "Task_18" to "Bourassa" -> [ 3.881890] (5:worker@Ginette) Received "Task_17" -> [ 3.881890] (5:worker@Ginette) Processing "Task_17" -> [ 3.908551] (6:worker@Bourassa) "Task_13" done -> [ 4.036066] (1:master@Tremblay) Sent -> [ 4.036066] (1:master@Tremblay) Sending "Task_19" to "Tremblay" -> [ 4.036066] (1:master@Tremblay) Hey ! It's me ! :) -> [ 4.036066] (6:worker@Bourassa) Received "Task_18" -> [ 4.036066] (6:worker@Bourassa) Processing "Task_18" -> [ 4.038331] (1:master@Tremblay) Sent -> [ 4.038331] (1:master@Tremblay) All tasks have been dispatched. Let's tell everybody the computation is over. -> [ 4.038331] (2:worker@Tremblay) Received "Task_19" -> [ 4.038331] (2:worker@Tremblay) Processing "Task_19" -> [ 4.057346] (3:worker@Jupiter) Received "finalize" -> [ 4.057346] (3:worker@Jupiter) I'm done. See you! -> [ 4.083054] (4:worker@Fafard) Received "finalize" -> [ 4.083054] (4:worker@Fafard) I'm done. See you! -> [ 4.548041] (2:worker@Tremblay) "Task_19" done -> [ 4.912988] (5:worker@Ginette) "Task_17" done -> [ 4.929540] (5:worker@Ginette) Received "finalize" -> [ 4.929540] (5:worker@Ginette) I'm done. See you! -> [ 5.067164] (6:worker@Bourassa) "Task_18" done -> [ 5.092603] (6:worker@Bourassa) Received "finalize" -> [ 5.092603] (6:worker@Bourassa) I'm done. See you! -> [ 5.092798] (0:maestro@) Simulation time 5.0928 -> [ 5.092798] (1:master@Tremblay) Goodbye now! -> [ 5.092798] (2:worker@Tremblay) Received "finalize" -> [ 5.092798] (2:worker@Tremblay) I'm done. See you! - -p Testing a simple master/worker example application. TCP crosstraffic DISABLED - -$ $SG_TEST_EXENV ${bindir:=.}/masterworker$EXEEXT ${srcdir:=.}/small_platform_with_routers.xml ${srcdir:=.}/../msg/masterworker/masterworker_d.xml --trace "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" -> [ 0.000000] (1:master@Tremblay) Got 5 workers and 20 tasks to process -> [ 0.000000] (1:master@Tremblay) Sending "Task_0" to "Jupiter" -> [ 0.169155] (3:worker@Jupiter) Received "Task_0" -> [ 0.169155] (3:worker@Jupiter) Processing "Task_0" -> [ 0.169155] (1:master@Tremblay) Sent -> [ 0.169155] (1:master@Tremblay) Sending "Task_1" to "Fafard" -> [ 0.327551] (4:worker@Fafard) Received "Task_1" -> [ 0.327551] (4:worker@Fafard) Processing "Task_1" -> [ 0.327551] (1:master@Tremblay) Sent -> [ 0.327551] (1:master@Tremblay) Sending "Task_2" to "Ginette" -> [ 0.451283] (5:worker@Ginette) Received "Task_2" -> [ 0.451283] (5:worker@Ginette) Processing "Task_2" -> [ 0.451283] (1:master@Tremblay) Sent -> [ 0.451283] (1:master@Tremblay) Sending "Task_3" to "Bourassa" -> [ 0.583902] (6:worker@Bourassa) Received "Task_3" -> [ 0.583902] (6:worker@Bourassa) Processing "Task_3" -> [ 0.583902] (1:master@Tremblay) Sent -> [ 0.583902] (1:master@Tremblay) Sending "Task_4" to "Tremblay" -> [ 0.583902] (1:master@Tremblay) Hey ! It's me ! :) -> [ 0.586168] (2:worker@Tremblay) Received "Task_4" -> [ 0.586168] (2:worker@Tremblay) Processing "Task_4" -> [ 0.586168] (1:master@Tremblay) Sent -> [ 0.586168] (1:master@Tremblay) Sending "Task_5" to "Jupiter" -> [ 0.824497] (3:worker@Jupiter) "Task_0" done -> [ 0.982894] (4:worker@Fafard) "Task_1" done -> [ 0.993652] (1:master@Tremblay) Sent -> [ 0.993652] (1:master@Tremblay) Sending "Task_6" to "Fafard" -> [ 0.993652] (3:worker@Jupiter) Received "Task_5" -> [ 0.993652] (3:worker@Jupiter) Processing "Task_5" -> [ 1.095878] (2:worker@Tremblay) "Task_4" done -> [ 1.152048] (4:worker@Fafard) Received "Task_6" -> [ 1.152048] (4:worker@Fafard) Processing "Task_6" -> [ 1.152048] (1:master@Tremblay) Sent -> [ 1.152048] (1:master@Tremblay) Sending "Task_7" to "Ginette" -> [ 1.482381] (5:worker@Ginette) "Task_2" done -> [ 1.606113] (1:master@Tremblay) Sent -> [ 1.606113] (1:master@Tremblay) Sending "Task_8" to "Bourassa" -> [ 1.606113] (5:worker@Ginette) Received "Task_7" -> [ 1.606113] (5:worker@Ginette) Processing "Task_7" -> [ 1.615000] (6:worker@Bourassa) "Task_3" done -> [ 1.648994] (3:worker@Jupiter) "Task_5" done -> [ 1.747619] (1:master@Tremblay) Sent -> [ 1.747619] (1:master@Tremblay) Sending "Task_9" to "Tremblay" -> [ 1.747619] (1:master@Tremblay) Hey ! It's me ! :) -> [ 1.747619] (6:worker@Bourassa) Received "Task_8" -> [ 1.747619] (6:worker@Bourassa) Processing "Task_8" -> [ 1.749885] (2:worker@Tremblay) Received "Task_9" -> [ 1.749885] (2:worker@Tremblay) Processing "Task_9" -> [ 1.749885] (1:master@Tremblay) Sent -> [ 1.749885] (1:master@Tremblay) Sending "Task_10" to "Jupiter" -> [ 1.807391] (4:worker@Fafard) "Task_6" done -> [ 1.919039] (3:worker@Jupiter) Received "Task_10" -> [ 1.919039] (3:worker@Jupiter) Processing "Task_10" -> [ 1.919039] (1:master@Tremblay) Sent -> [ 1.919039] (1:master@Tremblay) Sending "Task_11" to "Fafard" -> [ 2.077436] (4:worker@Fafard) Received "Task_11" -> [ 2.077436] (4:worker@Fafard) Processing "Task_11" -> [ 2.077436] (1:master@Tremblay) Sent -> [ 2.077436] (1:master@Tremblay) Sending "Task_12" to "Ginette" -> [ 2.259594] (2:worker@Tremblay) "Task_9" done -> [ 2.574382] (3:worker@Jupiter) "Task_10" done -> [ 2.637211] (5:worker@Ginette) "Task_7" done -> [ 2.732778] (4:worker@Fafard) "Task_11" done -> [ 2.760943] (1:master@Tremblay) Sent -> [ 2.760943] (1:master@Tremblay) Sending "Task_13" to "Bourassa" -> [ 2.760943] (5:worker@Ginette) Received "Task_12" -> [ 2.760943] (5:worker@Ginette) Processing "Task_12" -> [ 2.778717] (6:worker@Bourassa) "Task_8" done -> [ 2.911336] (1:master@Tremblay) Sent -> [ 2.911336] (1:master@Tremblay) Sending "Task_14" to "Tremblay" -> [ 2.911336] (1:master@Tremblay) Hey ! It's me ! :) -> [ 2.911336] (6:worker@Bourassa) Received "Task_13" -> [ 2.911336] (6:worker@Bourassa) Processing "Task_13" -> [ 2.913601] (2:worker@Tremblay) Received "Task_14" -> [ 2.913601] (2:worker@Tremblay) Processing "Task_14" -> [ 2.913601] (1:master@Tremblay) Sent -> [ 2.913601] (1:master@Tremblay) Sending "Task_15" to "Jupiter" -> [ 3.082756] (3:worker@Jupiter) Received "Task_15" -> [ 3.082756] (3:worker@Jupiter) Processing "Task_15" -> [ 3.082756] (1:master@Tremblay) Sent -> [ 3.082756] (1:master@Tremblay) Sending "Task_16" to "Fafard" -> [ 3.241153] (4:worker@Fafard) Received "Task_16" -> [ 3.241153] (4:worker@Fafard) Processing "Task_16" -> [ 3.241153] (1:master@Tremblay) Sent -> [ 3.241153] (1:master@Tremblay) Sending "Task_17" to "Ginette" -> [ 3.423311] (2:worker@Tremblay) "Task_14" done -> [ 3.738098] (3:worker@Jupiter) "Task_15" done -> [ 3.792041] (5:worker@Ginette) "Task_12" done -> [ 3.896495] (4:worker@Fafard) "Task_16" done -> [ 3.915773] (1:master@Tremblay) Sent -> [ 3.915773] (1:master@Tremblay) Sending "Task_18" to "Bourassa" -> [ 3.915773] (5:worker@Ginette) Received "Task_17" -> [ 3.915773] (5:worker@Ginette) Processing "Task_17" -> [ 3.942434] (6:worker@Bourassa) "Task_13" done -> [ 4.075053] (1:master@Tremblay) Sent -> [ 4.075053] (1:master@Tremblay) Sending "Task_19" to "Tremblay" -> [ 4.075053] (1:master@Tremblay) Hey ! It's me ! :) -> [ 4.075053] (6:worker@Bourassa) Received "Task_18" -> [ 4.075053] (6:worker@Bourassa) Processing "Task_18" -> [ 4.077318] (2:worker@Tremblay) Received "Task_19" -> [ 4.077318] (2:worker@Tremblay) Processing "Task_19" -> [ 4.077318] (1:master@Tremblay) Sent -> [ 4.077318] (1:master@Tremblay) All tasks have been dispatched. Let's tell everybody the computation is over. -> [ 4.096333] (3:worker@Jupiter) Received "finalize" -> [ 4.096333] (3:worker@Jupiter) I'm done. See you! -> [ 4.122041] (4:worker@Fafard) Received "finalize" -> [ 4.122041] (4:worker@Fafard) I'm done. See you! -> [ 4.587028] (2:worker@Tremblay) "Task_19" done -> [ 4.946871] (5:worker@Ginette) "Task_17" done -> [ 4.963423] (5:worker@Ginette) Received "finalize" -> [ 4.963423] (5:worker@Ginette) I'm done. See you! -> [ 5.106151] (6:worker@Bourassa) "Task_18" done -> [ 5.131590] (6:worker@Bourassa) Received "finalize" -> [ 5.131590] (6:worker@Bourassa) I'm done. See you! -> [ 5.131785] (2:worker@Tremblay) Received "finalize" -> [ 5.131785] (2:worker@Tremblay) I'm done. See you! -> [ 5.131785] (1:master@Tremblay) Goodbye now! -> [ 5.131785] (0:maestro@) Simulation time 5.13179 diff --git a/examples/msg/masterworker/masterworker_cpu_ti.tesh b/examples/msg/masterworker/masterworker_cpu_ti.tesh deleted file mode 100644 index ee58a962df..0000000000 --- a/examples/msg/masterworker/masterworker_cpu_ti.tesh +++ /dev/null @@ -1,251 +0,0 @@ -#! ./tesh - -p Testing a simple master/worker example application - -! output sort 19 -$ $SG_TEST_EXENV ${bindir:=.}/masterworker$EXEEXT ${srcdir:=.}/small_platform.xml ${srcdir:=.}/../msg/masterworker/masterworker_d.xml --cfg=cpu/optim:TI "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" -> [ 0.000000] (0:maestro@) Configuration change: Set 'cpu/optim' to 'TI' -> [ 0.000000] (1:master@Tremblay) Got 5 workers and 20 tasks to process -> [ 0.000000] (1:master@Tremblay) Sending "Task_0" to "Jupiter" -> [ 0.169155] (1:master@Tremblay) Sent -> [ 0.169155] (1:master@Tremblay) Sending "Task_1" to "Fafard" -> [ 0.169155] (3:worker@Jupiter) Received "Task_0" -> [ 0.169155] (3:worker@Jupiter) Processing "Task_0" -> [ 0.327551] (1:master@Tremblay) Sent -> [ 0.327551] (1:master@Tremblay) Sending "Task_2" to "Ginette" -> [ 0.327551] (4:worker@Fafard) Received "Task_1" -> [ 0.327551] (4:worker@Fafard) Processing "Task_1" -> [ 0.451283] (1:master@Tremblay) Sent -> [ 0.451283] (1:master@Tremblay) Sending "Task_3" to "Bourassa" -> [ 0.451283] (5:worker@Ginette) Received "Task_2" -> [ 0.451283] (5:worker@Ginette) Processing "Task_2" -> [ 0.583902] (1:master@Tremblay) Sent -> [ 0.583902] (1:master@Tremblay) Sending "Task_4" to "Tremblay" -> [ 0.583902] (1:master@Tremblay) Hey ! It's me ! :) -> [ 0.583902] (6:worker@Bourassa) Received "Task_3" -> [ 0.583902] (6:worker@Bourassa) Processing "Task_3" -> [ 0.586168] (1:master@Tremblay) Sent -> [ 0.586168] (1:master@Tremblay) Sending "Task_5" to "Jupiter" -> [ 0.586168] (2:worker@Tremblay) Received "Task_4" -> [ 0.586168] (2:worker@Tremblay) Processing "Task_4" -> [ 0.824497] (3:worker@Jupiter) "Task_0" done -> [ 0.982894] (4:worker@Fafard) "Task_1" done -> [ 0.993652] (1:master@Tremblay) Sent -> [ 0.993652] (1:master@Tremblay) Sending "Task_6" to "Fafard" -> [ 0.993652] (3:worker@Jupiter) Received "Task_5" -> [ 0.993652] (3:worker@Jupiter) Processing "Task_5" -> [ 1.095878] (2:worker@Tremblay) "Task_4" done -> [ 1.152048] (1:master@Tremblay) Sent -> [ 1.152048] (1:master@Tremblay) Sending "Task_7" to "Ginette" -> [ 1.152048] (4:worker@Fafard) Received "Task_6" -> [ 1.152048] (4:worker@Fafard) Processing "Task_6" -> [ 1.482381] (5:worker@Ginette) "Task_2" done -> [ 1.606113] (1:master@Tremblay) Sent -> [ 1.606113] (1:master@Tremblay) Sending "Task_8" to "Bourassa" -> [ 1.606113] (5:worker@Ginette) Received "Task_7" -> [ 1.606113] (5:worker@Ginette) Processing "Task_7" -> [ 1.615000] (6:worker@Bourassa) "Task_3" done -> [ 1.648994] (3:worker@Jupiter) "Task_5" done -> [ 1.747619] (1:master@Tremblay) Sent -> [ 1.747619] (1:master@Tremblay) Sending "Task_9" to "Tremblay" -> [ 1.747619] (1:master@Tremblay) Hey ! It's me ! :) -> [ 1.747619] (6:worker@Bourassa) Received "Task_8" -> [ 1.747619] (6:worker@Bourassa) Processing "Task_8" -> [ 1.749885] (1:master@Tremblay) Sent -> [ 1.749885] (1:master@Tremblay) Sending "Task_10" to "Jupiter" -> [ 1.749885] (2:worker@Tremblay) Received "Task_9" -> [ 1.749885] (2:worker@Tremblay) Processing "Task_9" -> [ 1.807391] (4:worker@Fafard) "Task_6" done -> [ 1.919039] (1:master@Tremblay) Sent -> [ 1.919039] (1:master@Tremblay) Sending "Task_11" to "Fafard" -> [ 1.919039] (3:worker@Jupiter) Received "Task_10" -> [ 1.919039] (3:worker@Jupiter) Processing "Task_10" -> [ 2.077436] (1:master@Tremblay) Sent -> [ 2.077436] (1:master@Tremblay) Sending "Task_12" to "Ginette" -> [ 2.077436] (4:worker@Fafard) Received "Task_11" -> [ 2.077436] (4:worker@Fafard) Processing "Task_11" -> [ 2.259594] (2:worker@Tremblay) "Task_9" done -> [ 2.574382] (3:worker@Jupiter) "Task_10" done -> [ 2.637211] (5:worker@Ginette) "Task_7" done -> [ 2.732778] (4:worker@Fafard) "Task_11" done -> [ 2.760943] (1:master@Tremblay) Sent -> [ 2.760943] (1:master@Tremblay) Sending "Task_13" to "Bourassa" -> [ 2.760943] (5:worker@Ginette) Received "Task_12" -> [ 2.760943] (5:worker@Ginette) Processing "Task_12" -> [ 2.778717] (6:worker@Bourassa) "Task_8" done -> [ 2.911336] (1:master@Tremblay) Sent -> [ 2.911336] (1:master@Tremblay) Sending "Task_14" to "Tremblay" -> [ 2.911336] (1:master@Tremblay) Hey ! It's me ! :) -> [ 2.911336] (6:worker@Bourassa) Received "Task_13" -> [ 2.911336] (6:worker@Bourassa) Processing "Task_13" -> [ 2.913601] (1:master@Tremblay) Sent -> [ 2.913601] (1:master@Tremblay) Sending "Task_15" to "Jupiter" -> [ 2.913601] (2:worker@Tremblay) Received "Task_14" -> [ 2.913601] (2:worker@Tremblay) Processing "Task_14" -> [ 3.082756] (1:master@Tremblay) Sent -> [ 3.082756] (1:master@Tremblay) Sending "Task_16" to "Fafard" -> [ 3.082756] (3:worker@Jupiter) Received "Task_15" -> [ 3.082756] (3:worker@Jupiter) Processing "Task_15" -> [ 3.241153] (1:master@Tremblay) Sent -> [ 3.241153] (1:master@Tremblay) Sending "Task_17" to "Ginette" -> [ 3.241153] (4:worker@Fafard) Received "Task_16" -> [ 3.241153] (4:worker@Fafard) Processing "Task_16" -> [ 3.423311] (2:worker@Tremblay) "Task_14" done -> [ 3.738098] (3:worker@Jupiter) "Task_15" done -> [ 3.792041] (5:worker@Ginette) "Task_12" done -> [ 3.896495] (4:worker@Fafard) "Task_16" done -> [ 3.915773] (1:master@Tremblay) Sent -> [ 3.915773] (1:master@Tremblay) Sending "Task_18" to "Bourassa" -> [ 3.915773] (5:worker@Ginette) Received "Task_17" -> [ 3.915773] (5:worker@Ginette) Processing "Task_17" -> [ 3.942434] (6:worker@Bourassa) "Task_13" done -> [ 4.075053] (1:master@Tremblay) Sent -> [ 4.075053] (1:master@Tremblay) Sending "Task_19" to "Tremblay" -> [ 4.075053] (1:master@Tremblay) Hey ! It's me ! :) -> [ 4.075053] (6:worker@Bourassa) Received "Task_18" -> [ 4.075053] (6:worker@Bourassa) Processing "Task_18" -> [ 4.077318] (1:master@Tremblay) Sent -> [ 4.077318] (1:master@Tremblay) All tasks have been dispatched. Let's tell everybody the computation is over. -> [ 4.077318] (2:worker@Tremblay) Received "Task_19" -> [ 4.077318] (2:worker@Tremblay) Processing "Task_19" -> [ 4.096333] (3:worker@Jupiter) Received "finalize" -> [ 4.096333] (3:worker@Jupiter) I'm done. See you! -> [ 4.122041] (4:worker@Fafard) Received "finalize" -> [ 4.122041] (4:worker@Fafard) I'm done. See you! -> [ 4.587028] (2:worker@Tremblay) "Task_19" done -> [ 4.946871] (5:worker@Ginette) "Task_17" done -> [ 4.963423] (5:worker@Ginette) Received "finalize" -> [ 4.963423] (5:worker@Ginette) I'm done. See you! -> [ 5.106151] (6:worker@Bourassa) "Task_18" done -> [ 5.131590] (6:worker@Bourassa) Received "finalize" -> [ 5.131590] (6:worker@Bourassa) I'm done. See you! -> [ 5.131785] (0:maestro@) Simulation time 5.13179 -> [ 5.131785] (1:master@Tremblay) Goodbye now! -> [ 5.131785] (2:worker@Tremblay) Received "finalize" -> [ 5.131785] (2:worker@Tremblay) I'm done. See you! - -p Testing a simple master/worker example application - -! output sort 19 -$ $SG_TEST_EXENV ${bindir:=.}/masterworker$EXEEXT ${srcdir:=.}/small_platform.xml ${srcdir:=.}/../msg/masterworker/masterworker_d.xml --cfg=network/crosstraffic:0 --cfg=cpu/optim:TI "--log=root.fmt:[%10.6r]%e(%i:%P@%h)%e%m%n" -> [ 0.000000] (0:maestro@) Configuration change: Set 'network/crosstraffic' to '0' -> [ 0.000000] (0:maestro@) Configuration change: Set 'cpu/optim' to 'TI' -> [ 0.000000] (1:master@Tremblay) Got 5 workers and 20 tasks to process -> [ 0.000000] (1:master@Tremblay) Sending "Task_0" to "Jupiter" -> [ 0.165962] (1:master@Tremblay) Sent -> [ 0.165962] (1:master@Tremblay) Sending "Task_1" to "Fafard" -> [ 0.165962] (3:worker@Jupiter) Received "Task_0" -> [ 0.165962] (3:worker@Jupiter) Processing "Task_0" -> [ 0.384115] (1:master@Tremblay) Sent -> [ 0.384115] (1:master@Tremblay) Sending "Task_2" to "Ginette" -> [ 0.384115] (4:worker@Fafard) Received "Task_1" -> [ 0.384115] (4:worker@Fafard) Processing "Task_1" -> [ 0.524575] (1:master@Tremblay) Sent -> [ 0.524575] (1:master@Tremblay) Sending "Task_3" to "Bourassa" -> [ 0.524575] (5:worker@Ginette) Received "Task_2" -> [ 0.524575] (5:worker@Ginette) Processing "Task_2" -> [ 0.740447] (1:master@Tremblay) Sent -> [ 0.740447] (1:master@Tremblay) Sending "Task_4" to "Tremblay" -> [ 0.740447] (1:master@Tremblay) Hey ! It's me ! :) -> [ 0.740447] (6:worker@Bourassa) Received "Task_3" -> [ 0.740447] (6:worker@Bourassa) Processing "Task_3" -> [ 0.742786] (1:master@Tremblay) Sent -> [ 0.742786] (1:master@Tremblay) Sending "Task_5" to "Jupiter" -> [ 0.742786] (2:worker@Tremblay) Received "Task_4" -> [ 0.742786] (2:worker@Tremblay) Processing "Task_4" -> [ 0.821304] (3:worker@Jupiter) "Task_0" done -> [ 0.987266] (1:master@Tremblay) Sent -> [ 0.987266] (1:master@Tremblay) Sending "Task_6" to "Fafard" -> [ 0.987266] (3:worker@Jupiter) Received "Task_5" -> [ 0.987266] (3:worker@Jupiter) Processing "Task_5" -> [ 1.039457] (4:worker@Fafard) "Task_1" done -> [ 1.252495] (2:worker@Tremblay) "Task_4" done -> [ 1.257610] (1:master@Tremblay) Sent -> [ 1.257610] (1:master@Tremblay) Sending "Task_7" to "Ginette" -> [ 1.257610] (4:worker@Fafard) Received "Task_6" -> [ 1.257610] (4:worker@Fafard) Processing "Task_6" -> [ 1.555672] (5:worker@Ginette) "Task_2" done -> [ 1.642608] (3:worker@Jupiter) "Task_5" done -> [ 1.696132] (1:master@Tremblay) Sent -> [ 1.696132] (1:master@Tremblay) Sending "Task_8" to "Bourassa" -> [ 1.696132] (5:worker@Ginette) Received "Task_7" -> [ 1.696132] (5:worker@Ginette) Processing "Task_7" -> [ 1.771545] (6:worker@Bourassa) "Task_3" done -> [ 1.912953] (4:worker@Fafard) "Task_6" done -> [ 1.987417] (1:master@Tremblay) Sent -> [ 1.987417] (1:master@Tremblay) Sending "Task_9" to "Tremblay" -> [ 1.987417] (1:master@Tremblay) Hey ! It's me ! :) -> [ 1.987417] (6:worker@Bourassa) Received "Task_8" -> [ 1.987417] (6:worker@Bourassa) Processing "Task_8" -> [ 1.989756] (1:master@Tremblay) Sent -> [ 1.989756] (1:master@Tremblay) Sending "Task_10" to "Jupiter" -> [ 1.989756] (2:worker@Tremblay) Received "Task_9" -> [ 1.989756] (2:worker@Tremblay) Processing "Task_9" -> [ 2.155718] (1:master@Tremblay) Sent -> [ 2.155718] (1:master@Tremblay) Sending "Task_11" to "Fafard" -> [ 2.155718] (3:worker@Jupiter) Received "Task_10" -> [ 2.155718] (3:worker@Jupiter) Processing "Task_10" -> [ 2.373871] (1:master@Tremblay) Sent -> [ 2.373871] (1:master@Tremblay) Sending "Task_12" to "Ginette" -> [ 2.373871] (4:worker@Fafard) Received "Task_11" -> [ 2.373871] (4:worker@Fafard) Processing "Task_11" -> [ 2.499466] (2:worker@Tremblay) "Task_9" done -> [ 2.727230] (5:worker@Ginette) "Task_7" done -> [ 2.811060] (3:worker@Jupiter) "Task_10" done -> [ 2.867690] (1:master@Tremblay) Sent -> [ 2.867690] (1:master@Tremblay) Sending "Task_13" to "Bourassa" -> [ 2.867690] (5:worker@Ginette) Received "Task_12" -> [ 2.867690] (5:worker@Ginette) Processing "Task_12" -> [ 3.018515] (6:worker@Bourassa) "Task_8" done -> [ 3.029213] (4:worker@Fafard) "Task_11" done -> [ 3.234387] (1:master@Tremblay) Sent -> [ 3.234387] (1:master@Tremblay) Sending "Task_14" to "Tremblay" -> [ 3.234387] (1:master@Tremblay) Hey ! It's me ! :) -> [ 3.234387] (6:worker@Bourassa) Received "Task_13" -> [ 3.234387] (6:worker@Bourassa) Processing "Task_13" -> [ 3.236726] (1:master@Tremblay) Sent -> [ 3.236726] (1:master@Tremblay) Sending "Task_15" to "Jupiter" -> [ 3.236726] (2:worker@Tremblay) Received "Task_14" -> [ 3.236726] (2:worker@Tremblay) Processing "Task_14" -> [ 3.402688] (1:master@Tremblay) Sent -> [ 3.402688] (1:master@Tremblay) Sending "Task_16" to "Fafard" -> [ 3.402688] (3:worker@Jupiter) Received "Task_15" -> [ 3.402688] (3:worker@Jupiter) Processing "Task_15" -> [ 3.620841] (1:master@Tremblay) Sent -> [ 3.620841] (1:master@Tremblay) Sending "Task_17" to "Ginette" -> [ 3.620841] (4:worker@Fafard) Received "Task_16" -> [ 3.620841] (4:worker@Fafard) Processing "Task_16" -> [ 3.746436] (2:worker@Tremblay) "Task_14" done -> [ 3.898788] (5:worker@Ginette) "Task_12" done -> [ 4.039247] (1:master@Tremblay) Sent -> [ 4.039247] (1:master@Tremblay) Sending "Task_18" to "Bourassa" -> [ 4.039247] (5:worker@Ginette) Received "Task_17" -> [ 4.039247] (5:worker@Ginette) Processing "Task_17" -> [ 4.058030] (3:worker@Jupiter) "Task_15" done -> [ 4.265485] (6:worker@Bourassa) "Task_13" done -> [ 4.276183] (4:worker@Fafard) "Task_16" done -> [ 4.481357] (1:master@Tremblay) Sent -> [ 4.481357] (1:master@Tremblay) Sending "Task_19" to "Tremblay" -> [ 4.481357] (1:master@Tremblay) Hey ! It's me ! :) -> [ 4.481357] (6:worker@Bourassa) Received "Task_18" -> [ 4.481357] (6:worker@Bourassa) Processing "Task_18" -> [ 4.483696] (1:master@Tremblay) Sent -> [ 4.483696] (1:master@Tremblay) All tasks have been dispatched. Let's tell everybody the computation is over. -> [ 4.483696] (2:worker@Tremblay) Received "Task_19" -> [ 4.483696] (2:worker@Tremblay) Processing "Task_19" -> [ 4.498896] (3:worker@Jupiter) Received "finalize" -> [ 4.498896] (3:worker@Jupiter) I'm done. See you! -> [ 4.519447] (4:worker@Fafard) Received "finalize" -> [ 4.519447] (4:worker@Fafard) I'm done. See you! -> [ 4.993406] (2:worker@Tremblay) "Task_19" done -> [ 5.070345] (5:worker@Ginette) "Task_17" done -> [ 5.083577] (5:worker@Ginette) Received "finalize" -> [ 5.083577] (5:worker@Ginette) I'm done. See you! -> [ 5.512455] (6:worker@Bourassa) "Task_18" done -> [ 5.532791] (6:worker@Bourassa) Received "finalize" -> [ 5.532791] (6:worker@Bourassa) I'm done. See you! -> [ 5.532947] (0:maestro@) Simulation time 5.53295 -> [ 5.532947] (1:master@Tremblay) Goodbye now! -> [ 5.532947] (2:worker@Tremblay) Received "finalize" -> [ 5.532947] (2:worker@Tremblay) I'm done. See you! - diff --git a/examples/msg/trace-categories/trace-categories.tesh b/examples/msg/trace-categories/trace-categories.tesh index 12486a1505..b58419e376 100644 --- a/examples/msg/trace-categories/trace-categories.tesh +++ b/examples/msg/trace-categories/trace-categories.tesh @@ -2,7 +2,7 @@ p Tracing multiple categories master/worker application -$ $SG_TEST_EXENV ${bindir:=.}/trace-categories$EXEEXT --cfg=tracing:yes --cfg=tracing/buffer:yes --cfg=tracing/filename:categories.trace --cfg=tracing/categorized:yes --cfg=tracing/uncategorized:yes --cfg=viva/categorized:categories.cat.plist --cfg=viva/uncategorized:categories.uncat.plist ${srcdir:=.}/small_platform.xml ${srcdir:=.}/../msg/masterworker-mailbox/masterworker-mailbox_d.xml +$ $SG_TEST_EXENV ${bindir:=.}/trace-categories$EXEEXT --cfg=tracing:yes --cfg=tracing/buffer:yes --cfg=tracing/filename:categories.trace --cfg=tracing/categorized:yes --cfg=tracing/uncategorized:yes --cfg=viva/categorized:categories.cat.plist --cfg=viva/uncategorized:categories.uncat.plist ${srcdir:=.}/small_platform.xml ${srcdir:=.}/../msg/app-masterworker/app-masterworker_d.xml > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'tracing' to 'yes' > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'tracing/buffer' to 'yes' > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'tracing/filename' to 'categories.trace' diff --git a/examples/msg/trace-link-srcdst-user-variables/trace-link-srcdst-user-variables.tesh b/examples/msg/trace-link-srcdst-user-variables/trace-link-srcdst-user-variables.tesh index 44bc0977a9..3a7a93fc69 100644 --- a/examples/msg/trace-link-srcdst-user-variables/trace-link-srcdst-user-variables.tesh +++ b/examples/msg/trace-link-srcdst-user-variables/trace-link-srcdst-user-variables.tesh @@ -1,7 +1,7 @@ #! ./tesh p Trace user variables associated to links of the platform file -$ $SG_TEST_EXENV ${bindir:=.}/trace-link-srcdst-user-variables$EXEEXT --cfg=tracing:yes --cfg=tracing/platform:yes ${srcdir:=.}/small_platform.xml ${srcdir:=.}/../msg/masterworker-mailbox/masterworker-mailbox_d.xml +$ $SG_TEST_EXENV ${bindir:=.}/trace-link-srcdst-user-variables$EXEEXT --cfg=tracing:yes --cfg=tracing/platform:yes ${srcdir:=.}/small_platform.xml ${srcdir:=.}/../msg/app-masterworker/app-masterworker_d.xml > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'tracing' to 'yes' > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'tracing/platform' to 'yes' diff --git a/examples/msg/trace-link-user-variables/trace-link-user-variables.tesh b/examples/msg/trace-link-user-variables/trace-link-user-variables.tesh index 75ef0a1683..d9d0f5550c 100644 --- a/examples/msg/trace-link-user-variables/trace-link-user-variables.tesh +++ b/examples/msg/trace-link-user-variables/trace-link-user-variables.tesh @@ -1,7 +1,7 @@ #! ./tesh p Trace user variables associated to links of the platform file -$ $SG_TEST_EXENV ${bindir:=.}/trace-link-user-variables$EXEEXT --cfg=tracing:yes --cfg=tracing/platform:yes ${srcdir:=.}/small_platform.xml ${srcdir:=.}/../msg/masterworker-mailbox/masterworker-mailbox_d.xml +$ $SG_TEST_EXENV ${bindir:=.}/trace-link-user-variables$EXEEXT --cfg=tracing:yes --cfg=tracing/platform:yes ${srcdir:=.}/small_platform.xml ${srcdir:=.}/../msg/app-masterworker/app-masterworker_d.xml > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'tracing' to 'yes' > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'tracing/platform' to 'yes' diff --git a/examples/msg/trace-masterworker/trace-masterworker.tesh b/examples/msg/trace-masterworker/trace-masterworker.tesh index 2e6686c029..f5cc1673e0 100644 --- a/examples/msg/trace-masterworker/trace-masterworker.tesh +++ b/examples/msg/trace-masterworker/trace-masterworker.tesh @@ -1,7 +1,7 @@ #! ./tesh p Tracing master/worker application -$ $SG_TEST_EXENV ${bindir:=.}/trace-masterworker$EXEEXT --cfg=tracing:yes --cfg=tracing/buffer:yes --cfg=tracing/filename:trace-masterworker.trace --cfg=tracing/categorized:yes --cfg=tracing/uncategorized:yes --cfg=viva/categorized:trace-masterworker.cat.plist --cfg=viva/uncategorized:trace-masterworker.uncat.plist ${srcdir:=.}/small_platform.xml ${srcdir:=.}/../msg/masterworker-mailbox/masterworker-mailbox_d.xml +$ $SG_TEST_EXENV ${bindir:=.}/trace-masterworker$EXEEXT --cfg=tracing:yes --cfg=tracing/buffer:yes --cfg=tracing/filename:trace-masterworker.trace --cfg=tracing/categorized:yes --cfg=tracing/uncategorized:yes --cfg=viva/categorized:trace-masterworker.cat.plist --cfg=viva/uncategorized:trace-masterworker.uncat.plist ${srcdir:=.}/small_platform.xml ${srcdir:=.}/../msg/app-masterworker/app-masterworker_d.xml > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'tracing' to 'yes' > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'tracing/buffer' to 'yes' > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'tracing/filename' to 'trace-masterworker.trace' @@ -18,7 +18,7 @@ $ $SG_TEST_EXENV ${bindir:=.}/trace-masterworker$EXEEXT --cfg=tracing:yes --cfg= > [4.214821] [msg_test/INFO] msmark p Tracing master/worker application with xml config -$ $SG_TEST_EXENV ${bindir:=.}/trace-masterworker$EXEEXT ${srcdir:=.}/config_tracing.xml ${srcdir:=.}/../msg/masterworker-mailbox/masterworker-mailbox_d.xml +$ $SG_TEST_EXENV ${bindir:=.}/trace-masterworker$EXEEXT ${srcdir:=.}/config_tracing.xml ${srcdir:=.}/../msg/app-masterworker/app-masterworker_d.xml > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'tracing/uncategorized' to 'yes' > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'tracing/buffer' to 'yes' > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'tracing' to 'yes' @@ -35,10 +35,10 @@ $ $SG_TEST_EXENV ${bindir:=.}/trace-masterworker$EXEEXT ${srcdir:=.}/config_trac > [4.214821] [msg_test/INFO] msmark p Not tracing master/worker application -$ $SG_TEST_EXENV ${bindir:=.}/trace-masterworker$EXEEXT ${srcdir:=.}/small_platform.xml ${srcdir:=.}/../msg/masterworker-mailbox/masterworker-mailbox_d.xml +$ $SG_TEST_EXENV ${bindir:=.}/trace-masterworker$EXEEXT ${srcdir:=.}/small_platform.xml ${srcdir:=.}/../msg/app-masterworker/app-masterworker_d.xml p Testing tracing by process -$ $SG_TEST_EXENV ${bindir:=.}/trace-masterworker$EXEEXT --cfg=tracing:yes --cfg=tracing/msg/process:yes --cfg=tracing/buffer:yes --cfg=tracing/filename:trace-masterworker.trace --cfg=tracing/categorized:yes --cfg=tracing/uncategorized:yes --cfg=viva/categorized:trace-masterworker.cat.plist --cfg=viva/uncategorized:trace-masterworker.uncat.plist ${srcdir:=.}/small_platform.xml ${srcdir:=.}/../msg/masterworker-mailbox/masterworker-mailbox_d.xml +$ $SG_TEST_EXENV ${bindir:=.}/trace-masterworker$EXEEXT --cfg=tracing:yes --cfg=tracing/msg/process:yes --cfg=tracing/buffer:yes --cfg=tracing/filename:trace-masterworker.trace --cfg=tracing/categorized:yes --cfg=tracing/uncategorized:yes --cfg=viva/categorized:trace-masterworker.cat.plist --cfg=viva/uncategorized:trace-masterworker.uncat.plist ${srcdir:=.}/small_platform.xml ${srcdir:=.}/../msg/app-masterworker/app-masterworker_d.xml > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'tracing' to 'yes' > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'tracing/msg/process' to 'yes' > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'tracing/buffer' to 'yes' diff --git a/examples/msg/trace-user-variables/trace-user-variables.tesh b/examples/msg/trace-user-variables/trace-user-variables.tesh index 42d3e50c43..d0d291aa95 100644 --- a/examples/msg/trace-user-variables/trace-user-variables.tesh +++ b/examples/msg/trace-user-variables/trace-user-variables.tesh @@ -1,7 +1,7 @@ #! ./tesh p Tracing user variables -$ $SG_TEST_EXENV ${bindir:=.}/trace-user-variables$EXEEXT --cfg=tracing:yes --cfg=tracing/platform:yes ${srcdir:=.}/small_platform.xml ${srcdir:=.}/../msg/masterworker-mailbox/masterworker-mailbox_d.xml +$ $SG_TEST_EXENV ${bindir:=.}/trace-user-variables$EXEEXT --cfg=tracing:yes --cfg=tracing/platform:yes ${srcdir:=.}/small_platform.xml ${srcdir:=.}/../msg/app-masterworker/app-masterworker_d.xml > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'tracing' to 'yes' > [0.000000] [xbt_cfg/INFO] Configuration change: Set 'tracing/platform' to 'yes' > [0.004078] [msg_test/INFO] Declared host variables: @@ -19,4 +19,4 @@ $ $SG_TEST_EXENV ${bindir:=.}/trace-user-variables$EXEEXT --cfg=tracing:yes --c $ rm -f viva_graph.plist p Not tracing user variables -$ $SG_TEST_EXENV ${bindir:=.}/trace-user-variables$EXEEXT ${srcdir:=.}/small_platform.xml ${srcdir:=.}/../msg/masterworker-mailbox/masterworker-mailbox_d.xml +$ $SG_TEST_EXENV ${bindir:=.}/trace-user-variables$EXEEXT ${srcdir:=.}/small_platform.xml ${srcdir:=.}/../msg/app-masterworker/app-masterworker_d.xml diff --git a/examples/simdag/dag-dotload/sd_dag-dotload.tesh b/examples/simdag/dag-dotload/sd_dag-dotload.tesh index ebcfcd5a27..2af6b29032 100644 --- a/examples/simdag/dag-dotload/sd_dag-dotload.tesh +++ b/examples/simdag/dag-dotload/sd_dag-dotload.tesh @@ -211,7 +211,7 @@ $ cat ${srcdir:=.}/dag-dotload/dag.trace > [0.000000 -> 0.292217] C2-05 -> C1-01 transfer of 10014000 bytes # root->5 > [60.002281->62.002281] C2-05 compute 10000000129.452715 flops # end -$ rm -f ${srcdir:=.}/dag-dotload/dag.trace ${srcdir:=.}/dag-dotload/dot.dot +$ rm -f ${srcdir:=.}/dag-dotload/dag.trace ${srcdir:=.}/dot.dot ! expect return 2 $ $SG_TEST_EXENV ${bindir:=.}/dag-dotload/sd_dag-dotload --log=no_loc ${srcdir:=.}/../platforms/2clusters.xml ${srcdir:=.}/dag-dotload/dag_with_cycle.dot