GCC 10 Compiler Optimization Benchmarks

Intel Cascade Lake compiler optimization benchmarks on GCC 10.

Compare your own system(s) to this result file with the Phoronix Test Suite by running the command: phoronix-test-suite benchmark 2005237-PTS-COMPS68203
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

Limit displaying results to tests within:

Audio Encoding 2 Tests
C++ Boost Tests 2 Tests
C/C++ Compiler Tests 9 Tests
CPU Massive 10 Tests
Creator Workloads 6 Tests
Encoding 2 Tests
HPC - High Performance Computing 3 Tests
Multi-Core 6 Tests
Raytracing 3 Tests
Renderers 3 Tests
Scientific Computing 2 Tests
Server 2 Tests
Server CPU Tests 3 Tests
Single-Threaded 3 Tests

Statistics

Show Overall Harmonic Mean(s)
Show Overall Geometric Mean
Show Geometric Means Per-Suite/Category
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
Hide
Result
Result
Identifier
Performance Per
Dollar
Date
Run
  Test
  Duration
-O0
May 22 2020
  2 Hours, 53 Minutes
-O2
May 22 2020
  1 Hour, 41 Minutes
-O3
May 22 2020
  2 Hours, 2 Minutes
-O3 -march=native
May 13 2020
  1 Hour, 59 Minutes
-O3 -march=native -flto
May 21 2020
  2 Hours
-Ofast -march=native
May 22 2020
  2 Hours
Invert Hiding All Results Option
  2 Hours, 6 Minutes

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 10 Compiler Optimization BenchmarksOpenBenchmarking.orgPhoronix Test SuiteIntel Core i9-10980XE @ 4.80GHz (18 Cores / 36 Threads)ASRock X299 Steel Legend (P1.30 BIOS)Intel Sky Lake-E DMI3 Registers32GBSamsung SSD 970 PRO 512GBNVIDIA NV132 11GBRealtek ALC1220ASUS MG28UIntel I219-V + Intel I211Ubuntu 20.045.4.0-29-generic (x86_64)GNOME Shell 3.36.1X Server 1.20.8modesetting 1.20.84.3 Mesa 20.0.4GCC 10.1.0ext43840x2160ProcessorMotherboardChipsetMemoryDiskGraphicsAudioMonitorNetworkOSKernelDesktopDisplay ServerDisplay DriverOpenGLCompilerFile-SystemScreen ResolutionGCC 10 Compiler Optimization Benchmarks PerformanceSystem Logs- -O0: CXXFLAGS=-O0 CFLAGS=-O0- -O2: CXXFLAGS=-O2 CFLAGS=-O2- -O3: CXXFLAGS=-O3 CFLAGS=-O3- -O3 -march=native: CXXFLAGS="-O3 -march=native" CFLAGS="-O3 -march=native"- -O3 -march=native -flto: CXXFLAGS="-O3 -march=native -flto" CFLAGS="-O3 -march=native -flto" - -Ofast -march=native: CXXFLAGS="-Ofast -march=native" CFLAGS="-Ofast -march=native" - --disable-multilib --enable-checking=release- Scaling Governor: intel_pstate powersave - CPU Microcode: 0x500012c- Python 3.8.2- itlb_multihit: KVM: Mitigation of Split huge pages + l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Mitigation of SSB disabled via prctl and seccomp + spectre_v1: Mitigation of usercopy/swapgs barriers and __user pointer sanitization + spectre_v2: Mitigation of Enhanced IBRS IBPB: conditional RSB filling + tsx_async_abort: Mitigation of TSX disabled

-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=nativeLogarithmic Result OverviewPhoronix Test SuiteHimeno BenchmarkFLAC Audio EncodingLeelaChessZeroCrypto++C-RayLAME MP3 EncodingPostgreSQL pgbenchGraphicsMagickNGINX BenchmarkC-BloscYafaRayLAMMPS Molecular Dynamics Simulator

GCC 10 Compiler Optimization Benchmarksblosc: blosclzcryptopp: Keyed Algorithmscryptopp: Unkeyed Algorithmscryptopp: Integer + Elliptic Curve Public Key Algorithmslczero: Eigenlczero: Randlammps: Rhodopsin Proteingraphics-magick: Rotatehimeno: Poisson Pressure Solverc-ray: Total Time - 4K, 16 Rays Per Pixelpovray: Trace Timeyafaray: Total Time For Sample Sceneencode-flac: WAV To FLACencode-mp3: WAV To MP3pgbench: Buffer Test - Normal Load - Read Onlypgbench: Buffer Test - Normal Load - Read Writenginx: Static Web Page Serving-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native8216.995.085347102.2475761659.38352331830011.844727597.533920113.576104.64753.00825.150317104.9731199648.29442949414.818234.3660.461482356.5779975718.12673292415728911.8998434150.11478769.69628.999101.4739.33111.198483412.7471599637.53616751647.998202.7712.008644359.2766575679.40730192714219811.8877944015.85758638.00427.478105.6439.3689.412481599.7210519922.91042651596.827778.0751.563696392.2364795809.05246492613660812.2238364771.41889830.45927.499101.5768.4918.612476778.1487418029.08088352346.177829.8699.798129390.5873855915.78936594816377312.4278574774.03166330.24428.883106.3878.3558.528491896.15608710194.03052052047.288204.7751.014335394.3027975906.81006093415762912.2328135065.07291727.13427.729107.1228.3358.656482929.7046399468.62598051501.62OpenBenchmarking.org

C-Blosc

A simple, compressed, fast and persistent data store library for C. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgMB/s, More Is BetterC-Blosc 2.0 Beta 5Compressor: blosclz-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native2K4K6K8K10KSE +/- 4.37, N = 3SE +/- 6.34, N = 3SE +/- 9.76, N = 3SE +/- 7.31, N = 3SE +/- 2.64, N = 3SE +/- 7.13, N = 38216.98234.38202.77778.07829.88204.7-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native1. (CXX) g++ options: -rdynamic

Crypto++

Crypto++ is a C++ class library of cryptographic algorithms. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgMiB/second, More Is BetterCrypto++ 8.2Test: Keyed Algorithms-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native160320480640800SE +/- 0.01, N = 3SE +/- 0.63, N = 3SE +/- 0.09, N = 3SE +/- 0.10, N = 3SE +/- 0.62, N = 3SE +/- 0.38, N = 395.09660.46712.01751.56699.80751.01-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native1. (CXX) g++ options: -fPIC -pthread -pipe

OpenBenchmarking.orgMiB/second, More Is BetterCrypto++ 8.2Test: Unkeyed Algorithms-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native90180270360450SE +/- 0.06, N = 3SE +/- 0.28, N = 3SE +/- 0.17, N = 3SE +/- 0.20, N = 3SE +/- 0.10, N = 3SE +/- 0.14, N = 3102.25356.58359.28392.24390.59394.30-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native1. (CXX) g++ options: -fPIC -pthread -pipe

OpenBenchmarking.orgMiB/second, More Is BetterCrypto++ 8.2Test: Integer + Elliptic Curve Public Key Algorithms-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native13002600390052006500SE +/- 1.08, N = 3SE +/- 2.28, N = 3SE +/- 6.99, N = 3SE +/- 1.31, N = 3SE +/- 7.20, N = 3SE +/- 3.05, N = 31659.385718.135679.415809.055915.795906.81-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native1. (CXX) g++ options: -fPIC -pthread -pipe

LeelaChessZero

LeelaChessZero (lc0 / lczero) is a chess engine automated vian neural networks. This test profile can be used for OpenCL, CUDA + cuDNN, and BLAS (CPU-based) benchmarking. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgNodes Per Second, More Is BetterLeelaChessZero 0.25Backend: Eigen-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native2004006008001000SE +/- 9.35, N = 3SE +/- 3.79, N = 3SE +/- 10.27, N = 3SE +/- 3.48, N = 3SE +/- 15.57, N = 33924927926948934-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native1. (CXX) g++ options: -pthread

OpenBenchmarking.orgNodes Per Second, More Is BetterLeelaChessZero 0.25Backend: Random-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native40K80K120K160K200KSE +/- 23.03, N = 3SE +/- 77.06, N = 3SE +/- 147.22, N = 3SE +/- 176.21, N = 3SE +/- 157.19, N = 3SE +/- 208.58, N = 318300157289142198136608163773157629-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native1. (CXX) g++ options: -pthread

LAMMPS Molecular Dynamics Simulator

LAMMPS is a classical molecular dynamics code, and an acronym for Large-scale Atomic/Molecular Massively Parallel Simulator. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgns/day, More Is BetterLAMMPS Molecular Dynamics Simulator 9Jan2020Model: Rhodopsin Protein-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native3691215SE +/- 0.06, N = 3SE +/- 0.05, N = 3SE +/- 0.02, N = 3SE +/- 0.09, N = 3SE +/- 0.02, N = 3SE +/- 0.09, N = 311.8411.9011.8912.2212.4312.23-O0-O2-march=native-march=native -flto-Ofast -march=native1. (CXX) g++ options: -O3 -rdynamic -ljpeg -lpng -lz -lfftw3 -lm

GraphicsMagick

This is a test of GraphicsMagick with its OpenMP implementation that performs various imaging tests on a sample 6000x4000 pixel JPEG image. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.33Operation: Rotate-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native2004006008001000SE +/- 10.76, N = 4SE +/- 6.12, N = 3SE +/- 10.05, N = 4SE +/- 9.94, N = 3SE +/- 10.90, N = 3SE +/- 13.72, N = 3727843794836857813-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native1. (CC) gcc options: -fopenmp -pthread -ljbig -ltiff -lfreetype -ljpeg -lXext -lSM -lICE -lX11 -llzma -lbz2 -lxml2 -lz -lm -lpthread

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-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native11002200330044005500SE +/- 0.19, N = 3SE +/- 5.58, N = 3SE +/- 10.11, N = 3SE +/- 7.02, N = 3SE +/- 7.91, N = 3SE +/- 8.26, N = 3597.534150.114015.864771.424774.035065.07-O2-march=native-march=native -flto-Ofast -march=native1. (CC) gcc options: -O3 -mavx2

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 - 4K, 16 Rays Per Pixel-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native306090120150SE +/- 0.01, N = 3SE +/- 0.02, N = 3SE +/- 0.01, N = 3SE +/- 0.01, N = 3SE +/- 0.01, N = 3SE +/- 0.01, N = 3113.5869.7038.0030.4630.2427.13-O0-O2-march=native-march=native -flto-Ofast -march=native1. (CC) gcc options: -lm -lpthread -O3

POV-Ray

This is a test of POV-Ray, the Persistence of Vision Raytracer. POV-Ray is used to create 3D graphics using ray-tracing. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterPOV-Ray 3.7.0.7Trace Time-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native714212835SE +/- 0.33, N = 3SE +/- 0.06, N = 3SE +/- 0.05, N = 3SE +/- 0.49, N = 3SE +/- 0.11, N = 329.0027.4827.5028.8827.73-O2-flto-Ofast1. (CXX) g++ options: -pipe -O3 -ffast-math -march=native -pthread -lSM -lICE -lX11 -lIlmImf -lImath -lHalf -lIex -lIexMath -lIlmThread -lpthread -ltiff -ljpeg -lpng -lz -lrt -lm -lboost_thread -lboost_system

YafaRay

YafaRay is an open-source physically based montecarlo ray-tracing engine. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterYafaRay 3.4.1Total Time For Sample Scene-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native20406080100SE +/- 1.76, N = 15SE +/- 0.93, N = 3SE +/- 1.65, N = 15SE +/- 1.06, N = 15SE +/- 2.17, N = 15SE +/- 1.65, N = 15104.65101.47105.64101.58106.39107.121. (CXX) g++ options: -std=c++11 -O3 -ffast-math -rdynamic -ldl -lImath -lIlmImf -lIex -lHalf -lz -lIlmThread -lxml2 -lfreetype -lpthread

FLAC Audio Encoding

This test times how long it takes to encode a sample WAV file to FLAC format five times. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterFLAC Audio Encoding 1.3.2WAV To FLAC-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native1224364860SE +/- 0.039, N = 5SE +/- 0.029, N = 5SE +/- 0.015, N = 5SE +/- 0.018, N = 5SE +/- 0.012, N = 5SE +/- 0.009, N = 553.0089.3319.3688.4918.3558.335-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native1. (CXX) g++ options: -fvisibility=hidden -lm

LAME MP3 Encoding

LAME is an MP3 encoder licensed under the LGPL. This test measures the time required to encode a WAV file to MP3 format. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterLAME MP3 Encoding 3.100WAV To MP3-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native612182430SE +/- 0.015, N = 3SE +/- 0.009, N = 3SE +/- 0.010, N = 3SE +/- 0.007, N = 3SE +/- 0.009, N = 3SE +/- 0.005, N = 325.15011.1989.4128.6128.5288.656-O0-O2-march=native-march=native -flto-Ofast -march=native1. (CC) gcc options: -O3 -ffast-math -funroll-loops -fschedule-insns2 -fbranch-count-reg -fforce-addr -pipe -lncurses -lm

PostgreSQL pgbench

This is a simple benchmark of PostgreSQL using pgbench. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 12.0Scaling: Buffer Test - Test: Normal Load - Mode: Read Only-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native110K220K330K440K550KSE +/- 406.58, N = 3SE +/- 839.46, N = 3SE +/- 1024.30, N = 3SE +/- 418.58, N = 3SE +/- 426.27, N = 3SE +/- 1005.62, N = 3317104.97483412.75481599.72476778.15491896.16482929.70-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native1. (CC) gcc options: -fno-strict-aliasing -fwrapv -lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -lm

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 12.0Scaling: Buffer Test - Test: Normal Load - Mode: Read Write-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native2K4K6K8K10KSE +/- 57.04, N = 3SE +/- 75.57, N = 3SE +/- 49.95, N = 3SE +/- 27.74, N = 3SE +/- 40.21, N = 3SE +/- 80.17, N = 39648.299637.549922.918029.0810194.039468.63-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native1. (CC) gcc options: -fno-strict-aliasing -fwrapv -lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -lm

NGINX Benchmark

This is a test of ab, which is the Apache Benchmark program running against nginx. This test profile measures how many requests per second a given system can sustain when carrying out 2,000,000 requests with 500 requests being carried out concurrently. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgRequests Per Second, More Is BetterNGINX Benchmark 1.9.9Static Web Page Serving-O0-O2-O3-O3 -march=native-O3 -march=native -flto-Ofast -march=native11K22K33K44K55KSE +/- 18.42, N = 3SE +/- 32.36, N = 3SE +/- 89.67, N = 3SE +/- 72.32, N = 3SE +/- 53.44, N = 3SE +/- 214.53, N = 349414.8151647.9951596.8252346.1752047.2851501.62-O0-O2-flto-Ofast1. (CC) gcc options: -lpthread -lcrypt -lcrypto -lz -O3 -march=native