GCC 4.9 Compiler Optimization Tuning AMD Kaveri AMD Steamroller CPU Cores on AMD A10-7850K Kaveri APU compiler optimization tuning with various march= values. Benchmarks by Michael Larabel for a future article on Phoronix.com.
HTML result view exported from: https://openbenchmarking.org/result/1401282-PL-GCC49COMP74&sor&grr .
GCC 4.9 Compiler Optimization Tuning AMD Kaveri Processor Motherboard Chipset Memory Disk Graphics Audio Monitor Network OS Kernel Desktop Display Driver Compiler File-System Screen Resolution k8 barcelona bdver1 bdver2 bdver3 AMD A10-7850K APU with Radeon R7 @ 3.70GHz (4 Cores) Gigabyte F2A88XM-D3H AMD Device 1422 7168MB 120GB KINGSTON SV300S3 AMD Kaveri 1024MB ATI R6xx HDMI TSB-TV Realtek RTL8111/8168/8411 Ubuntu 14.04 3.13.0-5-generic (x86_64) Unity 7.1.2 radeon 7.2.99 GCC 4.9.0 20140126 + Clang 3.4 + LLVM 3.4 ext4 1920x1080 OpenBenchmarking.org Kernel Details - radeon.dpm=1 Compiler Details - --disable-multilib --enable-checking=release --enable-languages=c,c++,fortran Processor Details - Scaling Governor: acpi-cpufreq ondemand
GCC 4.9 Compiler Optimization Tuning AMD Kaveri encode-flac: WAV To FLAC c-ray: Total Time build-php: Time To Compile build-apache: Time To Compile himeno: Poisson Pressure Solver graphics-magick: Local Adaptive Thresholding graphics-magick: HWB Color Space graphics-magick: Resizing graphics-magick: Sharpen graphics-magick: Blur x264: H.264 Video Encoding tscp: AI Chess Performance scimark2: Jacobi Successive Over-Relaxation scimark2: Dense LU Matrix Factorization scimark2: Sparse Matrix Multiply scimark2: Fast Fourier Transform scimark2: Monte Carlo scimark2: Composite k8 barcelona bdver1 bdver2 bdver3 6.62 87.90 56.54 58.55 867.36 77 126 106 71 97 83.43 760113 689.02 1156.29 865.92 73.59 397.86 636.54 6.90 53.33 56.60 58.68 898.33 76 138 120 72 93 83.66 742690 688.88 1155.51 849.34 68.99 384.47 629.44 5.29 40.67 58.45 59.07 894.27 81 139 133 87 108 84.14 738311 687.76 1162.41 860.41 68.50 423.73 640.56 5.47 40.55 58.54 58.91 905.30 81 139 133 81 110 83.85 738707 687.47 1164.64 877.91 71.15 423.28 644.89 5.52 40.54 58.48 58.83 902.98 80 139 133 81 106 83.83 739101 688.08 1165.94 866.81 70.77 413.64 641.05 OpenBenchmarking.org
FLAC Audio Encoding WAV To FLAC OpenBenchmarking.org Seconds, Fewer Is Better FLAC Audio Encoding 1.3.0 WAV To FLAC bdver1 bdver2 bdver3 k8 barcelona 2 4 6 8 10 SE +/- 0.02, N = 5 SE +/- 0.01, N = 5 SE +/- 0.02, N = 5 SE +/- 0.02, N = 5 SE +/- 0.01, N = 5 5.29 5.47 5.52 6.62 6.90 -march=bdver1 -march=bdver2 -march=bdver3 -march=k8 -march=barcelona 1. (CXX) g++ options: -O3 -fvisibility=hidden -logg -lm
C-Ray Total Time OpenBenchmarking.org Seconds, Fewer Is Better C-Ray 1.1 Total Time bdver3 bdver2 bdver1 barcelona k8 20 40 60 80 100 SE +/- 0.07, N = 3 SE +/- 0.03, N = 3 SE +/- 0.03, N = 3 SE +/- 0.09, N = 3 SE +/- 0.02, N = 3 40.54 40.55 40.67 53.33 87.90 -march=bdver3 -march=bdver2 -march=bdver1 -march=barcelona -march=k8 1. (CC) gcc options: -lm -lpthread -O3
Timed PHP Compilation Time To Compile OpenBenchmarking.org Seconds, Fewer Is Better Timed PHP Compilation 5.2.9 Time To Compile k8 barcelona bdver1 bdver3 bdver2 13 26 39 52 65 SE +/- 0.06, N = 3 SE +/- 0.04, N = 3 SE +/- 0.10, N = 3 SE +/- 0.01, N = 3 SE +/- 0.07, N = 3 56.54 56.60 58.45 58.48 58.54 -march=k8 -march=barcelona -march=bdver1 -march=bdver3 -march=bdver2 1. (CC) gcc options: -O3 -pedantic -ldl -lz -lm
Timed Apache Compilation Time To Compile OpenBenchmarking.org Seconds, Fewer Is Better Timed Apache Compilation 2.4.7 Time To Compile k8 barcelona bdver3 bdver2 bdver1 13 26 39 52 65 SE +/- 0.19, N = 3 SE +/- 0.15, N = 3 SE +/- 0.12, N = 3 SE +/- 0.12, N = 3 SE +/- 0.21, N = 3 58.55 58.68 58.83 58.91 59.07
Himeno Benchmark Poisson Pressure Solver OpenBenchmarking.org MFLOPS, More Is Better Himeno Benchmark 3.0 Poisson Pressure Solver bdver2 bdver3 barcelona bdver1 k8 200 400 600 800 1000 SE +/- 1.51, N = 3 SE +/- 3.10, N = 3 SE +/- 0.19, N = 3 SE +/- 9.68, N = 3 SE +/- 6.79, N = 3 905.30 902.98 898.33 894.27 867.36 -march=bdver2 -march=bdver3 -march=barcelona -march=bdver1 -march=k8 1. (CC) gcc options: -O3
GraphicsMagick Operation: Local Adaptive Thresholding OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.19 Operation: Local Adaptive Thresholding bdver2 bdver1 bdver3 k8 barcelona 20 40 60 80 100 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 SE +/- 0.33, N = 3 81 81 80 77 76 -march=bdver2 -march=bdver1 -march=bdver3 -march=k8 -march=barcelona 1. (CC) gcc options: -std=gnu99 -fopenmp -O3 -pthread -ljbig -lwebp -ljpeg -lXext -lSM -lICE -lX11 -llzma -lxml2 -lz -lm -lpthread
GraphicsMagick Operation: HWB Color Space OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.19 Operation: HWB Color Space bdver3 bdver2 bdver1 barcelona k8 30 60 90 120 150 SE +/- 0.00, N = 3 SE +/- 0.33, N = 3 SE +/- 0.00, N = 3 SE +/- 0.33, N = 3 SE +/- 0.33, N = 3 139 139 139 138 126 -march=bdver3 -march=bdver2 -march=bdver1 -march=barcelona -march=k8 1. (CC) gcc options: -std=gnu99 -fopenmp -O3 -pthread -ljbig -lwebp -ljpeg -lXext -lSM -lICE -lX11 -llzma -lxml2 -lz -lm -lpthread
GraphicsMagick Operation: Resizing OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.19 Operation: Resizing bdver3 bdver2 bdver1 barcelona k8 30 60 90 120 150 SE +/- 0.33, N = 3 SE +/- 0.00, N = 3 SE +/- 0.33, N = 3 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 133 133 133 120 106 -march=bdver3 -march=bdver2 -march=bdver1 -march=barcelona -march=k8 1. (CC) gcc options: -std=gnu99 -fopenmp -O3 -pthread -ljbig -lwebp -ljpeg -lXext -lSM -lICE -lX11 -llzma -lxml2 -lz -lm -lpthread
GraphicsMagick Operation: Sharpen OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.19 Operation: Sharpen bdver1 bdver3 bdver2 barcelona k8 20 40 60 80 100 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 SE +/- 0.33, N = 3 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 87 81 81 72 71 -march=bdver1 -march=bdver3 -march=bdver2 -march=barcelona -march=k8 1. (CC) gcc options: -std=gnu99 -fopenmp -O3 -pthread -ljbig -lwebp -ljpeg -lXext -lSM -lICE -lX11 -llzma -lxml2 -lz -lm -lpthread
GraphicsMagick Operation: Blur OpenBenchmarking.org Iterations Per Minute, More Is Better GraphicsMagick 1.3.19 Operation: Blur bdver2 bdver1 bdver3 k8 barcelona 20 40 60 80 100 SE +/- 0.33, N = 3 SE +/- 0.33, N = 3 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 110 108 106 97 93 -march=bdver2 -march=bdver1 -march=bdver3 -march=k8 -march=barcelona 1. (CC) gcc options: -std=gnu99 -fopenmp -O3 -pthread -ljbig -lwebp -ljpeg -lXext -lSM -lICE -lX11 -llzma -lxml2 -lz -lm -lpthread
x264 H.264 Video Encoding OpenBenchmarking.org Frames Per Second, More Is Better x264 2014-01-09 H.264 Video Encoding bdver1 bdver2 bdver3 barcelona k8 20 40 60 80 100 SE +/- 0.73, N = 5 SE +/- 0.64, N = 5 SE +/- 0.25, N = 5 SE +/- 0.46, N = 5 SE +/- 0.71, N = 5 84.14 83.85 83.83 83.66 83.43 -march=bdver1 -march=bdver2 -march=bdver3 -march=barcelona -march=k8 1. (CC) gcc options: -ldl -m64 -lm -lpthread -O3 -ffast-math -std=gnu99 -fomit-frame-pointer -fno-tree-vectorize
TSCP AI Chess Performance OpenBenchmarking.org Nodes Per Second, More Is Better TSCP 1.81 AI Chess Performance k8 barcelona bdver3 bdver2 bdver1 160K 320K 480K 640K 800K SE +/- 257.20, N = 5 SE +/- 600.77, N = 5 SE +/- 198.20, N = 5 SE +/- 671.07, N = 5 SE +/- 699.90, N = 5 760113 742690 739101 738707 738311 -march=k8 -march=barcelona -march=bdver3 -march=bdver2 -march=bdver1 1. (CC) gcc options: -O3
SciMark Computational Test: Jacobi Successive Over-Relaxation OpenBenchmarking.org Mflops, More Is Better SciMark 2.0 Computational Test: Jacobi Successive Over-Relaxation k8 barcelona bdver3 bdver1 bdver2 150 300 450 600 750 SE +/- 0.12, N = 4 SE +/- 0.08, N = 4 SE +/- 0.38, N = 4 SE +/- 0.38, N = 4 SE +/- 0.80, N = 4 689.02 688.88 688.08 687.76 687.47 -march=k8 -march=barcelona -march=bdver3 -march=bdver1 -march=bdver2 1. (CXX) g++ options: -O3
SciMark Computational Test: Dense LU Matrix Factorization OpenBenchmarking.org Mflops, More Is Better SciMark 2.0 Computational Test: Dense LU Matrix Factorization bdver3 bdver2 bdver1 k8 barcelona 300 600 900 1200 1500 SE +/- 2.87, N = 4 SE +/- 3.97, N = 4 SE +/- 1.67, N = 4 SE +/- 6.32, N = 4 SE +/- 5.67, N = 4 1165.94 1164.64 1162.41 1156.29 1155.51 -march=bdver3 -march=bdver2 -march=bdver1 -march=k8 -march=barcelona 1. (CXX) g++ options: -O3
SciMark Computational Test: Sparse Matrix Multiply OpenBenchmarking.org Mflops, More Is Better SciMark 2.0 Computational Test: Sparse Matrix Multiply bdver2 bdver3 k8 bdver1 barcelona 200 400 600 800 1000 SE +/- 2.24, N = 4 SE +/- 7.27, N = 4 SE +/- 4.11, N = 4 SE +/- 9.94, N = 4 SE +/- 15.60, N = 4 877.91 866.81 865.92 860.41 849.34 -march=bdver2 -march=bdver3 -march=k8 -march=bdver1 -march=barcelona 1. (CXX) g++ options: -O3
SciMark Computational Test: Fast Fourier Transform OpenBenchmarking.org Mflops, More Is Better SciMark 2.0 Computational Test: Fast Fourier Transform k8 bdver2 bdver3 barcelona bdver1 16 32 48 64 80 SE +/- 0.22, N = 4 SE +/- 0.10, N = 4 SE +/- 0.16, N = 4 SE +/- 0.94, N = 4 SE +/- 1.36, N = 4 73.59 71.15 70.77 68.99 68.50 -march=k8 -march=bdver2 -march=bdver3 -march=barcelona -march=bdver1 1. (CXX) g++ options: -O3
SciMark Computational Test: Monte Carlo OpenBenchmarking.org Mflops, More Is Better SciMark 2.0 Computational Test: Monte Carlo bdver1 bdver2 bdver3 k8 barcelona 90 180 270 360 450 SE +/- 0.77, N = 4 SE +/- 1.61, N = 4 SE +/- 10.39, N = 4 SE +/- 7.32, N = 4 SE +/- 0.60, N = 4 423.73 423.28 413.64 397.86 384.47 -march=bdver1 -march=bdver2 -march=bdver3 -march=k8 -march=barcelona 1. (CXX) g++ options: -O3
SciMark Computational Test: Composite OpenBenchmarking.org Mflops, More Is Better SciMark 2.0 Computational Test: Composite bdver2 bdver3 bdver1 k8 barcelona 140 280 420 560 700 SE +/- 1.36, N = 4 SE +/- 1.36, N = 4 SE +/- 1.89, N = 4 SE +/- 1.68, N = 4 SE +/- 4.49, N = 4 644.89 641.05 640.56 636.54 629.44 -march=bdver2 -march=bdver3 -march=bdver1 -march=k8 -march=barcelona 1. (CXX) g++ options: -O3
Phoronix Test Suite v10.8.5