BENCHMARK(1)

NAME
benchmark - runs the BRL-CAD benchmark

SYNOPSIS
benchmark

DESCRIPTION

The benchmark suite will test the performance of a given system by iteratively rendering several well-known datasets into 512x512 images where performance metrics are documented and fairly well understood. The local machine's performance is compared to the base system (called VGR) and a numeric "VGR" mulitplier of performance is computed. This number is a simplified metric from which one may qualitatively compare cpu and cache performance, versions of BRL-CAD, and different compiler characteristics.

There are several environment variables that will modify how the BRL-CAD benchmark behaves so that it may be run in a stand-alone environment:

RT - the rt binary (e.g. ../src/rt/rt or /usr/brlcad/bin/rt)
DB - the directory containing the reference geometry (e.g. ../db)
PIX - the directory containing the reference images (e.g. ../pix)
LOG - the directory containing the reference logs (e.g. ../pix)
CMP - the name of a pixcmp tool (e.g. ./pixcmp)
ELP - the name of an elapsed time tool (e.g. ../sh/elapsed.sh)
TIMEFRAME - the minimum number of seconds each trace needs to take
MAXTIME - the maximum number of seconds to spend on any test
DEVIATION - the minimum sufficient % deviation from the average
AVERAGE - how many frames to average together
DEBUG - turn on extra debug output for testing/development

The TIMEFRAME, MAXTIME, DEVIATION, and AVERAGE options control how the benchmark will proceed including how long it should take. Each individual benchmark run will consume at least a minimum TIMEFRAME of wallclock time so that the results can stabilize. After consuming at least the minimum TIMEFRAME, additional frames may be computed until the standard deviation from the last AVERAGE count of frames is below the specified DEVIATION. When a test is run and it completes in less than TIMEFRAME, the raytrace is restarted using double the number of rays from the previous run. If the machine is fast enough, the benchmark may accelerate the number or rays being fired. These additional rays are hypersampled but without any jitter, so it's effectively performing a multiplier amount of work over the initial frame.

Plese send your BRL-CAD Benchmark results to the developers along with detailed system information to <devs@brlcad.org>. Include at least:

   0) Operating system type and version (e.g. uname -a)
   1) Compiler name and version (e.g. gcc --version)
   2) CPU configuration (e.g. cat /proc/cpuinfo or hinv or sysctl -a)
   3) Cache (data and/or instruction) details for L1/L2/L3 and system
      (e.g. cat /proc/cpuinfo or hinv or sysctl -a)
   4) Output from this script (e.g. ./run.sh > run.sh.log 2>&1)
   5) All generated log files (e.g. *.log* after running run.sh)
   6) Anything else you think might be relevant to performance

SEE ALSO
brlcad(1), rt(1), pix-fb(1), librt(3), pix(5).

AUTHOR
Michael John Muuss
Susan Muuss
Christopher Sean Morrison

SOURCE
BRL-CAD Open Source

COPYRIGHT
This software is Copyright (c) 2006 United States Government as represented by the U.S. Army Research Laboratory. All rights reserved.

BUGS
None known.

BUG REPORTS
Reports of bugs or problems should be submitted via electronic mail to <devs@brlcad.org>.