Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(539)

Side by Side Diff: dart/compiler/scripts/metrics_math.sh

Issue 20722006: Removed compiler/ directory from repository (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 7 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 #!/bin/bash
2 #
3 # Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
4 # for details. All rights reserved. Use of this source code is governed by a
5 # BSD-style license that can be found in the LICENSE file.
6
7 # This file is repsonsible for performing the averag and standard deviation
8 # for a specific metrics over a given set of metrics in a file.
9 # This should be included in other compiler scripts, or used through
10 # sample_metrics.sh
11
12 AVERAGE=0
13 STDEV=0
14 COUNT=0
15
16 function do_math_return() {
17 local sum=0
18 local count=0
19 local time
20 for time in $2
21 do
22 sum=$(echo "$sum + $time" | bc -l)
23 (( count++ ))
24 done
25 average=$(echo "$sum / $count" | bc -l)
26 #echo "count=$count, sum=$sum, average=$average"
27
28 #go over the numbers, take the difference from the average and squart, then sq uare root / count.
29 sum_dev=0
30 for time in $2
31 do
32 step=$(echo "$time - $average" | bc -l)
33 sum_dev=$(echo "$sum_dev + $step^2" | bc -l)
34 done
35
36 step=$(echo "$sum_dev / $count" | bc -l)
37 OUT="sqrt(${step})"
38 standard_dev=$(echo $OUT | bc -l | sed 's/\([0-9]*\.[0-9][0-9]\)[0-9]*/\1/')
39 average=$(echo $average | sed 's/\([0-9]*\.[0-9][0-9]\)[0-9]*/\1/')
40 AVERAGE=$average
41 STDEV=$standard_dev
42 COUNT=$count
43 }
44
45 function do_math() {
46 do_math_return "$1" "$2"
47 echo "$1: average: $AVERAGE stdev: $STDEV count: $COUNT"
48 }
49
50 function sample_file_return() {
51 TIMES=$(sed -n "s/$2\S*\s*:\s*\(\([0-9]*\)\(\.[0-9]*\)\?\)/\1/p" $3)
52 do_math_return "$1" "$TIMES"
53 SAMPLE_LINE="$1: average: $AVERAGE stdev: $STDEV count: $COUNT"
54 }
55
56 function sample_file() {
57 TIMES=$(sed -n "s/$2\S*\s*:\s*\(\([0-9]*\)\(\.[0-9]*\)\?\)/\1/p" $3)
58 do_math "$1" "$TIMES"
59 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698