Debian Linux GCC 8 Benchmark -mindirect-branch=thunk

GCC 8 benchmarking of user-space with -mindirect-branch=thunk and -mindirect-branch=thunk-inline for retpolines. Tests by Michael Larabel 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 1801161-PTS-DEBIANTE65
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

Limit displaying results to tests within:

Chess Test Suite 2 Tests
C/C++ Compiler Tests 4 Tests
CPU Massive 5 Tests
Database Test Suite 2 Tests
HPC - High Performance Computing 2 Tests
MPI Benchmarks 2 Tests
Multi-Core 4 Tests
Server 2 Tests
Server CPU Tests 2 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
Stock
January 16 2018
 
-mindirect-branch=thunk
January 16 2018
 
-mindirect-branch=thunk-inline
January 16 2018
 
Invert Hiding All Results Option
 

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):


Debian Linux GCC 8 Benchmark -mindirect-branch=thunkOpenBenchmarking.orgPhoronix Test SuiteIntel Core i9-7980XE @ 4.40GHz (18 Cores / 36 Threads)ASUS PRIME X299-A (1004 BIOS)Intel Device 202016384MB120GB Force MP500LLVMpipeRealtek ALC1220Acer B286HKIntel ConnectionDebian 9.34.15.0-rc8-retpo-underflow (x86_64) 20180115GNOME Shell 3.22.3modesetting 1.19.23.3 Mesa 13.0.6 Gallium 0.4 (LLVM 3.9 256 bits)GCC 8.0.1 20180115ext43840x2160ProcessorMotherboardChipsetMemoryDiskGraphicsAudioMonitorNetworkOSKernelDesktopDisplay DriverOpenGLCompilerFile-SystemScreen ResolutionDebian Linux GCC 8 Benchmark -mindirect-branch=thunk PerformanceSystem Logs- Stock: CXXFLAGS=-O3-march=native CFLAGS=-O3-march=native- -mindirect-branch=thunk: CXXFLAGS=-O3-march=native-mindirect-branch=thunk CFLAGS=-O3-march=native-mindirect-branch=thunk - -mindirect-branch=thunk-inline: CXXFLAGS=-O3-march=native-mindirect-branch=thunk-inline CFLAGS=-O3-march=native-mindirect-branch=thunk-inline - --disable-multilib --enable-checking=release- Stock, -mindirect-branch=thunk: NONE / data=ordered,errors=remount-ro,relatime,rw- Scaling Governor: intel_pstate powersave- Stock, -mindirect-branch=thunk: Python 2.7.13 + Python 3.5.3- KPTI Full retpoline with underflow protection Protection

Stock-mindirect-branch=thunk-mindirect-branch=thunk-inlineResult OverviewPhoronix Test Suite100%106%112%118%124%TSCPBullet Physics EngineStockfishFFmpegRedisGNU MPCPostgreSQL pgbenchHPC ChallengeHigh Performance Conjugate Gradient

Debian Linux GCC 8 Benchmark -mindirect-branch=thunkmpcbench: Multi-Precision Benchmarkhpcc: G-HPLhpcc: G-Fftehpcg: tscp: AI Chess Performancestockfish: Total Timebullet: Raytestsbullet: 3000 Fallbullet: 1000 Stackbullet: 1000 Convexbullet: Prim Trimeshbullet: Convex Trimeshffmpeg: H.264 HD To NTSC DVpgbench: Buffer Test - Normal Load - Read Writepgbench: Buffer Test - Heavy Contention - Read Writeredis: GETredis: SETStock-mindirect-branch=thunk-mindirect-branch=thunk-inline1001385.930905.884751.38138679429042.533.884.444.370.921.0813.2911387.0911290.862222262.581399046.62964386.046205.585641.35118535730742.784.114.574.651.001.2313.8911104.8611147.892187123.331280528.47983085.975475.560221.38111642132282.896.534.834.931.031.2814.1311460.4310540.602160702.131457026.92OpenBenchmarking.org

GNU MPC

GNU MPC is a C library for the arithmetic of complex numbers. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgGlobal Score, More Is BetterGNU MPC 1.1.0Multi-Precision BenchmarkStock-mindirect-branch=thunk-mindirect-branch=thunk-inline2K4K6K8K10KSE +/- 43.72, N = 3SE +/- 84.52, N = 3SE +/- 75.72, N = 310013964398301. (CC) gcc options: -lm -O3 -march=native -MT -MD -MP -MF
OpenBenchmarking.orgGlobal Score, More Is BetterGNU MPC 1.1.0Multi-Precision BenchmarkStock-mindirect-branch=thunk-mindirect-branch=thunk-inline2K4K6K8K10KMin: 9960 / Avg: 10013.33 / Max: 10100Min: 9510 / Avg: 9643.33 / Max: 9800Min: 9710 / Avg: 9830 / Max: 99701. (CC) gcc options: -lm -O3 -march=native -MT -MD -MP -MF

HPC Challenge

OpenBenchmarking.orgGFLOPS, More Is BetterHPC Challenge 1.5.0Test / Class: G-HPLStock-mindirect-branch=thunk-mindirect-branch=thunk-inline20406080100SE +/- 0.29, N = 3SE +/- 0.10, N = 3SE +/- 0.17, N = 385.9386.0585.981. (CC) gcc options: -lblas -lm -pthread -lmpi -fomit-frame-pointer -O3 -march=native -funroll-loops2. BLAS + Open MPI 2.0.2
OpenBenchmarking.orgGFLOPS, More Is BetterHPC Challenge 1.5.0Test / Class: G-HPLStock-mindirect-branch=thunk-mindirect-branch=thunk-inline1632486480Min: 85.51 / Avg: 85.93 / Max: 86.49Min: 85.94 / Avg: 86.05 / Max: 86.25Min: 85.63 / Avg: 85.98 / Max: 86.191. (CC) gcc options: -lblas -lm -pthread -lmpi -fomit-frame-pointer -O3 -march=native -funroll-loops2. BLAS + Open MPI 2.0.2

OpenBenchmarking.orgGFLOPS, More Is BetterHPC Challenge 1.5.0Test / Class: G-FfteStock-mindirect-branch=thunk-mindirect-branch=thunk-inline1.32412.64823.97235.29646.6205SE +/- 0.18843, N = 3SE +/- 0.01968, N = 3SE +/- 0.02991, N = 35.884755.585645.560221. (CC) gcc options: -lblas -lm -pthread -lmpi -fomit-frame-pointer -O3 -march=native -funroll-loops2. BLAS + Open MPI 2.0.2
OpenBenchmarking.orgGFLOPS, More Is BetterHPC Challenge 1.5.0Test / Class: G-FfteStock-mindirect-branch=thunk-mindirect-branch=thunk-inline246810Min: 5.51 / Avg: 5.88 / Max: 6.11Min: 5.56 / Avg: 5.59 / Max: 5.62Min: 5.5 / Avg: 5.56 / Max: 5.611. (CC) gcc options: -lblas -lm -pthread -lmpi -fomit-frame-pointer -O3 -march=native -funroll-loops2. BLAS + Open MPI 2.0.2

OpenBenchmarking.orgGFLOP/s, More Is BetterHPC Challenge 1.5.0Test / Class: G-FfteStock-mindirect-branch=thunk-mindirect-branch=thunk-inline1.32412.64823.97235.29646.6205SE +/- 0.18843, N = 3SE +/- 0.01968, N = 3SE +/- 0.02991, N = 35.884755.585645.560221. (CC) gcc options: -lblas -lm -pthread -lmpi -fomit-frame-pointer -O3 -march=native -funroll-loops2. BLAS + Open MPI 2.0.2
OpenBenchmarking.orgGFLOP/s, More Is BetterHPC Challenge 1.5.0Test / Class: G-FfteStock-mindirect-branch=thunk-mindirect-branch=thunk-inline246810Min: 5.51 / Avg: 5.88 / Max: 6.11Min: 5.56 / Avg: 5.59 / Max: 5.62Min: 5.5 / Avg: 5.56 / Max: 5.611. (CC) gcc options: -lblas -lm -pthread -lmpi -fomit-frame-pointer -O3 -march=native -funroll-loops2. BLAS + Open MPI 2.0.2

High Performance Conjugate Gradient

HPCG is the High Performance Conjugate Gradient and is a new scientific benchmark from Sandia National Lans focused for super-computer testing with modern real-world workloads compared to HPCC. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgGFLOP/s, More Is BetterHigh Performance Conjugate Gradient 3.0Stock-mindirect-branch=thunk-mindirect-branch=thunk-inline0.31050.6210.93151.2421.5525SE +/- 0.01, N = 3SE +/- 0.00, N = 3SE +/- 0.01, N = 31.381.351.38
OpenBenchmarking.orgGFLOP/s, More Is BetterHigh Performance Conjugate Gradient 3.0Stock-mindirect-branch=thunk-mindirect-branch=thunk-inline246810Min: 1.36 / Avg: 1.38 / Max: 1.39Min: 1.35 / Avg: 1.35 / Max: 1.36Min: 1.37 / Avg: 1.38 / Max: 1.4

TSCP

This is a performance test of TSCP, Tom Kerrigan's Simple Chess Program, which has a built-in performance benchmark. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgNodes Per Second, More Is BetterTSCP 1.81AI Chess PerformanceStock-mindirect-branch=thunk-mindirect-branch=thunk-inline300K600K900K1200K1500KSE +/- 18404.85, N = 6SE +/- 10473.03, N = 5SE +/- 17216.49, N = 51386794118535711164211. (CC) gcc options: -O3 -march=native
OpenBenchmarking.orgNodes Per Second, More Is BetterTSCP 1.81AI Chess PerformanceStock-mindirect-branch=thunk-mindirect-branch=thunk-inline200K400K600K800K1000KMin: 1333602 / Avg: 1386794.33 / Max: 1468741Min: 1145068 / Avg: 1185356.6 / Max: 1199952Min: 1077843 / Avg: 1116420.6 / Max: 11793961. (CC) gcc options: -O3 -march=native

Stockfish

OpenBenchmarking.orgms, Fewer Is BetterStockfish 2014-11-26Total TimeStock-mindirect-branch=thunk-mindirect-branch=thunk-inline7001400210028003500SE +/- 6.11, N = 3SE +/- 44.96, N = 3SE +/- 56.05, N = 32904307432281. (CXX) g++ options: -lpthread -O3 -march=native -fno-exceptions -fno-rtti -ansi -pedantic -msse -msse3 -mpopcnt -flto
OpenBenchmarking.orgms, Fewer Is BetterStockfish 2014-11-26Total TimeStock-mindirect-branch=thunk-mindirect-branch=thunk-inline6001200180024003000Min: 2892 / Avg: 2904 / Max: 2912Min: 2985 / Avg: 3073.67 / Max: 3131Min: 3129 / Avg: 3228.33 / Max: 33231. (CXX) g++ options: -lpthread -O3 -march=native -fno-exceptions -fno-rtti -ansi -pedantic -msse -msse3 -mpopcnt -flto

Bullet Physics Engine

This is a benchmark of the Bullet Physics Engine. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: RaytestsStock-mindirect-branch=thunk-mindirect-branch=thunk-inline0.65031.30061.95092.60123.2515SE +/- 0.04, N = 3SE +/- 0.04, N = 3SE +/- 0.01, N = 32.532.782.891. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU
OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: RaytestsStock-mindirect-branch=thunk-mindirect-branch=thunk-inline246810Min: 2.48 / Avg: 2.53 / Max: 2.62Min: 2.69 / Avg: 2.78 / Max: 2.82Min: 2.88 / Avg: 2.89 / Max: 2.911. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU

OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: 3000 FallStock-mindirect-branch=thunk-mindirect-branch=thunk-inline246810SE +/- 0.02, N = 3SE +/- 0.02, N = 3SE +/- 2.39, N = 33.884.116.531. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU
OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: 3000 FallStock-mindirect-branch=thunk-mindirect-branch=thunk-inline3691215Min: 3.85 / Avg: 3.88 / Max: 3.91Min: 4.07 / Avg: 4.11 / Max: 4.15Min: 4.09 / Avg: 6.53 / Max: 11.31. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU

OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: 1000 StackStock-mindirect-branch=thunk-mindirect-branch=thunk-inline1.08682.17363.26044.34725.434SE +/- 0.04, N = 3SE +/- 0.03, N = 3SE +/- 0.05, N = 34.444.574.831. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU
OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: 1000 StackStock-mindirect-branch=thunk-mindirect-branch=thunk-inline246810Min: 4.36 / Avg: 4.44 / Max: 4.49Min: 4.52 / Avg: 4.57 / Max: 4.63Min: 4.78 / Avg: 4.83 / Max: 4.931. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU

OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: 1000 ConvexStock-mindirect-branch=thunk-mindirect-branch=thunk-inline1.10932.21863.32794.43725.5465SE +/- 0.17, N = 3SE +/- 0.11, N = 3SE +/- 0.06, N = 34.374.654.931. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU
OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: 1000 ConvexStock-mindirect-branch=thunk-mindirect-branch=thunk-inline246810Min: 4.19 / Avg: 4.37 / Max: 4.71Min: 4.54 / Avg: 4.65 / Max: 4.87Min: 4.85 / Avg: 4.93 / Max: 5.061. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU

OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: Prim TrimeshStock-mindirect-branch=thunk-mindirect-branch=thunk-inline0.23180.46360.69540.92721.159SE +/- 0.03, N = 3SE +/- 0.02, N = 3SE +/- 0.02, N = 30.921.001.031. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU
OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: Prim TrimeshStock-mindirect-branch=thunk-mindirect-branch=thunk-inline246810Min: 0.88 / Avg: 0.92 / Max: 0.98Min: 0.98 / Avg: 1 / Max: 1.05Min: 1 / Avg: 1.03 / Max: 1.051. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU

OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: Convex TrimeshStock-mindirect-branch=thunk-mindirect-branch=thunk-inline0.2880.5760.8641.1521.44SE +/- 0.04, N = 3SE +/- 0.02, N = 3SE +/- 0.00, N = 31.081.231.281. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU
OpenBenchmarking.orgSeconds, Fewer Is BetterBullet Physics Engine 2.81Test: Convex TrimeshStock-mindirect-branch=thunk-mindirect-branch=thunk-inline246810Min: 1.04 / Avg: 1.08 / Max: 1.15Min: 1.19 / Avg: 1.23 / Max: 1.26Min: 1.27 / Avg: 1.28 / Max: 1.281. (CXX) g++ options: -O3 -march=native -rdynamic -lglut -lGL -lGLU

FFmpeg

OpenBenchmarking.orgSeconds, Fewer Is BetterFFmpeg 3.3.3H.264 HD To NTSC DVStock-mindirect-branch=thunk-mindirect-branch=thunk-inline48121620SE +/- 0.31, N = 6SE +/- 0.30, N = 6SE +/- 0.32, N = 613.2913.8914.131. (CC) gcc options: -lavdevice -lavfilter -lavformat -lavcodec -lswresample -lswscale -lavutil -ldl -lxcb -lxcb-shm -lxcb-xfixes -lxcb-shape -lasound -lm -llzma -lbz2 -pthread -O3 -march=native -std=c11 -fomit-frame-pointer -fno-math-errno -fno-signed-zeros -fno-tree-vectorize -MMD -MF -MT
OpenBenchmarking.orgSeconds, Fewer Is BetterFFmpeg 3.3.3H.264 HD To NTSC DVStock-mindirect-branch=thunk-mindirect-branch=thunk-inline48121620Min: 12.53 / Avg: 13.29 / Max: 14.08Min: 13.38 / Avg: 13.89 / Max: 14.86Min: 13.32 / Avg: 14.13 / Max: 14.861. (CC) gcc options: -lavdevice -lavfilter -lavformat -lavcodec -lswresample -lswscale -lavutil -ldl -lxcb -lxcb-shm -lxcb-xfixes -lxcb-shape -lasound -lm -llzma -lbz2 -pthread -O3 -march=native -std=c11 -fomit-frame-pointer -fno-math-errno -fno-signed-zeros -fno-tree-vectorize -MMD -MF -MT

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 10.0Scaling: Buffer Test - Test: Normal Load - Mode: Read WriteStock-mindirect-branch=thunk-mindirect-branch=thunk-inline2K4K6K8K10KSE +/- 221.41, N = 6SE +/- 276.43, N = 6SE +/- 63.39, N = 311387.0911104.8611460.431. (CC) gcc options: -fno-strict-aliasing -fwrapv -O3 -march=native -fPIC -lpgcommon -lpgport -lpthread -lrt -lcrypt -ldl -lm
OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 10.0Scaling: Buffer Test - Test: Normal Load - Mode: Read WriteStock-mindirect-branch=thunk-mindirect-branch=thunk-inline2K4K6K8K10KMin: 10572.23 / Avg: 11387.09 / Max: 11850.4Min: 9986.57 / Avg: 11104.86 / Max: 11797.73Min: 11335.68 / Avg: 11460.43 / Max: 11542.41. (CC) gcc options: -fno-strict-aliasing -fwrapv -O3 -march=native -fPIC -lpgcommon -lpgport -lpthread -lrt -lcrypt -ldl -lm

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 10.0Scaling: Buffer Test - Test: Heavy Contention - Mode: Read WriteStock-mindirect-branch=thunk-mindirect-branch=thunk-inline2K4K6K8K10KSE +/- 264.90, N = 6SE +/- 326.63, N = 6SE +/- 43.65, N = 311290.8611147.8910540.601. (CC) gcc options: -fno-strict-aliasing -fwrapv -O3 -march=native -fPIC -lpgcommon -lpgport -lpthread -lrt -lcrypt -ldl -lm
OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 10.0Scaling: Buffer Test - Test: Heavy Contention - Mode: Read WriteStock-mindirect-branch=thunk-mindirect-branch=thunk-inline2K4K6K8K10KMin: 10240.65 / Avg: 11290.86 / Max: 11880.82Min: 9855.75 / Avg: 11147.89 / Max: 11965.99Min: 10479.89 / Avg: 10540.6 / Max: 10625.291. (CC) gcc options: -fno-strict-aliasing -fwrapv -O3 -march=native -fPIC -lpgcommon -lpgport -lpthread -lrt -lcrypt -ldl -lm

Redis

OpenBenchmarking.orgRequests Per Second, More Is BetterRedis 3.0.1Test: GETStock-mindirect-branch=thunk-mindirect-branch=thunk-inline500K1000K1500K2000K2500KSE +/- 43689.11, N = 3SE +/- 40180.95, N = 6SE +/- 41655.36, N = 62222262.582187123.332160702.131. (CC) gcc options: -ggdb -rdynamic -lm -pthread
OpenBenchmarking.orgRequests Per Second, More Is BetterRedis 3.0.1Test: GETStock-mindirect-branch=thunk-mindirect-branch=thunk-inline400K800K1200K1600K2000KMin: 2173913 / Avg: 2222262.58 / Max: 2309468.75Min: 2040816.25 / Avg: 2187123.33 / Max: 2314814.75Min: 2036659.88 / Avg: 2160702.13 / Max: 2314814.751. (CC) gcc options: -ggdb -rdynamic -lm -pthread

OpenBenchmarking.orgRequests Per Second, More Is BetterRedis 3.0.1Test: SETStock-mindirect-branch=thunk-mindirect-branch=thunk-inline300K600K900K1200K1500KSE +/- 34299.85, N = 6SE +/- 160590.96, N = 6SE +/- 2554.75, N = 31399046.621280528.471457026.921. (CC) gcc options: -ggdb -rdynamic -lm -pthread
OpenBenchmarking.orgRequests Per Second, More Is BetterRedis 3.0.1Test: SETStock-mindirect-branch=thunk-mindirect-branch=thunk-inline300K600K900K1200K1500KMin: 1280409.75 / Avg: 1399046.62 / Max: 1483679.5Min: 481463.69 / Avg: 1280528.47 / Max: 1472754Min: 1453488.38 / Avg: 1457026.92 / Max: 1461988.251. (CC) gcc options: -ggdb -rdynamic -lm -pthread