GCC 4.8 LTO Link-Time Optimizations

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

Compare your own system(s) to this result file with the Phoronix Test Suite by running the command: phoronix-test-suite benchmark 1302092-FO-GCC48LTO575
Jump To Table - Results

View

Do Not Show Noisy Results
Do Not Show Results With Incomplete Data
Do Not Show Results With Little Change/Spread
List Notable Results
Show Result Confidence Charts
Allow Limiting Results To Certain Suite(s)

Statistics

Show Overall Harmonic Mean(s)
Show Overall Geometric Mean
Show Wins / Losses Counts (Pie Chart)
Normalize Results
Remove Outliers Before Calculating Averages

Graph Settings

Force Line Graphs Where Applicable
Convert To Scalar Where Applicable
Prefer Vertical Bar Graphs

Multi-Way Comparison

Condense Multi-Option Tests Into Single Result Graphs

Table

Show Detailed System Result Table

Run Management

Highlight
Result
Toggle/Hide
Result
Result
Identifier
View Logs
Performance Per
Dollar
Date
Run
  Test
  Duration
-O3 -march=native
February 08 2013
 
-O3 -march=native -flto
February 08 2013
 
-O3 -march=native -flto -fwhole-program
February 08 2013
 
Invert Behavior (Only Show Selected Data)
 

Only show results where is faster than
Only show results matching title/arguments (delimit multiple options with a comma):
Do not show results matching title/arguments (delimit multiple options with a comma):


GCC 4.8 LTO Link-Time OptimizationsOpenBenchmarking.orgPhoronix Test SuiteIntel 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 20130121ext41920x1080ProcessorMotherboardChipsetMemoryDiskGraphicsAudioMonitorNetworkOSKernelDesktopDisplay ServerDisplay DriverOpenGLCompilerFile-SystemScreen ResolutionGCC 4.8 LTO Link-Time Optimizations PerformanceSystem Logs- --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 - Scaling Governor: ondemand

-O3 -march=native-O3 -march=native -flto-O3 -march=native -flto -fwhole-programResult OverviewPhoronix Test Suite100%133%166%199%232%Timed PHP CompilationBYTE Unix BenchmarkBullet Physics EngineHimeno BenchmarkOpus Codec EncodingGraphicsMagickC-RaySmallpt

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

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

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

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

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

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

BYTE Unix Benchmark

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

Himeno Benchmark

The Himeno benchmark is a linear solver of pressure Poisson using a point-Jacobi method. Learn more via the OpenBenchmarking.org test page.

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

Timed PHP Compilation

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

C-Ray

This is a test of C-Ray, a simple raytracer designed to test the floating-point CPU performance. This test is multi-threaded (16 threads per core), will shoot 8 rays per pixel for anti-aliasing, and will generate a 1600 x 1200 image. Learn more via the OpenBenchmarking.org test page.

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

Smallpt

Smallpt is a C++ global illumination renderer written in less than 100 lines of code. Global illumination is done via unbiased Monte Carlo path tracing and there is multi-threading support via the OpenMP library. Learn more via the OpenBenchmarking.org test page.

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

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

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

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

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

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

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

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

Opus Codec Encoding

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