31 |
31 |
32 |
32 |
33 ## arguments |
33 ## arguments |
34 |
34 |
35 [ "$1" = "-?" ] && usage |
35 [ "$1" = "-?" ] && usage |
36 [ "$#" -lt "3" ] && usage |
36 [ "$#" -lt "4" ] && usage |
37 |
37 |
|
38 DIR="$1"; shift |
38 PLATFORM="$1"; shift |
39 PLATFORM="$1"; shift |
39 TIMESPAN="$1"; shift |
40 TIMESPAN="$1"; shift |
40 SESSIONS="$@" |
41 SESSIONS="$@" |
41 |
42 |
42 |
43 |
43 ## main |
44 ## main |
44 |
45 |
45 ALL_DATA="/tmp/isatest-all$$.dat" |
46 ALL_DATA="/tmp/isatest-all$$.dat" |
46 SESSION_DATA="/tmp/isatest$$.dat" |
47 SESSION_DATA="/tmp/isatest$$.dat" |
|
48 mkdir -p "$DIR" || fail "Bad directory: $DIR" |
47 |
49 |
48 zgrep "^Finished .*elapsed" \ |
50 zgrep "^Finished .*elapsed" \ |
49 $(find -name "isatest-makeall-${PLATFORM}*" -ctime "-${TIMESPAN}") | \ |
51 $(find "$ISATEST_LOG" -name "isatest-makeall-${PLATFORM}*" -ctime "-${TIMESPAN}") | \ |
50 perl -e ' |
52 perl -e ' |
51 while (<>) { |
53 while (<>) { |
52 if (m/isatest-makeall-\w+-\w+-(\d+)-(\d+)-(\d+)-.*:Finished (\S+) \(.*, (\d+):(\d+):(\d+) cpu time\)/) { |
54 if (m/isatest-makeall-\w+-\w+-(\d+)-(\d+)-(\d+)-.*:Finished (\S+) \(.*, (\d+):(\d+):(\d+) cpu time\)/) { |
53 my $year = $1; |
55 my $year = $1; |
54 my $month = $2; |
56 my $month = $2; |
55 my $day = $3; |
57 my $day = $3; |
56 my $name = $4; |
58 my $name = $4; |
57 my $h = $5; |
59 my $time = ($5 * 3600 + $6 * 60 + $7) / 60; |
58 my $m = $6; |
|
59 my $s = $7; |
|
60 |
60 |
61 my $date = $year + ($month - 1) / 31 + ($day - 1) / 365; |
61 printf "$name $year-$month-$day %.2f\n", $time; |
62 my $time = ($h * 3600 + $m * 60 + $s) / 60; |
|
63 |
|
64 printf "%s %.2f %.2f\n", $name, $date, $time; |
|
65 } |
62 } |
66 }' > "$ALL_DATA" |
63 }' > "$ALL_DATA" |
67 |
64 |
68 for SESSION in $SESSIONS |
65 for SESSION in $SESSIONS |
69 do |
66 do |
70 fgrep "$SESSION " "$ALL_DATA" > "$SESSION_DATA" |
67 fgrep "$SESSION " "$ALL_DATA" > "$SESSION_DATA" |
71 gnuplot <<EOF |
68 gnuplot <<EOF |
72 set terminal png |
69 set terminal png |
73 set output "${SESSION}.png" |
70 set output "$DIR/${SESSION}.png" |
74 plot [] [0:50] "$SESSION_DATA" using 2:3 title "$SESSION" smooth sbezier, "$SESSION_DATA" using 2:3 title "$SESSION" smooth csplines |
71 set xdata time |
|
72 set timefmt "%Y-%m-%d" |
|
73 set format x "%d-%b" |
|
74 set xlabel "$SESSION" |
|
75 plot [] [0:] "$SESSION_DATA" using 2:3 title "" smooth sbezier, "$SESSION_DATA" using 2:3 title "" smooth csplines |
75 EOF |
76 EOF |
76 done |
77 done |
77 |
78 |
78 rm -f "$ALL_DATA" "$SESSION_DATA" |
79 rm -f "$ALL_DATA" "$SESSION_DATA" |