Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
new tracing mask TRACE_VOLUME to trace the msg tasks communication size and group...
[simgrid.git] / src / instr / paje.c
index ee2f22c..7a7710e 100644 (file)
@@ -11,7 +11,6 @@
  */
 
 #include "instr/private.h"
-#include "instr/config.h"
 
 #ifdef HAVE_TRACING
 
@@ -44,6 +43,7 @@ static int pajeSetVariableId = 22;
 static int pajeAddVariableId = 23;
 static int pajeSubVariableId = 24;
 static int pajeDefineVariableTypeId = 25;
+static int pajeStartLinkWithVolumeId = 26;
 
 #define TRACE_LINE_SIZE 1000
 
@@ -242,7 +242,16 @@ void TRACE_paje_create_header(void) {
 %%       Alias string \n\
 %%       ContainerType string \n\
 %%       Name string \n\
-%%EndEventDef \n",
+%%EndEventDef \n\
+%%EventDef PajeStartLink %d \n\
+%%       Time date \n\
+%%       EntityType string \n\
+%%       Container string \n\
+%%       Value string \n\
+%%       SourceContainer string \n\
+%%       Key string \n\
+%%       Volume string \n\
+%%EndEventDef\n",
       pajeDefineContainerTypeId, pajeDefineStateTypeId, pajeDefineEntityValueId,
       pajeDefineEventTypeId, pajeDefineLinkTypeId, pajeCreateContainerId,
       pajeDestroyContainerId, pajeSetStateId, pajeSetStateWithHostId,
@@ -255,7 +264,8 @@ void TRACE_paje_create_header(void) {
       pajeSetVariableId,
       pajeAddVariableId,
       pajeSubVariableId,
-      pajeDefineVariableTypeId);
+      pajeDefineVariableTypeId,
+      pajeStartLinkWithVolumeId);
 }
 
 /* internal to this file */
@@ -413,6 +423,14 @@ void pajeStartLinkWithBandwidthLatency (double time, const char *entityType, con
   fprintf (tracing_file, "%s %f %f\n", line, bw, lat);
 }
 
+void pajeStartLinkWithVolume (double time, const char *entityType, const char *container, const char *value,
+    const char *sourceContainer, const char *key, double volume)
+{
+  char line[TRACE_LINE_SIZE];
+  __pajeStartLink (line, TRACE_LINE_SIZE, pajeStartLinkWithVolumeId, time, entityType, container, value, sourceContainer, key);
+  fprintf (tracing_file, "%s %f\n", line, volume);
+}
+
 void pajeEndLink (double time, const char *entityType, const char *container, const char *value,
     const char *destContainer, const char *key)
 {