45 lines
927 B
Bash
Executable File
45 lines
927 B
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
|
|
if [ "$1" = -t ]; then
|
|
FORMAT=-t
|
|
shift
|
|
else
|
|
FORMAT=-B
|
|
fi
|
|
|
|
if [ $# -ne 3 -a $# -ne 1 ]; then
|
|
echo "usage: $0 [ -t ] DATABASE [ VARIANT BENCHMARK ]" >&2
|
|
echo " -t Display output in table format (tab-separated CSV otherwise)" >&2
|
|
exit 1
|
|
fi
|
|
|
|
DATABASE=$1
|
|
VARIANT=$2
|
|
BENCHMARK=$3
|
|
MYSQL="mysql $FORMAT $DATABASE"
|
|
|
|
if [ -z "$VARIANT" ]; then
|
|
$MYSQL << EOT
|
|
SET sql_mode = 'NO_UNSIGNED_SUBTRACTION';
|
|
SELECT v.benchmark, v.variant,
|
|
MAX(t.time2)-MIN(t.time1)+1 AS duration,
|
|
MAX(t.instr2)-MIN(t.instr1)+1 AS dyn_instr
|
|
FROM trace t
|
|
JOIN variant v ON t.variant_id = v.id
|
|
GROUP BY v.id
|
|
ORDER BY v.benchmark, v.variant;
|
|
EOT
|
|
else
|
|
$MYSQL << EOT
|
|
SET sql_mode = 'NO_UNSIGNED_SUBTRACTION';
|
|
SELECT
|
|
MAX(t.time2)-MIN(t.time1)+1 AS duration,
|
|
MAX(t.instr2)-MIN(t.instr1)+1 AS dyn_instr
|
|
FROM trace t
|
|
JOIN variant v ON t.variant_id = v.id
|
|
WHERE v.variant = "$VARIANT"
|
|
AND v.benchmark = "$BENCHMARK"
|
|
EOT
|
|
fi
|