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&grt&sor .
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 c-ray: Total Time encode-flac: WAV To FLAC graphics-magick: Blur graphics-magick: Sharpen graphics-magick: Resizing graphics-magick: HWB Color Space graphics-magick: Local Adaptive Thresholding himeno: Poisson Pressure Solver scimark2: Composite scimark2: Monte Carlo scimark2: Fast Fourier Transform scimark2: Sparse Matrix Multiply scimark2: Dense LU Matrix Factorization scimark2: Jacobi Successive Over-Relaxation build-apache: Time To Compile build-php: Time To Compile tscp: AI Chess Performance x264: H.264 Video Encoding k8 barcelona bdver1 bdver2 bdver3 87.90 6.62 97 71 106 126 77 867.36 636.54 397.86 73.59 865.92 1156.29 689.02 58.55 56.54 760113 83.43 53.33 6.90 93 72 120 138 76 898.33 629.44 384.47 68.99 849.34 1155.51 688.88 58.68 56.60 742690 83.66 40.67 5.29 108 87 133 139 81 894.27 640.56 423.73 68.50 860.41 1162.41 687.76 59.07 58.45 738311 84.14 40.55 5.47 110 81 133 139 81 905.30 644.89 423.28 71.15 877.91 1164.64 687.47 58.91 58.54 738707 83.85 40.54 5.52 106 81 133 139 80 902.98 641.05 413.64 70.77 866.81 1165.94 688.08 58.83 58.48 739101 83.83 OpenBenchmarking.org
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
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
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
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: 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: 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: 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
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
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
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: 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: 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: 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: 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
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
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
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
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
Phoronix Test Suite v10.8.5