blob: 8d0914a6c16441e44528ca4219df3bf3cdbf37a0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
#/bin/sh
. parameters
PERCENTILES="0 .25 .50 .75 .99 .999 .9999 1"
for t in $*; do
cat /dev/null > ${t}.avg.dat
for p in $PERCENTILES; do
cat /dev/null > ${t}$p.percentile.dat
done
for c in $NCONSUMERS; do
echo $t $c
INPUT=${t}.${c}.txt
awk -v c=$c '/^HISTO/ {
n++;
s += $3
}
END {
printf("%d %f\n", c, s/n);
}' $INPUT >> ${t}.avg.dat
TFILE=/tmp/${t}.$$
awk '/^HISTO/ {print $3}' $INPUT | sort -n | uniq -c > $TFILE
for p in $PERCENTILES; do
awk -v N=$ITERATIONS '{print $2, $1 / N}' $TFILE |
awk -v c=$c -v p=${p} '\
BEGIN { x = 0; l = 0; }
{ s += $2;
l = $1;
if (x == 0 && s >= p) {
x = $1;
}
}
END {
if (s < p) {
x = l;
}
printf("%d %f\n", c, x);
}' >> ${t}${p}.percentile.dat
done
/bin/rm -f $TFILE
done
done
|