AMD's FX-8150 Bulldozer Benefits From New Compilers, Tuning
With GCC 4.7.0 producing the most interesting results when building the benchmarks under the various configurations, additional benchmarks were carried out with the various architecture flags that can work for the AMD FX-8150 Bulldozer. Rather than just going from K8 to bdver1, being used for these extra tests were also k8-sse3, btver1, and barcelona. From the GCC documentation below is a description of the CPU instructions exposed by each of the -march= optimize options.
K8: Processors based on the AMD K8 core with x86-64 instruction set support, including the AMD Opteron, Athlon 64, and Athlon 64 FX processors. (This supersets MMX, SSE, SSE2, 3DNow!, enhanced 3DNow! and 64-bit instruction set extensions.)
K8-SSE3: Improved versions of AMD K8 cores with SSE3 instruction set support.
BACELONA: CPUs based on AMD Family 10h cores with x86-64 instruction set support. (This supersets MMX, SSE, SSE2, SSE3, SSE4A, 3DNow!, enhanced 3DNow!, ABM and 64-bit instruction set extensions.)
BTVER1: CPUs based on AMD Family 14h cores with x86-64 instruction set support. (This supersets MMX, SSE, SSE2, SSE3, SSSE3, SSE4A, CX16, ABM and 64-bit instruction set extensions.)
BDVER1: CPUs based on AMD Family 15h cores with x86-64 instruction set support. (This supersets FMA4, AVX, XOP, LWP, AES, PCL_MUL, CX16, MMX, SSE, SSE2, SSE3, SSE4A, SSSE3, SSE4.1, SSE4.2, ABM and 64-bit instruction set extensions.)