--- /dev/null
+-----------------------------------------------------------------------------
+Notes about performance benchmarks
+-----------------------------------------------------------------------------
+For each benchmark, here is a brief description and notes about strengths
+and weaknesses of the benchmark.
+
+bz2:
+- Description: Burrows-Wheeler compression and decompression.
+- Strengths: A real, widely used program, very similar to the 256.bzip2
+ SPEC2000 benchmark. Not dominated by any code, the hottest
+ 55 blocks account for only 90% of execution. Has lots of
+ short blocks and stresses the memory system hard.
+- Weaknesses: None, really, it's a good benchmark.
+
+fbench:
+- Description: Does some ray-tracing.
+- Strengths: Moderately realistic program.
+- Weaknesses: Dominated by sin and cos, which are not widely used, and are
+ hardware-supported on x86 but not on other platforms such as
+ PPC.
+
+ffbench:
+- Description: Does a Fast Fourier Transform (FFT).
+- Strengths: Tests common FP ops (mostly adding and multiplying array
+ elements), FFT is a very important operation.
+- Weaknesses: Dominated by the inner loop, which is quite long and flatters
+ Valgrind due to the small dispatcher overhead.
+
+sarp:
+- Description: Does a lot of stack allocation and deallocation.
+- Strengths: Tests for a specific performance bug that existed in 3.1.0 and
+ all earlier versions.
+- Weaknesses: Highly artificial.
+