From aa909d1667ec6ea5abb2278f85965f2d746634d5 Mon Sep 17 00:00:00 2001 From: velho Date: Mon, 16 Jul 2007 14:46:08 +0000 Subject: [PATCH] Added files to the simple MASTER/SLAVE example. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@3807 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- .../deployment_masterslave.xml} | 0 .../masterslave.c} | 12 +- examples/msg/masterslave/masterslave.tesh.in | 125 ++++++++++++++++++ 3 files changed, 131 insertions(+), 6 deletions(-) rename examples/msg/{small_deployment.xml => masterslave/deployment_masterslave.xml} (100%) rename examples/msg/{msg_test_communication_time.c => masterslave/masterslave.c} (93%) create mode 100644 examples/msg/masterslave/masterslave.tesh.in diff --git a/examples/msg/small_deployment.xml b/examples/msg/masterslave/deployment_masterslave.xml similarity index 100% rename from examples/msg/small_deployment.xml rename to examples/msg/masterslave/deployment_masterslave.xml diff --git a/examples/msg/msg_test_communication_time.c b/examples/msg/masterslave/masterslave.c similarity index 93% rename from examples/msg/msg_test_communication_time.c rename to examples/msg/masterslave/masterslave.c index 30cf01e772..1cbff74c44 100644 --- a/examples/msg/msg_test_communication_time.c +++ b/examples/msg/masterslave/masterslave.c @@ -5,6 +5,7 @@ /* 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 #include "msg/msg.h" /* Yeah! If you want to use msg, you need to include msg/msg.h */ #include "xbt/sysdep.h" /* calloc, printf */ @@ -30,7 +31,6 @@ int master(int argc, char *argv[]) { int slaves_count = 0; m_host_t *slaves = NULL; - m_task_t *todo = NULL; int number_of_tasks = 0; double task_comp_size = 0; double task_comm_size = 0; @@ -60,7 +60,7 @@ int master(int argc, char *argv[]) INFO1("Got %d slave(s) :", slaves_count); for (i = 0; i < slaves_count; i++) - INFO1("\t %s", slaves[i]->name); + INFO1("%s", slaves[i]->name); INFO1("Got %d task to process :", number_of_tasks); @@ -94,17 +94,17 @@ int slave(int argc, char *argv[]) a = MSG_task_get(&(task), PORT_22); time2 = MSG_get_clock(); if (a == MSG_OK) { - INFO1("Received \"%s\" ", MSG_task_get_name(task)); + INFO1("Received \"%s\"", MSG_task_get_name(task)); if(MSG_task_get_data(task)==FINALIZE) { MSG_task_destroy(task); break; } if(time1<*((double *)task->data)) time1 = *((double *) task->data); - INFO1("Communication time : \"%f\" ", time2-time1); - INFO1("Processing \"%s\" ", MSG_task_get_name(task)); + INFO1("Communication time : \"%f\"", time2-time1); + INFO1("Processing \"%s\"", MSG_task_get_name(task)); MSG_task_execute(task); - INFO1("\"%s\" done ", MSG_task_get_name(task)); + INFO1("\"%s\" done", MSG_task_get_name(task)); MSG_task_destroy(task); } else { INFO0("Hey ?! What's up ? "); diff --git a/examples/msg/masterslave/masterslave.tesh.in b/examples/msg/masterslave/masterslave.tesh.in new file mode 100644 index 0000000000..52172c0d35 --- /dev/null +++ b/examples/msg/masterslave/masterslave.tesh.in @@ -0,0 +1,125 @@ +#! ./tesh + +p Testing a simple master/slave example application + +$ ./masterslave/masterslave @srcdir@/small_platform.xml @srcdir@/masterslave/deployment_masterslave.xml +> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Got 5 slave(s) : +> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Jupiter +> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Fafard +> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Ginette +> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Bourassa +> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Tremblay +> [Tremblay:master:(1) 0.000000] [msg_test/INFO] Got 20 task to process : +> [Tremblay:master:(1) 0.016077] [msg_test/INFO] Send completed +> [Jupiter:slave:(3) 0.016077] [msg_test/INFO] Received "Task" +> [Jupiter:slave:(3) 0.016077] [msg_test/INFO] Communication time : "0.016077" +> [Jupiter:slave:(3) 0.016077] [msg_test/INFO] Processing "Task" +> [Tremblay:master:(1) 0.037813] [msg_test/INFO] Send completed +> [Fafard:slave:(4) 0.037813] [msg_test/INFO] Received "Task" +> [Fafard:slave:(4) 0.037813] [msg_test/INFO] Communication time : "0.021736" +> [Fafard:slave:(4) 0.037813] [msg_test/INFO] Processing "Task" +> [Tremblay:master:(1) 0.051808] [msg_test/INFO] Send completed +> [Ginette:slave:(5) 0.051808] [msg_test/INFO] Received "Task" +> [Ginette:slave:(5) 0.051808] [msg_test/INFO] Communication time : "0.013995" +> [Ginette:slave:(5) 0.051808] [msg_test/INFO] Processing "Task" +> [Tremblay:master:(1) 0.073317] [msg_test/INFO] Send completed +> [Bourassa:slave:(6) 0.073317] [msg_test/INFO] Received "Task" +> [Bourassa:slave:(6) 0.073317] [msg_test/INFO] Communication time : "0.021509" +> [Bourassa:slave:(6) 0.073317] [msg_test/INFO] Processing "Task" +> [Tremblay:master:(1) 0.073533] [msg_test/INFO] Send completed +> [Tremblay:slave:(2) 0.073533] [msg_test/INFO] Received "Task" +> [Tremblay:slave:(2) 0.073533] [msg_test/INFO] Communication time : "0.000216" +> [Tremblay:slave:(2) 0.073533] [msg_test/INFO] Processing "Task" +> [Jupiter:slave:(3) 0.081611] [msg_test/INFO] "Task" done +> [Tremblay:master:(1) 0.097688] [msg_test/INFO] Send completed +> [Jupiter:slave:(3) 0.097688] [msg_test/INFO] Received "Task" +> [Jupiter:slave:(3) 0.097688] [msg_test/INFO] Communication time : "0.016077" +> [Jupiter:slave:(3) 0.097688] [msg_test/INFO] Processing "Task" +> [Fafard:slave:(4) 0.103347] [msg_test/INFO] "Task" done +> [Tremblay:slave:(2) 0.124504] [msg_test/INFO] "Task" done +> [Tremblay:master:(1) 0.125083] [msg_test/INFO] Send completed +> [Fafard:slave:(4) 0.125083] [msg_test/INFO] Received "Task" +> [Fafard:slave:(4) 0.125083] [msg_test/INFO] Communication time : "0.021736" +> [Fafard:slave:(4) 0.125083] [msg_test/INFO] Processing "Task" +> [Ginette:slave:(5) 0.154918] [msg_test/INFO] "Task" done +> [Jupiter:slave:(3) 0.163222] [msg_test/INFO] "Task" done +> [Tremblay:master:(1) 0.168913] [msg_test/INFO] Send completed +> [Ginette:slave:(5) 0.168913] [msg_test/INFO] Received "Task" +> [Ginette:slave:(5) 0.168913] [msg_test/INFO] Communication time : "0.013995" +> [Ginette:slave:(5) 0.168913] [msg_test/INFO] Processing "Task" +> [Bourassa:slave:(6) 0.176427] [msg_test/INFO] "Task" done +> [Fafard:slave:(4) 0.190618] [msg_test/INFO] "Task" done +> [Tremblay:master:(1) 0.197936] [msg_test/INFO] Send completed +> [Bourassa:slave:(6) 0.197936] [msg_test/INFO] Received "Task" +> [Bourassa:slave:(6) 0.197936] [msg_test/INFO] Communication time : "0.021509" +> [Bourassa:slave:(6) 0.197936] [msg_test/INFO] Processing "Task" +> [Tremblay:master:(1) 0.198152] [msg_test/INFO] Send completed +> [Tremblay:slave:(2) 0.198152] [msg_test/INFO] Received "Task" +> [Tremblay:slave:(2) 0.198152] [msg_test/INFO] Communication time : "0.000216" +> [Tremblay:slave:(2) 0.198152] [msg_test/INFO] Processing "Task" +> [Tremblay:master:(1) 0.214228] [msg_test/INFO] Send completed +> [Jupiter:slave:(3) 0.214228] [msg_test/INFO] Received "Task" +> [Jupiter:slave:(3) 0.214228] [msg_test/INFO] Communication time : "0.016077" +> [Jupiter:slave:(3) 0.214228] [msg_test/INFO] Processing "Task" +> [Tremblay:master:(1) 0.235965] [msg_test/INFO] Send completed +> [Fafard:slave:(4) 0.235965] [msg_test/INFO] Received "Task" +> [Fafard:slave:(4) 0.235965] [msg_test/INFO] Communication time : "0.021736" +> [Fafard:slave:(4) 0.235965] [msg_test/INFO] Processing "Task" +> [Tremblay:slave:(2) 0.249123] [msg_test/INFO] "Task" done +> [Ginette:slave:(5) 0.272023] [msg_test/INFO] "Task" done +> [Jupiter:slave:(3) 0.279763] [msg_test/INFO] "Task" done +> [Tremblay:master:(1) 0.286018] [msg_test/INFO] Send completed +> [Ginette:slave:(5) 0.286018] [msg_test/INFO] Received "Task" +> [Ginette:slave:(5) 0.286018] [msg_test/INFO] Communication time : "0.013995" +> [Ginette:slave:(5) 0.286018] [msg_test/INFO] Processing "Task" +> [Bourassa:slave:(6) 0.301046] [msg_test/INFO] "Task" done +> [Fafard:slave:(4) 0.301499] [msg_test/INFO] "Task" done +> [Tremblay:master:(1) 0.322555] [msg_test/INFO] Send completed +> [Bourassa:slave:(6) 0.322555] [msg_test/INFO] Received "Task" +> [Bourassa:slave:(6) 0.322555] [msg_test/INFO] Communication time : "0.021509" +> [Bourassa:slave:(6) 0.322555] [msg_test/INFO] Processing "Task" +> [Tremblay:master:(1) 0.322770] [msg_test/INFO] Send completed +> [Tremblay:slave:(2) 0.322770] [msg_test/INFO] Received "Task" +> [Tremblay:slave:(2) 0.322770] [msg_test/INFO] Communication time : "0.000216" +> [Tremblay:slave:(2) 0.322770] [msg_test/INFO] Processing "Task" +> [Tremblay:master:(1) 0.338847] [msg_test/INFO] Send completed +> [Jupiter:slave:(3) 0.338847] [msg_test/INFO] Received "Task" +> [Jupiter:slave:(3) 0.338847] [msg_test/INFO] Communication time : "0.016077" +> [Jupiter:slave:(3) 0.338847] [msg_test/INFO] Processing "Task" +> [Tremblay:master:(1) 0.360583] [msg_test/INFO] Send completed +> [Fafard:slave:(4) 0.360583] [msg_test/INFO] Received "Task" +> [Fafard:slave:(4) 0.360583] [msg_test/INFO] Communication time : "0.021736" +> [Fafard:slave:(4) 0.360583] [msg_test/INFO] Processing "Task" +> [Tremblay:slave:(2) 0.373741] [msg_test/INFO] "Task" done +> [Ginette:slave:(5) 0.389128] [msg_test/INFO] "Task" done +> [Tremblay:master:(1) 0.403123] [msg_test/INFO] Send completed +> [Ginette:slave:(5) 0.403123] [msg_test/INFO] Received "Task" +> [Ginette:slave:(5) 0.403123] [msg_test/INFO] Communication time : "0.013995" +> [Ginette:slave:(5) 0.403123] [msg_test/INFO] Processing "Task" +> [Jupiter:slave:(3) 0.404381] [msg_test/INFO] "Task" done +> [Bourassa:slave:(6) 0.425664] [msg_test/INFO] "Task" done +> [Fafard:slave:(4) 0.426118] [msg_test/INFO] "Task" done +> [Tremblay:master:(1) 0.447173] [msg_test/INFO] Send completed +> [Bourassa:slave:(6) 0.447173] [msg_test/INFO] Received "Task" +> [Bourassa:slave:(6) 0.447173] [msg_test/INFO] Communication time : "0.021509" +> [Bourassa:slave:(6) 0.447173] [msg_test/INFO] Processing "Task" +> [Tremblay:master:(1) 0.447389] [msg_test/INFO] Send completed +> [Tremblay:master:(1) 0.447389] [msg_test/INFO] All tasks have been dispatched. Let's tell everybody the computation is over. +> [Tremblay:slave:(2) 0.447389] [msg_test/INFO] Received "Task" +> [Tremblay:slave:(2) 0.447389] [msg_test/INFO] Communication time : "0.000216" +> [Tremblay:slave:(2) 0.447389] [msg_test/INFO] Processing "Task" +> [Jupiter:slave:(3) 0.448851] [msg_test/INFO] Received "finalize" +> [Jupiter:slave:(3) 0.448851] [msg_test/INFO] I'm done. See you! +> [Fafard:slave:(4) 0.450827] [msg_test/INFO] Received "finalize" +> [Fafard:slave:(4) 0.450827] [msg_test/INFO] I'm done. See you! +> [Tremblay:slave:(2) 0.498360] [msg_test/INFO] "Task" done +> [Ginette:slave:(5) 0.506232] [msg_test/INFO] "Task" done +> [Ginette:slave:(5) 0.507505] [msg_test/INFO] Received "finalize" +> [Ginette:slave:(5) 0.507505] [msg_test/INFO] I'm done. See you! +> [Bourassa:slave:(6) 0.550283] [msg_test/INFO] "Task" done +> [Bourassa:slave:(6) 0.552239] [msg_test/INFO] Received "finalize" +> [Bourassa:slave:(6) 0.552239] [msg_test/INFO] I'm done. See you! +> [Tremblay:master:(1) 0.552254] [msg_test/INFO] Goodbye now! +> [Tremblay:slave:(2) 0.552254] [msg_test/INFO] Received "finalize" +> [Tremblay:slave:(2) 0.552254] [msg_test/INFO] I'm done. See you! +> [0.552254] [msg_test/INFO] Simulation time 0.552254 -- 2.20.1