Here are the basic steps necessary to prepare your GLperf data for graphing. Be sure to verify that your data is present in the Benchmark Visualizer for GLperf (the Java front-end). If you experience problems, have questions or requests please contact Bob Penrod at Silicon Graphics (bpenrod@sgi.com). If you're reporting a (potential) bug, please include as much information as possible (sending error output from your browser's Java console is best).
The Basic Steps | |
1. Download and install the glperf_viz.tar.gz (or glperf_viz.zip) archive | [See Download and Installation] |
2. Run glperf2graph.pl for all the data you want to graph. | [See Data Directory Structure] |
3. Create your configuration files. | [See Configuration Files] |
4. Configure your web pages. | [See Web Site Structure] |
5. View your data! | [See The User Interface] |
Download and Installation
You may obtain a copy of the glperf_viz.tar.gz (or glperf_viz.zip) archive from http://reality.sgi.com/bpenrod/portfolio/GLperf/index.html. This and further documentation as well as updates are also available there. This package needs to be installed in a directory accessible from your Web server. You may need to seek assistance from your webmaster if you don't know how to get a path from your server. The Perl scripts contained in this distribution require Perl5. You may need to modify the Perl executable string at the beginning of the script if the path to your Perl5 executable differs. Don't forget to also modify sqlproxy.cgi if necessary.
Data Directory Structure
The glperf2graph.pl script assumes a directory structure that is hierarchical by vendor then by configuration (see the figure below). Each configuration directory is required to have two things present before the script is run: 1. a directory called "output" containing the raw GLperf output data 2. a file called "config.data" that contains a key/value pair list of general information about the configuration.
Usage for glperf2graph.pl has the following form:
Each vendor configuration's "config.data" is currently only used in the creation of the "summary.html" file. The structure of "config.data" is shown below:
"summary.html" is a simple tabular HTML listing of all the configuration's results. The keys and values from "config.data" are listed at the top of the document.
Configuration Files
In the main data directory (the root of the graphs above), there are three configuration files used by the Java libraries that determine the structure of the tests and configurations made available in the interface. They are "configurations.index", "GLperf_Basic.index", and "OPClist.index". Both "GLperf_Basic.index", and "OPClist.index" are provided for you in the Benchmark Visualizer for GLperf package. Their structure is identical to "configurations.index" which you must provide. These files use the standard HTML tags <UL> (unordered list) and <A HREF...> (hypertext reference) to describe an arbitrary hierarchical list (see the figure below). The only constraints placed on the structure of this file are that it must conform to valid HTML syntax for <UL> and <A HREF...> and that the HREFs must end in a forward slash ("/") (to indicate to the Browser widget that the reference is to a directory of graphable data).
HINT: To include an index of links to the generated summary files, you can cut and paste "configurations.index" into main.html (since it's valid HTML), make some slight modifications, and you have a nice hierarchical index to the summaries.
Structure
Example
./glperf2graph.pl [-suffix <suffix>] <vendor directory> <config directory>
square brackets indicate optional arguments. Consider the example in the figure above. In order to parse the data for the O2 180 MHz R5000 SC, you would issue the following command:
./glperf2graph.pl SGI O2_R5k.SC
if you had named the raw output files with the suffix ".results.summary" (i.e. LineFill.rgb.results.summary), you would issue
./glperf2graph.pl -suffix .results.summary SGI O2_R5k.SC
glperf2graph.pl assumes the suffix to be ".sum" if omitted. glperf2graph.pl will simply take "*<suffix>" as your raw data files. Therefore, you may use only one monolithic file or as many as you like.
(actually, all lines of this form in "config.data" will be used as configuration detail in "summary.html")
Vendor System Model : <anything followed by a newline>
Graphics Accelerator : <anything followed by a newline>
CPU : <anything followed by a newline>
Memory : <anything followed by a newline>
Price : <anything followed by a newline>
Sample configurations.index File
<UL>
<LI> Silicon Graphics, Inc.
<UL>
<LI> <A HREF = "SGI/O2_R5k.SC/graph/">SGI O2 180 MHz R5000 SC</A>
<LI> <A HREF = "SGI/Octane_SI.175/graph/">SGI OCTANE SI 1 x 175 MHz R10000</A>
</UL>
<LI> Sun Microsystems
<UL>
<LI> <A HREF = "Sun/ultra1/graph/">Sun Ultra1 Creator3D</A>
</UL>
</UL>
Generated Tree