#!/bin/sh bzcat *.bz2 | awk ' { if ($4 == "claus++" && $7 == "GMP" && $10 == "sharedsecret" && $12 == "cycles") gmp[$1" "$2] = $14 if ($4 == "claus" && $10 == "sharedsecret" && $12 == "cycles") openssl[$1" "$2] = $14 } END { for (machine in gmp) print machine,gmp[machine],openssl[machine],gmp[machine] * openssl[machine] } ' | sort -nr +2 > claus-machines.tmp ( echo "set term png font 'freefont/FreeSansBold' size 1024,768" echo set pointsize 1.5 echo 'set xtics (\' awk ' BEGIN { cpu["bohr"] = "SPARC IV" cpu["cruncher"] = "P1 52c" cpu["doublex"] = "A64 fb1" cpu["fireball"] = "P4 f12" cpu["geespaz"] = "PPC G5" cpu["gggg"] = "PPC G4" cpu["mace"] = "A64 fb2" cpu["rzitsc"] = "P4 f29" cpu["td161"] = "Alpha EV6" cpu["thoth"] = "Ath 622" } { if (NR > 1) print ",\\"; print "\"" $2 "\\n" cpu[$2] "\\n" $1 "\" "NR"\\" } ' < claus-machines.tmp echo ')' echo set bmargin 4 echo set rmargin 5 echo set logscale y echo set ytics 2 echo set mytics 0 echo set grid xtics echo set grid ytics echo 'set title "Cycles for 1024-bit modular exponentiation\nusing CLAUS (ColLaboratively Agreed User Secret)"' echo 'set format "%.0f"' echo "plot \\" echo "'-' title 'OpenSSL (claus sharedsecret)' with linespoints pointtype 6 linewidth 3, \\" echo "'-' title 'GMP (claus++ sharedsecret)' with linespoints pointtype 6 linewidth 3" awk '{ print NR,$4 }' < claus-machines.tmp echo 'e' awk '{ print NR,$3 }' < claus-machines.tmp echo 'e' ) > claus-machines.gnuplot gnuplot < claus-machines.gnuplot > 20060928-claus-machines.png