spot_diff [-h -V] [-a -c -f -q -s] [-d directory name ] [-e experiment name ] [-o file name ]
The spot_diff command reads the output from user-selected spot experiments and creates a HTML document that lists and compares important metrics for each experiment in dynamically sortable tables. Differences exceeding set thresholds are highlighted to bring attention to possible performance-related problems. The following sections of a spot_diff report may appear depending on a system's installed software, a microprocessor's debug features, and privileges of the user that ran the spot experiments:
This table includes elapsed/user/system time, instruction count, IPC, bandwidth data (if available), memory use and machine name.
Generic stall information from ripc typically includes the derived metrics "D-Cache", "E-Cache", "FPU use", "IU use", "Instruction Issue", "RAW Miss" and "Store Queue".
If instruction frequency data was gathered by spot, a table of top opcode counts is printed.
This table lists compilation flags used with each compiler (e.g. cc, CC, f90). Flags that were not used in every invocation of a particular compiler appear highlighted in bold red text.
Top OS traps that show large variance between experiments are listed.
The functions with highest exclusive user time in each selected experiment appear in this table in alphanumeric order.
If invoked with no arguments, all valid spot experiments in the current directory will be compared and output will be written to the file ./spot_diff.html.
The following options are supported:
The last column in the Key Metrics and Function Profiles tables will be an average of the values in each row.
Generate spot_diff.csv spreadsheet in current directory in addition to the HTML output. The file name may be changed with the -o flag.
Every valid spot experiment in the specified directory will be compared. Multiple -d flags are allowed. Default is current directory.
Specifies an experiment's directory name to include in the spot_diff comparison. Multiple -e flags are allowed and can be used with or without -d.
Fast run (flags and traps reports are not generated).
Print help information.
Default is spot_diff.[html|csv] in current directory. The proper extension (.html or .csv) will be added automatically. Absolute paths may be given to change the location of the output.
Quiet run (STDOUT messages suppressed).
Snip (as opposed to wrap) long names in the HTML report to fit in narrow columns Ex.: abcdefghijk becomes abc..hijk as opposed to the default abcdefghi<break>jk
Print version information.
Consider the following directory structure:
/tmp/d1/exp1 /tmp/d1/exp2 /tmp/d2/exp1
The following three invocations compare all experiments in /tmp/d1:
1) cd /tmp/d1; spot_diff 2) spot_diff -d /tmp/d1 3) spot_diff -e /tmp/d1/exp1 -e /tmp/d1/exp2
The following two invocations compare all three experiments in /tmp:
1) spot_diff -d /tmp/d1 -e /tmp/d2/exp1 2) spot_diff -e /tmp/d1/exp1 -e /tmp/d1/exp2 -e /tmp/d2/exp1
The only invocation that compares just the experiments /tmp/d1/exp1 and /tmp/d2/exp1 is:
spot_diff -e /tmp/d1/exp1 -e /tmp/d2/exp1
spot (1) , er_html (1) , ripc (1)
Spot User's Guide manual