|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T x
Length: 2720 (0xaa0) Types: TextFile Names: »x11pcomp.cpp«
└─⟦276d19d6e⟧ Bits:30007243 EUUGD5_I: X11R5 └─⟦af7d3f39a⟧ »./mit-2/mit-2.00« └─⟦0abaffd9e⟧ └─⟦this⟧ »mit/demos/x11perf/x11pcomp.cpp«
XCOMM! /bin/sh XCOMM Collects multiple outputs of x11perf. Just feed it a list of files, each XCOMM containing the output from an x11perf run, and this shell will extract the XCOMM object/second information and show it in tabular form. An 80-column line XCOMM is big enough to compare 4 different servers. XCOMM XCOMM This script normally uses the results from $1 to extract the test label XCOMM descriptions, so you can run x11perf on a subset of the test and then XCOMM compare the results. But note that x11perffill requires the labels file XCOMM to be a superset of the x11perf results file. If you run into an ugly XCOMM situation in which none of the servers completes the desired tests XCOMM (quite possible on non-DEC servers :), you can use -l <filename> as $1 and XCOMM $2 to force x11perfcomp to use the labels stored in file $2. (You can run XCOMM x11perf with the -labels option to generate such a file.) XCOMM XCOMM Mark Moraes, University of Toronto <moraes@csri.toronto.edu> XCOMM Joel McCormack, DEC Western Research Lab <joel@decwrl.dec.com> XCOMM XCOMM $XConsortium: x11pcomp.cpp,v 1.6 91/08/22 11:43:57 rws Exp $ PATH=LIBPATH:.:$PATH export PATH set -e tmp=/tmp/rates.$$ trap "rm -rf $tmp" 0 1 2 15 mkdir $tmp $tmp/rates ratio= allfiles= XCOMM Include relative rates in output? Report only relative rates? case $1 in -r|-a) ratio=1 shift; ;; -ro) ratio=2 shift; ;; esac XCOMM Get either the provided label file, or construct one from all the XCOMM files given. case $1 in -l) cp $2 $tmp/labels shift; shift ;; *) for file in "$@"; do awk '$2 == "reps" || $2 == "trep" { print $0; next; }' $file | sed 's/^.*: //' | sed 's/ /_/g' | awk 'NR > 1 { printf ("%s %s\n", prev, $0); } { prev = $0; }' done | tsort 2>/dev/null | sed 's/_/ /g' > $tmp/labels ;; esac XCOMM Go through all files, and create a corresponding rate file for each n=1 for i do XCOMM Get lines with average numbers, fill in any tests that may be missing XCOMM then extract the rate field base=`basename $i` (echo " $n " echo '--------' awk '$2 == "reps" || $2 == "trep" { line = $0; next; } NF == 0 && line != "" { print line; line=""; next; } ' $i > $tmp/$n.avg fillblnk $tmp/$n.avg $tmp/labels | sed 's/( *\([0-9]*\)/(\1/' | awk '$2 == "reps" || $2 == "trep" { n = substr($6,2,length($6)-7); printf "%8s\n", n; }' ) > $tmp/rates/$n echo "$n: $i" allfiles="$allfiles$tmp/rates/$n " n=`expr $n + 1` done case x$ratio in x) ratio=/bin/cat ;; x1) ratio="perfboth $n" ;; *) ratio="perfratio $n" ;; esac echo '' (echo Operation; echo '---------'; cat $tmp/labels) | paste $allfiles - | sed 's/ / /g' | $ratio rm -rf $tmp