Use histograms with logarithmicly-sized bins
[lttv.git] / lttv / lttv / sync / event_analysis_eval.h
index 1515bec955bbfbfa092d23c8ca078426b58bf003..120bdc67c46a9c12162b9601806fda4ac2c00eb9 100644 (file)
 #include "data_structures.h"
 
 
+struct RttKey
+{
+       uint32_t saddr, daddr;
+};
+
 typedef struct
 {
        unsigned int inversionNb,
@@ -38,12 +43,47 @@ typedef struct
        unsigned int broadcastNb;
 
        MessageStats** messageStats;
+       /* double* exchangeRtt[RttKey]
+        * For this table, saddr and daddr are swapped as necessary such that
+        * saddr < daddr */
+       GHashTable* exchangeRtt;
 } AnalysisStatsEval;
 
-struct RttKey
+typedef struct
 {
-       uint32_t saddr, daddr;
-};
+       /* FILE* ttPoints[row][col] where
+        *   row= outE->traceNum
+        *   col= inE->traceNum
+        *
+        * This array contains file pointers to files where "trip times" (message
+        * latency) histogram values are outputted. Each trace-pair has two files,
+        * one for each message direction. The elements on the diagonal are not
+        * initialized.
+        */
+       FILE*** ttPoints;
+
+       // uint32_t ttBinsArray[row][col][binNum];
+       // Row and col have the same structure as ttPoints
+       uint32_t*** ttBinsArray;
+       // uint32_t ttBinsTotal[row][col];
+       // Row and col have the same structure as ttPoints
+       uint32_t** ttBinsTotal;
+
+       /* FILE* hrttPoints[traceNum][traceNum] where
+        *   row > col, other elements are not initialized
+        *
+        * This array contains file pointers to files where half round trip times
+        * (evaluated from exchanges) histogram values are outputted.
+        */
+       FILE*** hrttPoints;
+
+       // uint32_t hrttBinsArray[row][col][binNum];
+       // Row and col have the same structure as hrttPoints
+       uint32_t*** hrttBinsArray;
+       // uint32_t hrttBinsTotal[row][col];
+       // Row and col have the same structure as hrttPoints
+       uint32_t** hrttBinsTotal;
+} AnalysisGraphsEval;
 
 typedef struct
 {
@@ -51,6 +91,7 @@ typedef struct
        GHashTable* rttInfo;
 
        AnalysisStatsEval* stats;
+       AnalysisGraphsEval* graphs;
 } AnalysisDataEval;
 
 #endif
This page took 0.037496 seconds and 4 git commands to generate.