Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
creating specific tests to verify the simulation trace integrity
authorschnorr <schnorr@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Wed, 14 Apr 2010 16:51:35 +0000 (16:51 +0000)
committerschnorr <schnorr@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Wed, 14 Apr 2010 16:51:35 +0000 (16:51 +0000)
details:
- hope to add more tests in the msg/tracing in the future

git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@7571 48e7efb5-ca39-0410-a469-dd3cf9ba447f

buildtools/Cmake/src/CMakeMakeExeLib.txt
buildtools/Cmake/src/CMakeTest.txt
examples/msg/tracing/CMakeLists.txt [new file with mode: 0644]
examples/msg/tracing/deployment.xml [new file with mode: 0644]
examples/msg/tracing/ms.c [new file with mode: 0644]
examples/msg/tracing/ms.tesh [new file with mode: 0644]
examples/msg/tracing/platform.xml [new file with mode: 0755]

index 2f076e4..4eb4c12 100644 (file)
@@ -112,6 +112,7 @@ add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/parallel_task)
 add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/priority)
 add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/masterslave)
 add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/trace)
 add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/priority)
 add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/masterslave)
 add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/trace)
+add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/tracing)
 if(HAVE_GTNETS)
        add_definitions("-lgtnets -L${gtnets_path}/lib -I${gtnets_path}/include/gtnets")
        add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/gtnets)
 if(HAVE_GTNETS)
        add_definitions("-lgtnets -L${gtnets_path}/lib -I${gtnets_path}/include/gtnets")
        add_subdirectory(${PROJECT_DIRECTORY}/examples/msg/gtnets)
index ccad90d..3040074 100644 (file)
@@ -131,6 +131,11 @@ ADD_TEST(msg-properties            ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIR
 ADD_TEST(msg-trace             ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/msg trace/trace.tesh)
 ADD_TEST(msg-masterslave_cpu_ti        ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/msg masterslave/masterslave_cpu_ti.tesh)
 
 ADD_TEST(msg-trace             ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/msg trace/trace.tesh)
 ADD_TEST(msg-masterslave_cpu_ti        ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/msg masterslave/masterslave_cpu_ti.tesh)
 
+IF(HAVE_TRACING)
+  ADD_TEST(tracing-ms ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/msg tracing/ms.tesh)
+ENDIF(HAVE_TRACING)
+
+
 IF(${ARCH_32_BITS})
   ADD_TEST(gras-ping-sg-32     ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/gras/ping test_sg_32)
   ADD_TEST(gras-rpc-sg-32      ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/gras/rpc test_sg_32)
 IF(${ARCH_32_BITS})
   ADD_TEST(gras-ping-sg-32     ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/gras/ping test_sg_32)
   ADD_TEST(gras-rpc-sg-32      ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/gras/rpc test_sg_32)
diff --git a/examples/msg/tracing/CMakeLists.txt b/examples/msg/tracing/CMakeLists.txt
new file mode 100644 (file)
index 0000000..eadfb61
--- /dev/null
@@ -0,0 +1,9 @@
+cmake_minimum_required(VERSION 2.6)
+
+set(EXECUTABLE_OUTPUT_PATH "./")
+set(LIBRARY_OUTPUT_PATH "${PROJECT_DIRECTORY}/lib")
+
+add_executable(ms "ms.c")
+
+### Add definitions for compile
+target_link_libraries(ms simgrid m -fprofile-arcs)
diff --git a/examples/msg/tracing/deployment.xml b/examples/msg/tracing/deployment.xml
new file mode 100644 (file)
index 0000000..f3c6be8
--- /dev/null
@@ -0,0 +1,18 @@
+<?xml version='1.0'?>
+<!DOCTYPE platform SYSTEM "simgrid.dtd">
+<platform version="2">
+  <!-- The master process (with some arguments) -->
+  <process host="Tremblay" function="master">
+     <argument value="20"/>       <!-- Number of tasks -->
+     <argument value="50000000"/>  <!-- Computation size of tasks -->
+     <argument value="1000000"/>   <!-- Communication size of tasks -->
+     <argument value="5"/>         <!-- Number of slaves -->
+  </process>
+  <!-- The slave processes (with mailbox to listen on as argument) -->
+  <process host="Tremblay" function="slave"/>
+  <process host="Jupiter" function="slave"/>
+  <process host="Fafard" function="slave"/>
+  <process host="Ginette" function="slave"/>
+  <process host="Bourassa" function="slave"/>
+
+</platform>
diff --git a/examples/msg/tracing/ms.c b/examples/msg/tracing/ms.c
new file mode 100644 (file)
index 0000000..159203c
--- /dev/null
@@ -0,0 +1,138 @@
+/*     $Id$     */
+
+/* Copyright (c) 2002,2003,2004 Arnaud Legrand. 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 <stdio.h>
+#include "msg/msg.h"
+#include "xbt/sysdep.h" /* calloc, printf */
+
+/* Create a log channel to have nice outputs. */
+#include "xbt/log.h"
+#include "xbt/asserts.h"
+XBT_LOG_NEW_DEFAULT_CATEGORY(msg_test,"Messages specific for this msg example");
+
+int master(int argc, char *argv[]);
+int slave(int argc, char *argv[]);
+MSG_error_t test_all(const char *platform_file, const char *application_file);
+
+/** Emitter function  */
+int master(int argc, char *argv[])
+{
+  long number_of_tasks = atol(argv[1]);
+  double task_comp_size = atof(argv[2]);
+  double task_comm_size = atof(argv[3]);
+  long slaves_count = atol(argv[4]);
+
+  //setting the variable "is_master" (previously declared) to value 1
+  TRACE_host_variable_set ("is_master", 1);
+
+  int i;
+  for (i = 0; i < number_of_tasks; i++) {
+    m_task_t task=NULL;
+    task = MSG_task_create("task", task_comp_size, task_comm_size, NULL);
+
+    //setting the variable "task_creation" to value i
+    TRACE_host_variable_set ("task_creation", i);
+
+    //setting the category of task to "compute"
+    //the category of a task must be defined before it is sent or executed
+    TRACE_msg_set_task_category (task, "compute");
+    MSG_task_send(task, "master_mailbox");
+  }
+  
+   for (i = 0; i < slaves_count; i++) { 
+     m_task_t finalize = MSG_task_create ("finalize", 0, 0, 0);
+     TRACE_msg_set_task_category(finalize, "finalize");
+     MSG_task_send(finalize, "master_mailbox");
+   } 
+  
+  return 0;
+}
+
+/** Receiver function  */
+int slave(int argc, char *argv[])
+{
+  m_task_t task = NULL;
+  int res;
+
+  TRACE_host_variable_set ("is_slave", 1);
+  while(1) {
+    res = MSG_task_receive(&(task), "master_mailbox");
+
+    if (!strcmp(MSG_task_get_name(task),"finalize")) {
+      MSG_task_destroy(task);
+       break;
+    }
+
+    //adding the value returned by MSG_task_get_compute_duration(task)
+    //to the variable "task_computation"
+    TRACE_host_variable_add ("task_computation",
+        MSG_task_get_compute_duration(task));
+    MSG_task_execute(task);
+    MSG_task_destroy(task);
+    task = NULL;
+  }
+  return 0;
+}
+
+/** Test function */
+MSG_error_t test_all(const char *platform_file,
+                           const char *application_file)
+{
+  MSG_error_t res = MSG_OK;
+
+  {                            /*  Simulation setting */
+    MSG_set_channel_number(0);
+    MSG_create_environment(platform_file);
+  }
+  {                            /*   Application deployment */
+    MSG_function_register("master", master);
+    MSG_function_register("slave", slave);
+    MSG_launch_application(application_file);
+  }
+  res = MSG_main();
+  
+  INFO1("Simulation time %g",MSG_get_clock());
+  return res;
+}
+
+
+/** Main function */
+int main(int argc, char *argv[])
+{
+  MSG_error_t res = MSG_OK;
+  int i;
+
+  //starting the simulation tracing
+  TRACE_start ("simulation.trace");
+
+  //declaring user variables
+  TRACE_host_variable_declare ("is_slave");
+  TRACE_host_variable_declare ("is_master");
+  TRACE_host_variable_declare ("task_creation");
+  TRACE_host_variable_declare ("task_computation");
+
+  //declaring user categories
+  TRACE_category ("compute");
+  TRACE_category ("finalize");
+
+  MSG_global_init(&argc,argv);
+  if (argc < 3) {
+     printf ("Usage: %s platform_file deployment_file\n",argv[0]);
+     printf ("example: %s msg_platform.xml msg_deployment.xml\n",argv[0]);
+     exit(1);
+  }
+  res = test_all(argv[1],argv[2]);
+  MSG_clean();
+
+  //ending the simulation tracing
+  TRACE_end();
+
+  if(res==MSG_OK)
+    return 0;
+  else
+    return 1;
+} /* end_of_main */
diff --git a/examples/msg/tracing/ms.tesh b/examples/msg/tracing/ms.tesh
new file mode 100644 (file)
index 0000000..5d125eb
--- /dev/null
@@ -0,0 +1,565 @@
+#! ./tesh
+
+p Tracing master/slave application
+
+$ $SG_TEST_EXENV tracing/ms$EXEEXT ${srcdir:=.}/tracing/platform.xml ${srcdir:=.}/tracing/deployment.xml
+> [0.000000] [msg_test/INFO] Simulation time 4.4416
+
+$ $SG_TEST_EXENV cat$EXEEXT ${srcdir:=.}/tracing/simulation.trace
+> %EventDef PajeDefineContainerType 0 
+> %       Alias string 
+> %       ContainerType string 
+> %       Name string 
+> %EndEventDef 
+> %EventDef PajeDefineStateType 1 
+> %       Alias string 
+> %       ContainerType string 
+> %       Name string 
+> %EndEventDef 
+> %EventDef PajeDefineEntityValue 2 
+> %       Alias string 
+> %       EntityType string 
+> %       Name string 
+> %EndEventDef 
+> %EventDef PajeDefineEventType 3 
+> %       Alias string 
+> %       EntityType string 
+> %       Name string 
+> %EndEventDef 
+> %EventDef PajeDefineLinkType 4 
+> %       Alias string 
+> %       ContainerType string 
+> %       SourceContainerType string 
+> %       DestContainerType string 
+> %       Name string 
+> %EndEventDef 
+> %EventDef PajeCreateContainer 5 
+> %       Time date 
+> %       Alias string 
+> %       Type string 
+> %       Container string 
+> %       Name string 
+> %EndEventDef 
+> %EventDef PajeDestroyContainer 9 
+> %       Time date 
+> %       Type string 
+> %       Container string 
+> %EndEventDef 
+> %EventDef PajeSetState 6 
+> %       Time date 
+> %       EntityType string 
+> %       Container string 
+> %       Value string 
+> %EndEventDef
+> %EventDef PajeSetState 10 
+> %       Time date 
+> %       EntityType string 
+> %       Container string 
+> %       Value string 
+> %             Host string
+> %EndEventDef
+> %EventDef PajePushState 7 
+> %       Time date 
+> %       EntityType string 
+> %       Container string 
+> %       Value string 
+> %       Host string 
+> %EndEventDef
+> %EventDef PajePopState 8 
+> %       Time date 
+> %       EntityType string 
+> %       Container string 
+> %EndEventDef
+> %EventDef PajeSetState 11 
+> %       Time date 
+> %       EntityType string 
+> %       Container string 
+> %       Value string 
+> %             Host string
+> %             Comm string
+> %             Comp string
+> %EndEventDef
+> %EventDef PajeStartLink 12 
+> %       Time date 
+> %       EntityType string 
+> %       Container string 
+> %       Value string 
+> %       SourceContainer string 
+> %       Key string 
+> %EndEventDef
+> %EventDef PajeEndLink 13 
+> %       Time date 
+> %       EntityType string 
+> %       Container string 
+> %       Value string 
+> %       DestContainer string 
+> %       Key string 
+> %EndEventDef
+> %EventDef PajeCreateContainer 14 
+> %       Time date 
+> %       Alias string 
+> %       Type string 
+> %       Container string 
+> %       Name string 
+> %       Power string 
+> %EndEventDef 
+> %EventDef PajeStartLink 15 
+> %       Time date 
+> %       EntityType string 
+> %       Container string 
+> %       Value string 
+> %       SourceContainer string 
+> %       Key string 
+> %       Bandwidth string 
+> %       Latency string 
+> %EndEventDef
+> %EventDef PajePushState 16 
+> %       Time date 
+> %       EntityType string 
+> %       Container string 
+> %       Value string 
+> %       PowerUsed string 
+> %EndEventDef
+> %EventDef PajePushState 17 
+> %       Time date 
+> %       EntityType string 
+> %       Container string 
+> %       Value string 
+> %       BandwidthUsed string 
+> %EndEventDef
+> %EventDef PajeSetState 18 
+> %       Time date 
+> %       EntityType string 
+> %       Container string 
+> %       Value string 
+> %       PowerUsed string 
+> %EndEventDef
+> %EventDef PajePushState 19 
+> %       Time date 
+> %       EntityType string 
+> %       Container string 
+> %       Value string 
+> %EndEventDef
+> %EventDef PajeCreateContainer 20 
+> %       Time date 
+> %       Alias string 
+> %       Type string 
+> %       Container string 
+> %       Name string 
+> %       Bandwidth string 
+> %       Latency string 
+> %EndEventDef 
+> %EventDef PajeCreateContainer 21 
+> %       Time date 
+> %       Alias string 
+> %       Type string 
+> %       Container string 
+> %       Name string 
+> %       Bandwidth string 
+> %       Latency string 
+> %       SrcHost string 
+> %       DstHost string 
+> %EndEventDef 
+> %EventDef PajeSetVariable 22 
+> %       Time date 
+> %       EntityType string 
+> %       Container string 
+> %       Value string 
+> %EndEventDef
+> %EventDef PajeAddVariable 23 
+> %       Time date 
+> %       EntityType string 
+> %       Container string 
+> %       Value string 
+> %EndEventDef
+> %EventDef PajeSubVariable 24 
+> %       Time date 
+> %       EntityType string 
+> %       Container string 
+> %       Value string 
+> %EndEventDef
+> %EventDef PajeDefineVariableType 25 
+> %       Alias string 
+> %       ContainerType string 
+> %       Name string 
+> %EndEventDef 
+> 0 PLATFORM 0 platform
+> 0 HOST PLATFORM HOST
+> 25 power HOST power
+> 0 LINK PLATFORM LINK
+> 25 bandwidth LINK bandwidth
+> 25 latency LINK latency
+> 5 0.000000000000000 platform PLATFORM 0 simgrid-platform
+> 25 is_slave HOST is_slave
+> 25 is_master HOST is_master
+> 25 task_creation HOST task_creation
+> 25 task_computation HOST task_computation
+> 0 user_type 0 user_type
+> 5 0.000000000000000 compute user_type 0 compute
+> 25 bcompute LINK bcompute
+> 25 pcompute HOST pcompute
+> 5 0.000000000000000 finalize user_type 0 finalize
+> 25 bfinalize LINK bfinalize
+> 25 pfinalize HOST pfinalize
+> 5 0.000000000000000 Tremblay HOST platform Tremblay
+> 22 0.000000000000000 power Tremblay 98095000.000000
+> 5 0.000000000000000 Jupiter HOST platform Jupiter
+> 22 0.000000000000000 power Jupiter 76296000.000000
+> 5 0.000000000000000 Fafard HOST platform Fafard
+> 22 0.000000000000000 power Fafard 76296000.000000
+> 5 0.000000000000000 Ginette HOST platform Ginette
+> 22 0.000000000000000 power Ginette 48492000.000000
+> 5 0.000000000000000 Bourassa HOST platform Bourassa
+> 22 0.000000000000000 power Bourassa 48492000.000000
+> 5 0.000000000000000 R.4-3 HOST platform R.4-3
+> 22 0.000000000000000 power R.4-3 0.000000
+> 5 0.000000000000000 R.3-2-5 HOST platform R.3-2-5
+> 22 0.000000000000000 power R.3-2-5 0.000000
+> 5 0.000000000000000 R.2-0 HOST platform R.2-0
+> 22 0.000000000000000 power R.2-0 0.000000
+> 5 0.000000000000000 R.1-0 HOST platform R.1-0
+> 22 0.000000000000000 power R.1-0 0.000000
+> 5 0.000000000000000 R.1-8-6 HOST platform R.1-8-6
+> 22 0.000000000000000 power R.1-8-6 0.000000
+> 5 0.000000000000000 R.6-7 HOST platform R.6-7
+> 22 0.000000000000000 power R.6-7 0.000000
+> 21 0.000000000000000 9 LINK platform 9 7209750.000000 0.001462 Jupiter Tremblay
+> 22 0.000000000000000 bandwidth 9 7209750.000000
+> 22 0.000000000000000 latency 9 0.001462
+> 21 0.000000000000000 0 LINK platform 0 41279125.000000 0.000060 R.2-0 R.1-0
+> 22 0.000000000000000 bandwidth 0 41279125.000000
+> 22 0.000000000000000 latency 0 0.000060
+> 21 0.000000000000000 4 LINK platform 4 10099625.000000 0.000480 Tremblay R.4-3
+> 22 0.000000000000000 bandwidth 4 10099625.000000
+> 22 0.000000000000000 latency 4 0.000480
+> 21 0.000000000000000 1 LINK platform 1 34285625.000000 0.000514 R.1-0 R.1-8-6
+> 22 0.000000000000000 bandwidth 1 34285625.000000
+> 22 0.000000000000000 latency 1 0.000514
+> 21 0.000000000000000 5 LINK platform 5 27946250.000000 0.000278 R.3-2-5 Ginette
+> 22 0.000000000000000 bandwidth 5 27946250.000000
+> 22 0.000000000000000 latency 5 0.000278
+> 21 0.000000000000000 7 LINK platform 7 11618875.000000 0.000190 R.6-7 Bourassa
+> 22 0.000000000000000 bandwidth 7 11618875.000000
+> 22 0.000000000000000 latency 7 0.000190
+> 21 0.000000000000000 3 LINK platform 3 34285622.000000 0.000514 R.4-3 R.3-2-5
+> 22 0.000000000000000 bandwidth 3 34285622.000000
+> 22 0.000000000000000 latency 3 0.000514
+> 21 0.000000000000000 6 LINK platform 6 41279125.000000 0.000060 R.1-8-6 R.6-7
+> 22 0.000000000000000 bandwidth 6 41279125.000000
+> 22 0.000000000000000 latency 6 0.000060
+> 21 0.000000000000000 8 LINK platform 8 8158000.000000 0.000271 Fafard R.1-8-6
+> 22 0.000000000000000 bandwidth 8 8158000.000000
+> 22 0.000000000000000 latency 8 0.000271
+> 21 0.000000000000000 2 LINK platform 2 22222222.000000 0.000137 R.3-2-5 R.2-0
+> 22 0.000000000000000 bandwidth 2 22222222.000000
+> 22 0.000000000000000 latency 2 0.000137
+> 22 0.000000000000000 is_master Tremblay 1
+> 22 0.000000000000000 task_creation Tremblay 0
+> 22 0.000000000000000 is_slave Tremblay 1
+> 22 0.000000000000000 is_slave Jupiter 1
+> 22 0.000000000000000 is_slave Fafard 1
+> 22 0.000000000000000 is_slave Ginette 1
+> 22 0.000000000000000 is_slave Bourassa 1
+> 22 0.002338643617950 task_creation Tremblay 1
+> 23 0.002338643617950 task_computation Tremblay 5e+07
+> 22 0.017538420417950 bcompute 9 0
+> 23 0.017538420417950 bcompute 9 6632970.000000
+> 23 0.168300447081722 task_computation Jupiter 5e+07
+> 22 0.168300447081722 task_creation Tremblay 2
+> 22 0.002338643617950 pcompute Tremblay 0
+> 23 0.002338643617950 pcompute Tremblay 98095000.000000
+> 22 0.188851107081722 bcompute 4 0
+> 23 0.188851107081722 bcompute 4 5060664.718311
+> 22 0.188851107081722 bcompute 3 0
+> 23 0.188851107081722 bcompute 3 5060664.718311
+> 22 0.188851107081722 bcompute 2 0
+> 23 0.188851107081722 bcompute 2 5060664.718311
+> 22 0.188851107081722 bcompute 0 0
+> 23 0.188851107081722 bcompute 0 5060664.718311
+> 22 0.188851107081722 bcompute 1 0
+> 23 0.188851107081722 bcompute 1 5060664.718311
+> 22 0.188851107081722 bcompute 8 0
+> 23 0.188851107081722 bcompute 8 5060664.718311
+> 23 0.386453607081722 task_computation Fafard 5e+07
+> 22 0.386453607081722 task_creation Tremblay 3
+> 24 0.168300447081722 pcompute Tremblay 98095000.000000
+> 23 0.168300447081722 pcompute Tremblay 98095000.000000
+> 24 0.386453607081722 pcompute Tremblay 98095000.000000
+> 23 0.386453607081722 pcompute Tremblay 98095000.000000
+> 24 0.386453607081722 bcompute 4 5060664.718311
+> 23 0.399685308681722 bcompute 4 7859911.230163
+> 24 0.386453607081722 bcompute 3 5060664.718311
+> 23 0.399685308681722 bcompute 3 7859911.230163
+> 22 0.399685308681722 bcompute 5 0
+> 23 0.399685308681722 bcompute 5 7859911.230163
+> 24 0.512048618642161 bcompute 4 7859911.230163
+> 23 0.512048618642161 bcompute 4 7859911.230163
+> 24 0.512048618642161 bcompute 3 7859911.230163
+> 23 0.512048618642161 bcompute 3 7859911.230163
+> 24 0.512048618642161 bcompute 5 7859911.230163
+> 23 0.512048618642161 bcompute 5 7859911.230163
+> 23 0.526913208681722 task_computation Ginette 5e+07
+> 22 0.526913208681722 task_creation Tremblay 4
+> 24 0.526913208681722 bcompute 4 7859911.230163
+> 23 0.547249004681722 bcompute 4 5114134.701194
+> 24 0.526913208681722 bcompute 3 7859911.230163
+> 23 0.547249004681722 bcompute 3 5114134.701194
+> 24 0.386453607081722 bcompute 2 5060664.718311
+> 23 0.547249004681722 bcompute 2 5114134.701194
+> 24 0.386453607081722 bcompute 0 5060664.718311
+> 23 0.547249004681722 bcompute 0 5114134.701194
+> 24 0.386453607081722 bcompute 1 5060664.718311
+> 23 0.547249004681722 bcompute 1 5114134.701194
+> 22 0.547249004681722 bcompute 6 0
+> 23 0.547249004681722 bcompute 6 5114134.701194
+> 22 0.547249004681722 bcompute 7 0
+> 23 0.547249004681722 bcompute 7 5114134.701194
+> 23 0.742785504681722 task_computation Bourassa 5e+07
+> 22 0.742785504681722 task_creation Tremblay 5
+> 23 0.745124148299672 task_computation Tremblay 5e+07
+> 22 0.745124148299672 task_creation Tremblay 6
+> 22 0.168300447081722 pcompute Jupiter 0
+> 23 0.168300447081722 pcompute Jupiter 76296000.000000
+> 24 0.168300447081722 bcompute 9 6632970.000000
+> 23 0.838842574725803 bcompute 9 6632970.000000
+> 22 0.989604601389575 task_creation Tremblay 7
+> 23 0.989604601389575 task_computation Jupiter 5e+07
+> 24 0.512048618642161 pcompute Tremblay 98095000.000000
+> 23 0.745124148299672 pcompute Tremblay 98095000.000000
+> 22 0.386453607081722 pcompute Fafard 0
+> 23 0.386453607081722 pcompute Fafard 76296000.000000
+> 24 0.989604601389575 pcompute Tremblay 98095000.000000
+> 23 0.989604601389575 pcompute Tremblay 98095000.000000
+> 24 0.742785504681722 bcompute 4 5114134.701194
+> 23 1.062346617925803 bcompute 4 5060664.718311
+> 24 0.742785504681722 bcompute 3 5114134.701194
+> 23 1.062346617925803 bcompute 3 5060664.718311
+> 24 0.742785504681722 bcompute 2 5114134.701194
+> 23 1.062346617925803 bcompute 2 5060664.718311
+> 24 0.742785504681722 bcompute 0 5114134.701194
+> 23 1.062346617925803 bcompute 0 5060664.718311
+> 24 0.742785504681722 bcompute 1 5114134.701194
+> 23 1.062346617925803 bcompute 1 5060664.718311
+> 24 0.386453607081722 bcompute 8 5060664.718311
+> 23 1.062346617925803 bcompute 8 5060664.718311
+> 24 1.254834123323883 bcompute 4 5060664.718311
+> 23 1.254834123323883 bcompute 4 5060664.718311
+> 24 1.254834123323883 bcompute 3 5060664.718311
+> 23 1.254834123323883 bcompute 3 5060664.718311
+> 24 1.254834123323883 bcompute 2 5060664.718311
+> 23 1.254834123323883 bcompute 2 5060664.718311
+> 24 1.254834123323883 bcompute 0 5060664.718311
+> 23 1.254834123323883 bcompute 0 5060664.718311
+> 24 1.254834123323883 bcompute 1 5060664.718311
+> 23 1.254834123323883 bcompute 1 5060664.718311
+> 24 1.254834123323883 bcompute 8 5060664.718311
+> 23 1.254834123323883 bcompute 8 5060664.718311
+> 22 1.259949117925803 task_creation Tremblay 8
+> 23 1.259949117925803 task_computation Fafard 5e+07
+> 23 1.262287761543753 task_computation Tremblay 5e+07
+> 22 1.262287761543753 task_creation Tremblay 9
+> 22 0.526913208681722 pcompute Ginette 0
+> 23 0.526913208681722 pcompute Ginette 48492000.000000
+> 24 0.823642797925803 pcompute Jupiter 76296000.000000
+> 23 0.989604601389575 pcompute Jupiter 76296000.000000
+> 24 1.259949117925803 bcompute 4 5060664.718311
+> 23 1.571242823339546 bcompute 4 7859911.230163
+> 24 1.259949117925803 bcompute 3 5060664.718311
+> 23 1.571242823339546 bcompute 3 7859911.230163
+> 24 0.526913208681722 bcompute 5 7859911.230163
+> 23 1.571242823339546 bcompute 5 7859911.230163
+> 24 1.644946952233656 bcompute 4 7859911.230163
+> 23 1.644946952233656 bcompute 4 7859911.230163
+> 24 1.644946952233656 bcompute 3 7859911.230163
+> 23 1.644946952233656 bcompute 3 7859911.230163
+> 24 1.644946952233656 bcompute 5 7859911.230163
+> 23 1.644946952233656 bcompute 5 7859911.230163
+> 22 1.698470723339546 task_creation Tremblay 10
+> 23 1.698470723339546 task_computation Ginette 5e+07
+> 24 1.254834123323883 pcompute Tremblay 98095000.000000
+> 23 1.262287761543753 pcompute Tremblay 98095000.000000
+> 24 1.698470723339546 pcompute Tremblay 98095000.000000
+> 23 1.698470723339546 pcompute Tremblay 98095000.000000
+> 24 0.989604601389575 bcompute 9 6632970.000000
+> 23 1.713670500139546 bcompute 9 6632970.000000
+> 22 0.742785504681722 pcompute Bourassa 0
+> 23 0.742785504681722 pcompute Bourassa 48492000.000000
+> 24 1.771997736567964 bcompute 9 6632970.000000
+> 23 1.771997736567964 bcompute 9 6632970.000000
+> 24 1.773883417739546 bcompute 9 6632970.000000
+> 23 1.773883417739546 bcompute 9 6632970.000000
+> 23 1.864432526803318 task_computation Jupiter 5e+07
+> 22 1.864432526803318 task_creation Tremblay 11
+> 23 1.866771170421268 task_computation Tremblay 5e+07
+> 22 1.866771170421268 task_creation Tremblay 12
+> 24 1.041795957925803 pcompute Fafard 76296000.000000
+> 23 1.259949117925803 pcompute Fafard 76296000.000000
+> 24 1.698470723339546 bcompute 4 7859911.230163
+> 23 1.887106966421268 bcompute 4 5114134.701194
+> 24 1.698470723339546 bcompute 3 7859911.230163
+> 23 1.887106966421268 bcompute 3 5114134.701194
+> 24 1.259949117925803 bcompute 2 5060664.718311
+> 23 1.887106966421268 bcompute 2 5114134.701194
+> 24 1.259949117925803 bcompute 0 5060664.718311
+> 23 1.887106966421268 bcompute 0 5114134.701194
+> 24 1.259949117925803 bcompute 1 5060664.718311
+> 23 1.887106966421268 bcompute 1 5114134.701194
+> 24 0.742785504681722 bcompute 6 5114134.701194
+> 23 1.887106966421268 bcompute 6 5114134.701194
+> 24 0.742785504681722 bcompute 7 5114134.701194
+> 23 1.887106966421268 bcompute 7 5114134.701194
+> 24 1.915291468769884 bcompute 4 5114134.701194
+> 23 1.915291468769884 bcompute 4 5114134.701194
+> 24 1.915291468769884 bcompute 3 5114134.701194
+> 23 1.915291468769884 bcompute 3 5114134.701194
+> 24 1.915291468769884 bcompute 2 5114134.701194
+> 23 1.915291468769884 bcompute 2 5114134.701194
+> 24 1.915291468769884 bcompute 0 5114134.701194
+> 23 1.915291468769884 bcompute 0 5114134.701194
+> 24 1.915291468769884 bcompute 1 5114134.701194
+> 23 1.915291468769884 bcompute 1 5114134.701194
+> 24 1.915291468769884 bcompute 6 5114134.701194
+> 23 1.915291468769884 bcompute 6 5114134.701194
+> 24 1.915291468769884 bcompute 7 5114134.701194
+> 23 1.915291468769884 bcompute 7 5114134.701194
+> 23 2.082643466421268 task_computation Bourassa 5e+07
+> 22 2.082643466421268 task_creation Tremblay 13
+> 24 1.771997736567964 pcompute Tremblay 98095000.000000
+> 23 1.866771170421268 pcompute Tremblay 98095000.000000
+> 24 2.082643466421268 bcompute 4 5114134.701194
+> 23 2.103194126421268 bcompute 4 5060664.718311
+> 24 2.082643466421268 bcompute 3 5114134.701194
+> 23 2.103194126421268 bcompute 3 5060664.718311
+> 24 2.082643466421268 bcompute 2 5114134.701194
+> 23 2.103194126421268 bcompute 2 5060664.718311
+> 24 2.082643466421268 bcompute 0 5114134.701194
+> 23 2.103194126421268 bcompute 0 5060664.718311
+> 24 2.082643466421268 bcompute 1 5114134.701194
+> 23 2.103194126421268 bcompute 1 5060664.718311
+> 24 1.259949117925803 bcompute 8 5060664.718311
+> 23 2.103194126421268 bcompute 8 5060664.718311
+> 23 2.300796626421268 task_computation Fafard 5e+07
+> 22 2.300796626421268 task_creation Tremblay 14
+> 24 2.082643466421268 pcompute Tremblay 98095000.000000
+> 23 2.082643466421268 pcompute Tremblay 98095000.000000
+> 24 2.300796626421268 pcompute Tremblay 98095000.000000
+> 23 2.300796626421268 pcompute Tremblay 98095000.000000
+> 22 2.378819789063430 task_creation Tremblay 15
+> 23 2.378819789063430 task_computation Tremblay 5e+07
+> 24 1.644946952233656 pcompute Jupiter 76296000.000000
+> 23 1.864432526803318 pcompute Jupiter 76296000.000000
+> 24 1.864432526803318 bcompute 9 6632970.000000
+> 23 2.534974654447399 bcompute 9 6632970.000000
+> 22 2.685736681111171 task_creation Tremblay 16
+> 23 2.685736681111171 task_computation Jupiter 5e+07
+> 24 2.376481145445480 pcompute Tremblay 98095000.000000
+> 23 2.378819789063430 pcompute Tremblay 98095000.000000
+> 24 1.558011121739546 pcompute Ginette 48492000.000000
+> 23 1.698470723339546 pcompute Ginette 48492000.000000
+> 24 2.300796626421268 bcompute 4 5060664.718311
+> 23 2.742800337997370 bcompute 4 7859911.230163
+> 24 2.300796626421268 bcompute 3 5060664.718311
+> 23 2.742800337997370 bcompute 3 7859911.230163
+> 24 1.698470723339546 bcompute 5 7859911.230163
+> 23 2.742800337997370 bcompute 5 7859911.230163
+> 22 2.870028237997370 task_creation Tremblay 17
+> 23 2.870028237997370 task_computation Ginette 5e+07
+> 22 2.890868407705591 task_creation Tremblay 18
+> 23 2.890868407705591 task_computation Tremblay 5e+07
+> 24 1.915291468769884 pcompute Fafard 76296000.000000
+> 23 2.300796626421268 pcompute Fafard 76296000.000000
+> 24 1.773883417739546 pcompute Bourassa 48492000.000000
+> 23 2.082643466421268 pcompute Bourassa 48492000.000000
+> 24 2.870028237997370 bcompute 4 7859911.230163
+> 23 2.976689637265349 bcompute 4 5060664.718311
+> 24 2.870028237997370 bcompute 3 7859911.230163
+> 23 2.976689637265349 bcompute 3 5060664.718311
+> 24 2.300796626421268 bcompute 2 5060664.718311
+> 23 2.976689637265349 bcompute 2 5060664.718311
+> 24 2.300796626421268 bcompute 0 5060664.718311
+> 23 2.976689637265349 bcompute 0 5060664.718311
+> 24 2.300796626421268 bcompute 1 5060664.718311
+> 23 2.976689637265349 bcompute 1 5060664.718311
+> 24 2.300796626421268 bcompute 8 5060664.718311
+> 23 2.976689637265349 bcompute 8 5060664.718311
+> 24 3.113741379479092 bcompute 4 5060664.718311
+> 23 3.113741379479092 bcompute 4 5060664.718311
+> 24 3.113741379479092 bcompute 3 5060664.718311
+> 23 3.113741379479092 bcompute 3 5060664.718311
+> 24 3.113741379479092 bcompute 2 5060664.718311
+> 23 3.113741379479092 bcompute 2 5060664.718311
+> 24 3.113741379479092 bcompute 0 5060664.718311
+> 23 3.113741379479092 bcompute 0 5060664.718311
+> 24 3.113741379479092 bcompute 1 5060664.718311
+> 23 3.113741379479092 bcompute 1 5060664.718311
+> 24 3.113741379479092 bcompute 8 5060664.718311
+> 23 3.113741379479092 bcompute 8 5060664.718311
+> 22 3.174292137265349 task_creation Tremblay 19
+> 23 3.174292137265349 task_computation Fafard 5e+07
+> 24 2.888529764087641 pcompute Tremblay 98095000.000000
+> 23 2.890868407705591 pcompute Tremblay 98095000.000000
+> 24 2.519774877647399 pcompute Jupiter 76296000.000000
+> 23 2.685736681111171 pcompute Jupiter 76296000.000000
+> 24 3.174292137265349 bcompute 4 5060664.718311
+> 23 3.194627933265349 bcompute 4 5114134.701194
+> 24 3.174292137265349 bcompute 3 5060664.718311
+> 23 3.194627933265349 bcompute 3 5114134.701194
+> 24 3.174292137265349 bcompute 2 5060664.718311
+> 23 3.194627933265349 bcompute 2 5114134.701194
+> 24 3.174292137265349 bcompute 0 5060664.718311
+> 23 3.194627933265349 bcompute 0 5114134.701194
+> 24 3.174292137265349 bcompute 1 5060664.718311
+> 23 3.194627933265349 bcompute 1 5114134.701194
+> 24 2.082643466421268 bcompute 6 5114134.701194
+> 23 3.194627933265349 bcompute 6 5114134.701194
+> 24 2.082643466421268 bcompute 7 5114134.701194
+> 23 3.194627933265349 bcompute 7 5114134.701194
+> 24 3.341079031955252 bcompute 4 5114134.701194
+> 23 3.341079031955252 bcompute 4 5114134.701194
+> 24 3.341079031955252 bcompute 3 5114134.701194
+> 23 3.341079031955252 bcompute 3 5114134.701194
+> 24 3.341079031955252 bcompute 2 5114134.701194
+> 23 3.341079031955252 bcompute 2 5114134.701194
+> 24 3.341079031955252 bcompute 0 5114134.701194
+> 23 3.341079031955252 bcompute 0 5114134.701194
+> 24 3.341079031955252 bcompute 1 5114134.701194
+> 23 3.341079031955252 bcompute 1 5114134.701194
+> 24 3.341079031955252 bcompute 6 5114134.701194
+> 23 3.341079031955252 bcompute 6 5114134.701194
+> 24 3.341079031955252 bcompute 7 5114134.701194
+> 23 3.341079031955252 bcompute 7 5114134.701194
+> 23 3.390164433265349 task_computation Bourassa 5e+07
+> 24 3.390164433265349 pcompute Tremblay 98095000.000000
+> 23 3.390164433265349 pcompute Tremblay 98095000.000000
+> 24 2.956138977265349 pcompute Fafard 76296000.000000
+> 23 3.174292137265349 pcompute Fafard 76296000.000000
+> 24 2.729568636397370 pcompute Ginette 48492000.000000
+> 23 2.870028237997370 pcompute Ginette 48492000.000000
+> 24 3.113741379479092 pcompute Bourassa 48492000.000000
+> 23 3.390164433265349 pcompute Bourassa 48492000.000000
+> 24 3.390164433265349 bcompute 0 5114134.701194
+> 24 3.390164433265349 bcompute 4 5114134.701194
+> 24 3.174292137265349 bcompute 8 5060664.718311
+> 24 4.421262346323173 pcompute Bourassa 48492000.000000
+> 24 3.901126151055194 pcompute Ginette 48492000.000000
+> 24 3.390164433265349 bcompute 1 5114134.701194
+> 24 2.870028237997370 bcompute 5 7859911.230163
+> 24 2.685736681111171 bcompute 9 6632970.000000
+> 24 3.829634488109430 pcompute Fafard 76296000.000000
+> 24 3.390164433265349 bcompute 2 5114134.701194
+> 24 3.390164433265349 bcompute 6 5114134.701194
+> 24 3.390164433265349 bcompute 3 5114134.701194
+> 24 3.390164433265349 bcompute 7 5114134.701194
+> 24 3.400578382729802 pcompute Tremblay 98095000.000000
+> 24 3.341079031955252 pcompute Jupiter 76296000.000000
+> 9 4.441598142323174 HOST Fafard
+> 9 4.441598142323174 HOST R.2-0
+> 9 4.441598142323174 HOST R.4-3
+> 9 4.441598142323174 HOST R.3-2-5
+> 9 4.441598142323174 HOST R.1-8-6
+> 9 4.441598142323174 HOST R.6-7
+> 9 4.441598142323174 HOST Tremblay
+> 9 4.441598142323174 HOST R.1-0
+> 9 4.441598142323174 HOST Bourassa
+> 9 4.441598142323174 HOST Jupiter
+> 9 4.441598142323174 HOST Ginette
diff --git a/examples/msg/tracing/platform.xml b/examples/msg/tracing/platform.xml
new file mode 100755 (executable)
index 0000000..d581bfc
--- /dev/null
@@ -0,0 +1,105 @@
+<?xml version='1.0'?>
+<!DOCTYPE platform SYSTEM "simgrid.dtd">
+<platform version="2">
+  <host id="Tremblay" power="98095000"/>
+  <host id="Jupiter" power="76296000"/>
+  <host id="Fafard" power="76296000"/>
+  <host id="Ginette" power="48492000"/>
+  <host id="Bourassa" power="48492000"/>
+  <router id="R.4-3"/>
+  <router id="R.3-2-5"/>
+  <router id="R.2-0"/>
+  <router id="R.1-0"/>
+  <router id="R.1-8-6"/>
+  <router id="R.6-7"/>
+  <link id="6"  bandwidth="41279125" latency="5.9904e-05"/>
+  <link id="11" bandwidth="252750" latency="0.00570455"/>
+  <link id="3"  bandwidth="34285622" latency="0.000514433"/>
+  <link id="7"  bandwidth="11618875" latency="0.00018998"/>
+  <link id="9"  bandwidth="7209750" latency="0.001461517"/>
+  <link id="12" bandwidth="1792625" latency="0.007877863"/>
+  <link id="2"  bandwidth="22222222" latency="0.000136931"/>
+  <link id="8"  bandwidth="8158000" latency="0.000270544"/>
+  <link id="1"  bandwidth="34285625" latency="0.000514433"/>
+  <link id="4"  bandwidth="10099625" latency="0.00047978"/>
+  <link id="0"  bandwidth="41279125" latency="5.9904e-05"/>
+  <link id="10" bandwidth="4679750" latency="0.000848712"/>
+  <link id="5"  bandwidth="27946250" latency="0.000278066"/>
+  <link id="loopback" bandwidth="498000000" latency="0.000015" sharing_policy="FATPIPE"/>
+  <route src="Tremblay" dst="Tremblay"><link:ctn id="loopback"/></route>
+  <route src="Jupiter" dst="Jupiter"><link:ctn id="loopback"/></route>
+  <route src="Fafard" dst="Fafard"><link:ctn id="loopback"/></route>
+  <route src="Ginette" dst="Ginette"><link:ctn id="loopback"/></route>
+  <route src="Bourassa" dst="Bourassa"><link:ctn id="loopback"/></route>
+
+  <route src="Tremblay" dst="R.4-3"><link:ctn id="4"/></route>
+  <route src="R.3-2-5" dst="Ginette"><link:ctn id="5"/></route>
+  <route src="R.4-3" dst="R.3-2-5"><link:ctn id="3"/></route>
+  <route src="R.3-2-5" dst="R.2-0"><link:ctn id="2"/></route>
+  <route src="R.2-0" dst="R.1-0"><link:ctn id="0"/></route>
+  <route src="Fafard" dst="R.1-8-6"><link:ctn id="8"/></route>
+  <route src="R.1-0" dst="R.1-8-6"><link:ctn id="1"/></route>
+  <route src="R.1-8-6" dst="R.6-7"><link:ctn id="6"/></route>
+  <route src="R.6-7" dst="Bourassa"><link:ctn id="7"/></route>
+
+  <route src="Tremblay" dst="Jupiter">
+    <link:ctn id="9"/>
+  </route>
+  <route src="Tremblay" dst="Fafard">
+    <link:ctn id="4"/><link:ctn id="3"/><link:ctn id="2"/><link:ctn id="0"/><link:ctn id="1"/><link:ctn id="8"/>
+  </route>
+  <route src="Tremblay" dst="Ginette">
+    <link:ctn id="4"/><link:ctn id="3"/><link:ctn id="5"/>
+  </route>
+  <route src="Tremblay" dst="Bourassa">
+    <link:ctn id="4"/><link:ctn id="3"/><link:ctn id="2"/><link:ctn id="0"/><link:ctn id="1"/><link:ctn id="6"/><link:ctn id="7"/>
+  </route>
+  <route src="Jupiter" dst="Tremblay">
+    <link:ctn id="9"/>
+  </route>
+  <route src="Jupiter" dst="Fafard">
+    <link:ctn id="9"/><link:ctn id="4"/><link:ctn id="3"/><link:ctn id="2"/><link:ctn id="0"/><link:ctn id="1"/><link:ctn id="8"/>
+  </route>
+  <route src="Jupiter" dst="Ginette">
+    <link:ctn id="9"/><link:ctn id="4"/><link:ctn id="3"/><link:ctn id="5"/>
+  </route>
+  <route src="Jupiter" dst="Bourassa">
+    <link:ctn id="9"/><link:ctn id="4"/><link:ctn id="3"/><link:ctn id="2"/><link:ctn id="0"/><link:ctn id="1"/><link:ctn id="6"/><link:ctn id="7"/>
+  </route>
+  <route src="Fafard" dst="Tremblay">
+    <link:ctn id="8"/><link:ctn id="1"/><link:ctn id="0"/><link:ctn id="2"/><link:ctn id="3"/><link:ctn id="4"/>
+  </route>
+  <route src="Fafard" dst="Jupiter">
+    <link:ctn id="8"/><link:ctn id="1"/><link:ctn id="0"/><link:ctn id="2"/><link:ctn id="3"/><link:ctn id="4"/><link:ctn id="9"/>
+  </route>
+  <route src="Fafard" dst="Ginette">
+    <link:ctn id="8"/><link:ctn id="1"/><link:ctn id="0"/><link:ctn id="2"/><link:ctn id="5"/>
+  </route>
+  <route src="Fafard" dst="Bourassa">
+    <link:ctn id="8"/><link:ctn id="6"/><link:ctn id="7"/>
+  </route>
+  <route src="Ginette" dst="Tremblay">
+    <link:ctn id="5"/><link:ctn id="3"/><link:ctn id="4"/>
+  </route>
+  <route src="Ginette" dst="Jupiter">
+    <link:ctn id="5"/><link:ctn id="3"/><link:ctn id="4"/><link:ctn id="9"/>
+  </route>
+  <route src="Ginette" dst="Fafard">
+    <link:ctn id="5"/><link:ctn id="2"/><link:ctn id="0"/><link:ctn id="1"/><link:ctn id="8"/>
+  </route>
+  <route src="Ginette" dst="Bourassa">
+    <link:ctn id="5"/><link:ctn id="2"/><link:ctn id="0"/><link:ctn id="1"/><link:ctn id="6"/><link:ctn id="7"/>
+  </route>
+  <route src="Bourassa" dst="Tremblay">
+    <link:ctn id="7"/><link:ctn id="6"/><link:ctn id="1"/><link:ctn id="0"/><link:ctn id="2"/><link:ctn id="3"/><link:ctn id="4"/>
+  </route>
+  <route src="Bourassa" dst="Jupiter">
+    <link:ctn id="7"/><link:ctn id="6"/><link:ctn id="1"/><link:ctn id="0"/><link:ctn id="2"/><link:ctn id="3"/><link:ctn id="4"/><link:ctn id="9"/>
+  </route>
+  <route src="Bourassa" dst="Fafard">
+    <link:ctn id="7"/><link:ctn id="6"/><link:ctn id="8"/>
+  </route>
+  <route src="Bourassa" dst="Ginette">
+    <link:ctn id="7"/><link:ctn id="6"/><link:ctn id="1"/><link:ctn id="0"/><link:ctn id="2"/><link:ctn id="5"/>
+  </route>
+</platform>