Skip to content

AddressSanitizerRunningSpecBenchmarks

Alexander Potapenko edited this page Nov 30, 2015 · 4 revisions

Getting SPEC 2006

SPEC 2006 may be obtained from http://www.spec.org/cpu2006 (it is not free, but most compiler experts already have access to it). Make sure to use the latest version 1.2

You will also need to install SPEC on your system. The following worked for me on Ubuntu 10.04:

cd your-spec-dir
./install.sh

Patching SPEC 2006

There are several bugs in SPEC 2006 detectable by AddressSanitizer: AddressSanitizerFoundBugs#Spec_CPU_2006 You will need to patch the spec code in order to run the benchmarks w/o errors: https://github.com/google/sanitizers/blob/master/address-sanitizer/spec/spec2006-asan.patch

Running SPEC 2006

Take a look at https://github.com/google/sanitizers/blob/master/address-sanitizer/spec/run_spec_clang_asan.sh

cd your-spec-dir
# First parameter: any uniq id
# Second parameter: test|train|ref (sizeof of input data)
# Following parameters: list of benchmarks (use all_c for all C tests, all_cpp for all C++ tests)
./run_spec_clang_asan.sh z test bzip2
Clone this wiki locally