1 /* This file is part of the Linux Trace Toolkit viewer
2 * Copyright (C) 2009 Benjamin Poirier <benjamin.poirier@polymtl.ca>
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License Version 2 as
6 * published by the Free Software Foundation;
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
13 * You should have received a copy of the GNU General Public License
14 * along with this program; if not, write to the Free Software
15 * Foundation, Inc., 59 Temple Place - Suite 330, Boston,
19 #ifndef EVENT_ANALYSIS_EVAL_H
20 #define EVENT_ANALYSIS_EVAL_H
31 #include "data_structures.h"
36 uint32_t saddr
, daddr
;
41 unsigned int inversionNb
,
49 double broadcastDiffSum
;
50 unsigned int broadcastNb
;
52 // MessageStats messageStats[traceNb][traceNb]
53 MessageStats
** messageStats
;
55 /* double* exchangeRtt[RttKey]
56 * For this table, saddr and daddr are swapped as necessary such that
58 GHashTable
* exchangeRtt
;
61 /* FactorsCHull** chFactorsArray[traceNum][traceNum]
62 * FactorsCHull** lpFactorsArray[traceNum][traceNum]
64 * As usual, only the lower triangular part of theses matrixes is
66 FactorsCHull
** chFactorsArray
;
67 FactorsCHull
** lpFactorsArray
;
74 // index of min and max bins that are != 0
78 /* bin[0]: underflow ]-INFINITY..0[
80 * rest defined exponentially, see binStart()
81 * bin[BIN_NB - 1]: overflow [1..INFINITY[ */
87 /* File pointers to files where "trip times" (message latency) histogram
88 * values are output. Each host-pair has two files, one for each message
89 * direction. As for traces, the host with the smallest address is
90 * considered to be the reference for the direction of messages (ie.
91 * messages from the host with the lowest address to the host with the
92 * largest address are "sent"). */
96 struct Bins ttSendBins
;
97 struct Bins ttRecvBins
;
99 /* File pointers to files where half round trip times (evaluated from
100 * exchanges) histogram values are output. */
103 struct Bins hrttBins
;
104 } AnalysisHistogramEval
;
108 // These are the cpu times of the first and last interactions (message or
109 // broadcast) between two traces. The times are from the trace with the
116 /* AnalysisHistogramEval* graphs[RttKey];
117 * For this table, saddr and daddr are swapped as necessary such that
119 GHashTable
* histograms
;
121 /* Bounds bounds[traceNum][traceNum]
123 * Only the lower triangular part of the matrix is allocated, that is
124 * bounds[i][j] where i > j */
128 /* glp_prob* lps[traceNum][traceNum]
130 * Only the lower triangular part of the matrix is allocated, that is
131 * lps[i][j] where i > j */
134 /* Factors lpFactors[traceNum][traceNum]
136 * Only the lower triangular part of the matrix is allocated, that is
137 * lpFactorsArray[i][j] where i > j */
138 FactorsCHull
** lpFactorsArray
;
140 } AnalysisGraphsEval
;
144 // double* rttInfo[RttKey]
147 /* The convex hull analysis is encapsulated and messages are passed to it
148 * so that it builds the convex hulls. These are reused in the linear
150 struct _SyncState
* chullSS
;
152 AnalysisStatsEval
* stats
;
153 AnalysisGraphsEval
* graphs
;
This page took 0.032119 seconds and 4 git commands to generate.