mirror of
git://projects.qi-hardware.com/wernermisc.git
synced 2024-12-18 17:19:47 +02:00
m1/perf/tabulate: added HTML mode with highlighting (-h)
This commit is contained in:
parent
c5df76a7b9
commit
69cfc407d5
101
m1/perf/tabulate
101
m1/perf/tabulate
@ -45,6 +45,107 @@ eq()
|
||||
}
|
||||
|
||||
|
||||
trim()
|
||||
{
|
||||
sed 's/[^0-9].*//'
|
||||
}
|
||||
|
||||
|
||||
cfield()
|
||||
{
|
||||
echo "<TD bgcolor=\"$1\">$2"
|
||||
}
|
||||
|
||||
|
||||
rank()
|
||||
{
|
||||
op=$1
|
||||
txt=`$2 $3 $6`
|
||||
a=`echo "$txt" | trim`
|
||||
b=`$2 $4 $6 | trim`
|
||||
c=`$2 $5 $6 | trim`
|
||||
|
||||
if [ $a $op $b -a $a $op $c ]; then
|
||||
col=$green
|
||||
elif [ $b $op $a -a $c $op $a ]; then
|
||||
col=$red
|
||||
else
|
||||
col=white
|
||||
fi
|
||||
echo "<TD bgcolor=\"$col\" align="right">$txt$7"
|
||||
}
|
||||
|
||||
|
||||
red="#ffb0b0"
|
||||
green="#a0ffa0"
|
||||
|
||||
html=false
|
||||
if [ $1 = -h ]; then
|
||||
html=true
|
||||
shift
|
||||
fi
|
||||
|
||||
if $html; then
|
||||
cat <<EOF
|
||||
<HTML>
|
||||
<TITLE>Scheduler comparison</TITLE>
|
||||
<BODY>
|
||||
<TABLE bgcolor="#f0f0f0">
|
||||
<TR>
|
||||
<TH colspan="5" align="left">Original</TH>
|
||||
<TH colspan="5" align="left">New (no optimizer)</TH>
|
||||
<TH colspan="5" align="left">New (LCPF)</TH>
|
||||
<TH align="left">Equiv</TH>
|
||||
<TH align="left">Name</TH>
|
||||
<TR>
|
||||
<TH>Time</TH><TH>Size</TH><TH>Eff</TH><TH>Regs</TH>
|
||||
<TH> </TH>
|
||||
<TH>Time</TH><TH>Size</TH><TH>Eff</TH><TH>Regs</TH>
|
||||
<TH> </TH>
|
||||
<TH>Time</TH><TH>Size</TH><TH>Eff</TH><TH>Regs</TH>
|
||||
<TH> </TH>
|
||||
EOF
|
||||
for n in `ls -1 data/ref/out`; do
|
||||
ref=`sum ref $n`
|
||||
new=`sum new $n`
|
||||
opt=`sum opt $n`
|
||||
same=`eq $ref $new`/`eq $ref $opt`/`eq $new $opt`
|
||||
|
||||
echo "<TR>"
|
||||
rank -lt time ref new opt $n
|
||||
rank -lt size ref new opt $n
|
||||
rank -gt eff ref new opt $n %
|
||||
rank -lt regs ref new opt $n
|
||||
|
||||
echo "<TD>"
|
||||
rank -lt time new ref opt $n
|
||||
rank -lt size new ref opt $n
|
||||
rank -gt eff new ref opt $n %
|
||||
rank -lt regs new ref opt $n
|
||||
|
||||
echo "<TD>"
|
||||
rank -lt time opt ref new $n
|
||||
rank -lt size opt ref new $n
|
||||
rank -gt eff opt ref new $n %
|
||||
rank -lt regs opt ref new $n
|
||||
|
||||
echo "<TD>"
|
||||
if [ $same = Y/Y/Y ]; then
|
||||
cfield $green $same
|
||||
else
|
||||
cfield $red $same
|
||||
fi
|
||||
cfield white "$n"
|
||||
done
|
||||
cat <<EOF
|
||||
</TABLE>
|
||||
</BODY>
|
||||
</HTML>
|
||||
EOF
|
||||
exit
|
||||
fi
|
||||
|
||||
|
||||
echo "Original New sched (no opt) New sched (LCPF) Equiv Name"
|
||||
echo "Time Size Eff Regs Time Size Eff Regs Time Size Eff Regs"
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user