Cachebench Home Page
Description:
- This is a program to empirically determine some parameters about
an architectures memory subsystem.
- CacheBench has now been integrated into LLCbench (Low Level
Characterization Benchmarks)
- Remember, your machine should be dead quiet to produce accurate results.
Features:
- Flexible data types, defaults to double instead of int.
- 8 different tests, read, write and read/modify/write.
- Automated build test, execution and result processing.
- Generates postscript graphs using GNUplot.
- Measurement of access time in nanoseconds and bandwidth in MB/sec.
- Safe from aggressive optimizing compilers.
- Tunable run time parameters to reduce test domain.
Usage:
Usage: cachebench -rwbtsp [-x #] [-m #] [-d #] [-e #]
-r Read benchmark
-w Write benchmark
-b Read/Modify/Write benchmark
-t Use hand tuned versions of the above
-s memset() benchmark
-p memcpy() benchmark
-x Number of measurements between powers of 2.
-m Specify the log2(available physical memory)
-d Number of seconds per iteration
-e Repeat count per cache size
Datatype used is double, 8 bytes.
Defaults if tty: -rwbsp -x1 -m24 -d5 -e2
Defaults if file: -b -x1 -m24 -d5 -e1
The output looks like this:
Read Cache Test
C Size Nanosec MB/sec % Chnge
------- ------- ------- -------
4096 7.396 515.753 1.000
6144 7.594 502.350 1.027
8192 7.731 493.442 1.018
12288 17.578 217.015 2.274
Bug Reports
Bugs should be submitted to the LLCbench Mailing List.
Author
LLCbench was written by Philip J. Mucci of the Innovative Computing Laboratory.
Copyright
This software is COMPLETELY OPEN SOURCE. If you incorporate any portion of this software, I would appreciate an acknowledgement in the appropriate places. Should you find LLCbench useful, please considering making a contribution in the form of hardware, software or plain old cash.