GCC 4.8 LTO Link-Time Optimizations

Some GCC 4.8 link-time optimization benchmarks for a future article on Phoronix.com.

HTML result view exported from: https://openbenchmarking.org/result/1302092-FO-GCC48LTO575&sro&gru.

GCC 4.8 LTO Link-Time OptimizationsProcessorMotherboardChipsetMemoryDiskGraphicsAudioMonitorNetworkOSKernelDesktopDisplay ServerDisplay DriverOpenGLCompilerFile-SystemScreen Resolution-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-programIntel Core i7-3770K @ 3.50GHz (8 Cores)ECS Z77H2-A2X v1.0Intel Xeon E3-1200 v2/3rd8192MB60GB OCZ VERTEX2NVIDIA GeForce GTX 550 Ti 1024MB (405/324MHz)Realtek ALC892DELL P2210HRealtek RTL8111/8168B + Intel Centrino Advanced-N 6205Ubuntu 13.043.8.0-4-generic (x86_64)Unity 6.6.0X Server 1.13.2nouveau 1.0.63.0 Mesa 9.0.2 Gallium 0.4GCC 4.8.0 20130121ext41920x1080OpenBenchmarking.orgCompiler Details- --build=x86_64-linux-gnu --disable-browser-plugin --disable-nls --disable-werror --enable-checking=yes --enable-clocale=gnu --enable-gnu-unique-object --enable-gtk-cairo --enable-java-awt=gtk --enable-java-home --enable-languages=c,ada,c++,java,go,fortran,objc,obj-c++ --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multiarch --enable-objc-gc --enable-plugin --enable-shared --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-abi=m64 --with-arch-32=i686 --with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.8-snap-amd64/jre --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.8-snap-amd64 --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.8-snap-amd64 --with-multilib-list=m32,m64,mx32 --with-tune=generic -v Processor Details- Scaling Governor: ondemand

GCC 4.8 LTO Link-Time Optimizationsgraphics-magick: Blurgraphics-magick: Sharpengraphics-magick: Resizinggraphics-magick: HWB Color Spacegraphics-magick: Local Adaptive Thresholdingbyte: Dhrystone 2himeno: Poisson Pressure Solverbuild-php: Time To Compilec-ray: Total Timesmallpt: Global Illumination Renderer; 100 Samplesbullet: Raytestsbullet: 3000 Fallbullet: 1000 Stackbullet: 1000 Convexbullet: 136 Ragdollsbullet: Prim Trimeshbullet: Convex Trimeshencode-opus: WAV, Opus Encode, Opus Decode-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-program1409516719611830148598.831611.1043.7428.15383.305.005.885.773.601.091.379.001419516820111837789032.271723.20101.3428.10383.385.467.006.123.941.131.438.891419616820211837854081.971675.8987.4828.11383.365.236.506.033.801.111.408.89OpenBenchmarking.org

GraphicsMagick

Operation: Blur

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.16Operation: Blur-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-program306090120150SE +/- 0.33, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 3140141141-flto-flto -fwhole-program1. (CC) gcc options: -std=gnu99 -fopenmp -O3 -march=native -pthread -lXext -lSM -lICE -lX11 -lbz2 -lz -lm -lgomp -lpthread

GraphicsMagick

Operation: Sharpen

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.16Operation: Sharpen-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-program20406080100SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 3959596-flto-flto -fwhole-program1. (CC) gcc options: -std=gnu99 -fopenmp -O3 -march=native -pthread -lXext -lSM -lICE -lX11 -lbz2 -lz -lm -lgomp -lpthread

GraphicsMagick

Operation: Resizing

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.16Operation: Resizing-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-program4080120160200SE +/- 0.00, N = 3SE +/- 0.33, N = 3SE +/- 0.33, N = 3167168168-flto-flto -fwhole-program1. (CC) gcc options: -std=gnu99 -fopenmp -O3 -march=native -pthread -lXext -lSM -lICE -lX11 -lbz2 -lz -lm -lgomp -lpthread

GraphicsMagick

Operation: HWB Color Space

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.16Operation: HWB Color Space-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-program4080120160200SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 3196201202-flto-flto -fwhole-program1. (CC) gcc options: -std=gnu99 -fopenmp -O3 -march=native -pthread -lXext -lSM -lICE -lX11 -lbz2 -lz -lm -lgomp -lpthread

GraphicsMagick

Operation: Local Adaptive Thresholding

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.16Operation: Local Adaptive Thresholding-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-program306090120150SE +/- 0.00, N = 3SE +/- 0.33, N = 3SE +/- 0.33, N = 3118118118-flto-flto -fwhole-program1. (CC) gcc options: -std=gnu99 -fopenmp -O3 -march=native -pthread -lXext -lSM -lICE -lX11 -lbz2 -lz -lm -lgomp -lpthread

BYTE Unix Benchmark

Computational Test: Dhrystone 2

OpenBenchmarking.orgLPS, More Is BetterBYTE Unix Benchmark 3.6Computational Test: Dhrystone 2-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-program8M16M24M32M40MSE +/- 6843.30, N = 3SE +/- 31975.89, N = 3SE +/- 5452.52, N = 330148598.8337789032.2737854081.97-flto-flto -fwhole-program1. (CC) gcc options: -O3 -march=native

Himeno Benchmark

Poisson Pressure Solver

OpenBenchmarking.orgMFLOPS, More Is BetterHimeno Benchmark 3.0Poisson Pressure Solver-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-program400800120016002000SE +/- 0.60, N = 3SE +/- 0.83, N = 3SE +/- 31.85, N = 61611.101723.201675.89-flto-flto -fwhole-program1. (CC) gcc options: -O3 -march=native

Timed PHP Compilation

Time To Compile

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed PHP Compilation 5.2.9Time To Compile-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-program20406080100SE +/- 0.02, N = 3SE +/- 0.15, N = 3SE +/- 0.21, N = 343.74101.3487.48-flto-flto -fwhole-program1. (CC) gcc options: -O3 -march=native -pedantic -ldl -lpthread -lz -lm

C-Ray

Total Time

OpenBenchmarking.orgSeconds, Fewer Is BetterC-Ray 1.1Total Time-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-program714212835SE +/- 0.01, N = 3SE +/- 0.01, N = 3SE +/- 0.01, N = 328.1528.1028.11-flto-flto -fwhole-program1. (CC) gcc options: -lm -lpthread -O3 -march=native

Smallpt

Global Illumination Renderer; 100 Samples

OpenBenchmarking.orgSeconds, Fewer Is BetterSmallpt 1.0Global Illumination Renderer; 100 Samples-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-program918273645SE +/- 0.33, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 3383838-flto-flto -fwhole-program1. (CXX) g++ options: -fopenmp -O3 -march=native

Bullet Physics Engine

Test: Raytests

OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: Raytests-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-program0.76051.5212.28153.0423.8025SE +/- 0.00, N = 3SE +/- 0.01, N = 3SE +/- 0.00, N = 33.303.383.36-flto-flto -fwhole-program1. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU

Bullet Physics Engine

Test: 3000 Fall

OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: 3000 Fall-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-program1.22852.4573.68554.9146.1425SE +/- 0.01, N = 3SE +/- 0.01, N = 3SE +/- 0.01, N = 35.005.465.23-flto-flto -fwhole-program1. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU

Bullet Physics Engine

Test: 1000 Stack

OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: 1000 Stack-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-program246810SE +/- 0.02, N = 3SE +/- 0.02, N = 3SE +/- 0.00, N = 35.887.006.50-flto-flto -fwhole-program1. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU

Bullet Physics Engine

Test: 1000 Convex

OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: 1000 Convex-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-program246810SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.01, N = 35.776.126.03-flto-flto -fwhole-program1. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU

Bullet Physics Engine

Test: 136 Ragdolls

OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: 136 Ragdolls-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-program0.88651.7732.65953.5464.4325SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 33.603.943.80-flto-flto -fwhole-program1. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU

Bullet Physics Engine

Test: Prim Trimesh

OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: Prim Trimesh-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-program0.25430.50860.76291.01721.2715SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 31.091.131.11-flto-flto -fwhole-program1. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU

Bullet Physics Engine

Test: Convex Trimesh

OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: Convex Trimesh-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-program0.32180.64360.96541.28721.609SE +/- 0.01, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 31.371.431.40-flto-flto -fwhole-program1. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU

Opus Codec Encoding

WAV, Opus Encode, Opus Decode

OpenBenchmarking.orgSeconds, Fewer Is BetterOpus Codec Encoding 1.0.1WAV, Opus Encode, Opus Decode-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-program3691215SE +/- 0.00, N = 5SE +/- 0.00, N = 5SE +/- 0.00, N = 59.008.898.89-flto-flto -fwhole-program1. (CC) gcc options: -std=gnu99 -O3 -march=native -fPIE -pie -logg -lm -lopus


Phoronix Test Suite v10.8.5