KPTI + Retpoline Comparison

Intel Xeon E3-1280 v5 testing with a MSI C236A WORKSTATION (MS-7998) v1.0 and Sapphire AMD Radeon 4096MB on Ubuntu 17.10 via the Phoronix Test Suite.

HTML result view exported from: https://openbenchmarking.org/result/1801098-FO-1801084FO58.

ProcessorMotherboardChipsetMemoryDiskGraphicsAudioMonitorNetworkOSKernelDesktopDisplay ServerOpenGLCompilerFile-SystemScreen ResolutionDisplay DriverLinux 4.14.0 StockKPTI + RetpolineLinux 4.14.0 StockKPTI + Retpoline i9-7980XE i9-7980XE E3-1280 v5 E3-1280 v5Intel Core i9-7980XE @ 4.40GHz (18 Cores / 36 Threads)ASUS PRIME X299-AIntel Device 202016384MB120GB Force MP500NV137 2048MBRealtek ALC1220Acer B286HKIntel ConnectionUbuntu 17.104.14.0-041400-generic (x86_64)GNOME Shell 3.26.1Wayland4.3 Mesa 17.2.2GCC 7.2.0ext43840x21604.14.0-phx-retpoline-gcc-retpo (x86_64)Intel Xeon E3-1280 v5 @ 4.00GHz (4 Cores / 8 Threads)MSI C236A WORKSTATION (MS-7998) v1.0Intel Skylake256GB TOSHIBA-RD400Sapphire AMD Radeon 4096MBRealtek ALC1150ASUS PB2784.14.0-041400-generic (x86_64)GNOME Shell 3.26.2modesetting 1.19.54.5 Mesa 17.4.0-devel- padoka PPA (LLVM 6.0.0)2560x14404.14.0-phx-retpoline-gcc-retpo (x86_64)4.5 Mesa 17.4.0-devel- padoka PPA ()OpenBenchmarking.orgEnvironment Details- GJS_DEBUG_TOPICS=JS ERROR;JS LOG GJS_DEBUG_OUTPUT=stderrCompiler Details- --build=x86_64-linux-gnu --disable-vtable-verify --disable-werror --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-gnu-unique-object --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --enable-libmpx --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multiarch --enable-multilib --enable-nls --enable-objc-gc=auto --enable-offload-targets=nvptx-none --enable-plugin --enable-shared --enable-threads=posix --host=x86_64-linux-gnu --program-prefix=x86_64-linux-gnu- --target=x86_64-linux-gnu --with-abi=m64 --with-arch-32=i686 --with-default-libstdcxx-abi=new --with-gcc-major-version-only --with-multilib-list=m32,m64,mx32 --with-target-system-zlib --with-tune=generic --without-cuda-driver -v Disk Details- NONE / data=ordered,errors=remount-ro,relatime,rwProcessor Details- Scaling Governor: intel_pstate powersaveSystem Details- Python 2.7.14.

fio: Rand Write - Libaio - No - Yes - 4KB - Default Test Directoryfio: Seq Write - Libaio - No - Yes - 4KB - Default Test Directoryfs-mark: 1000 Files, 1MB Sizefs-mark: 5000 Files, 1MB Size, 4 Threadsfs-mark: 4000 Files, 32 Sub Dirs, 1MB Sizecompilebench: Compilecompilebench: Initial Createcompilebench: Read Compiled Treebuild-gcc: Time To Compilebuild-linux-kernel: Time To Compilepgbench: Buffer Test - Normal Load - Read Writeredis: LPOPredis: SADDredis: LPUSHredis: GETredis: SETnginx: Static Web Page Servingapache: Static Web Page ServingLinux 4.14.0 StockKPTI + RetpolineLinux 4.14.0 StockKPTI + Retpoline i9-7980XE i9-7980XE E3-1280 v5 E3-1280 v5753.24726.28224.93673.93366.081728.79768.953341.51761.8337.957756.952114991.472334920.582227561.192722404.672229753.7954668.1251621.45684.15687.38185.13500.60264.501617.36652.252901.76817.0939.236594.401876687.362162591.791920204.672428046.712005842.4842867.7035205.88663.83730.5499.97111.4759.401025.74564.613554.881069.58129.072251.693174795.252445696.922044989.172882051.002109357.2739061.2232278.00560.53728.6068.1083.8756.73890.30502.702940.481095.89131.392231.112198334.672212974.501809081.162553195.251919907.8329838.3525399.47OpenBenchmarking.org

Flexible IO Tester

Type: Random Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory

Linux 4.14.0 StockKPTI + RetpolineOpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Random Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directoryi9-7980XEE3-1280 v5160320480640800SE +/- 11.12, N = 4SE +/- 9.60, N = 3SE +/- 31.19, N = 6SE +/- 18.60, N = 6753.24663.83684.15560.531. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl

Flexible IO Tester

Type: Random Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory

Linux 4.14.0 StockKPTI + RetpolineOpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 2.1.13Type: Random Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directoryi9-7980XEE3-1280 v540K80K120K160K200KSE +/- 2780.12, N = 4SE +/- 2398.77, N = 3SE +/- 7798.31, N = 6SE +/- 4650.61, N = 61883061659531710341401281. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl

Flexible IO Tester

Type: Sequential Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory

Linux 4.14.0 StockKPTI + RetpolineOpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Sequential Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directoryi9-7980XEE3-1280 v5160320480640800SE +/- 5.92, N = 3SE +/- 12.55, N = 3SE +/- 1.48, N = 3SE +/- 7.98, N = 3726.28730.54687.38728.601. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl

Flexible IO Tester

Type: Sequential Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory

Linux 4.14.0 StockKPTI + RetpolineOpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 2.1.13Type: Sequential Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directoryi9-7980XEE3-1280 v540K80K120K160K200KSE +/- 1480.84, N = 3SE +/- 3136.58, N = 3SE +/- 370.79, N = 3SE +/- 1994.25, N = 31815661826311718411821471. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl

FS-Mark

Test: 1000 Files, 1MB Size

Linux 4.14.0 StockKPTI + RetpolineOpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 1000 Files, 1MB Sizei9-7980XEE3-1280 v550100150200250SE +/- 12.40, N = 6SE +/- 2.85, N = 6SE +/- 2.54, N = 3SE +/- 3.63, N = 6224.9399.97185.1368.101. (CC) gcc options: -static

FS-Mark

Test: 5000 Files, 1MB Size, 4 Threads

Linux 4.14.0 StockKPTI + RetpolineOpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 5000 Files, 1MB Size, 4 Threadsi9-7980XEE3-1280 v5150300450600750SE +/- 53.36, N = 6SE +/- 14.86, N = 6SE +/- 62.72, N = 6SE +/- 1.24, N = 6673.93111.47500.6083.871. (CC) gcc options: -static

FS-Mark

Test: 4000 Files, 32 Sub Dirs, 1MB Size

Linux 4.14.0 StockKPTI + RetpolineOpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 4000 Files, 32 Sub Dirs, 1MB Sizei9-7980XEE3-1280 v580160240320400SE +/- 6.11, N = 4SE +/- 0.83, N = 5SE +/- 4.67, N = 6SE +/- 0.68, N = 3366.0859.40264.5056.731. (CC) gcc options: -static

Compile Bench

Test: Compile

Linux 4.14.0 StockKPTI + RetpolineOpenBenchmarking.orgMB/s, More Is BetterCompile Bench 0.6Test: Compilei9-7980XEE3-1280 v5400800120016002000SE +/- 20.69, N = 3SE +/- 33.40, N = 6SE +/- 23.74, N = 3SE +/- 31.82, N = 61728.791025.741617.36890.30

Compile Bench

Test: Initial Create

Linux 4.14.0 StockKPTI + RetpolineOpenBenchmarking.orgMB/s, More Is BetterCompile Bench 0.6Test: Initial Createi9-7980XEE3-1280 v5170340510680850SE +/- 12.77, N = 3SE +/- 13.54, N = 3SE +/- 15.02, N = 3SE +/- 16.09, N = 3768.95564.61652.25502.70

Compile Bench

Test: Read Compiled Tree

Linux 4.14.0 StockKPTI + RetpolineOpenBenchmarking.orgMB/s, More Is BetterCompile Bench 0.6Test: Read Compiled Treei9-7980XEE3-1280 v58001600240032004000SE +/- 75.95, N = 3SE +/- 38.73, N = 3SE +/- 62.38, N = 3SE +/- 24.97, N = 33341.513554.882901.762940.48

Timed GCC Compilation

Time To Compile

Linux 4.14.0 StockKPTI + RetpolineOpenBenchmarking.orgSeconds, Fewer Is BetterTimed GCC Compilation 7.2Time To Compilei9-7980XEE3-1280 v52004006008001000SE +/- 2.09, N = 3SE +/- 2.02, N = 3SE +/- 2.40, N = 3SE +/- 0.29, N = 3761.831069.58817.091095.89

Timed Linux Kernel Compilation

Time To Compile

Linux 4.14.0 StockKPTI + RetpolineOpenBenchmarking.orgSeconds, Fewer Is BetterTimed Linux Kernel Compilation 4.13Time To Compilei9-7980XEE3-1280 v5306090120150SE +/- 0.59, N = 6SE +/- 0.94, N = 3SE +/- 0.59, N = 6SE +/- 0.94, N = 337.95129.0739.23131.39

PostgreSQL pgbench

Scaling: Buffer Test - Test: Normal Load - Mode: Read Write

Linux 4.14.0 StockKPTI + RetpolineOpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 10.0Scaling: Buffer Test - Test: Normal Load - Mode: Read Writei9-7980XEE3-1280 v517003400510068008500SE +/- 595.12, N = 6SE +/- 15.24, N = 3SE +/- 109.80, N = 6SE +/- 12.11, N = 37756.952251.696594.402231.111. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -fPIC -lpgcommon -lpgport -lpthread -lrt -lcrypt -ldl -lm

Redis

Test: LPOP

Linux 4.14.0 StockKPTI + RetpolineOpenBenchmarking.orgRequests Per Second, More Is BetterRedis 3.0.1Test: LPOPi9-7980XEE3-1280 v5700K1400K2100K2800K3500KSE +/- 316898.84, N = 6SE +/- 17457.60, N = 3SE +/- 269003.08, N = 6SE +/- 24068.05, N = 32114991.473174795.251876687.362198334.671. (CC) gcc options: -ggdb -rdynamic -lm -pthread

Redis

Test: SADD

Linux 4.14.0 StockKPTI + RetpolineOpenBenchmarking.orgRequests Per Second, More Is BetterRedis 3.0.1Test: SADDi9-7980XEE3-1280 v5500K1000K1500K2000K2500KSE +/- 65858.31, N = 6SE +/- 29396.74, N = 3SE +/- 42952.11, N = 6SE +/- 25445.22, N = 32334920.582445696.922162591.792212974.501. (CC) gcc options: -ggdb -rdynamic -lm -pthread

Redis

Test: LPUSH

Linux 4.14.0 StockKPTI + RetpolineOpenBenchmarking.orgRequests Per Second, More Is BetterRedis 3.0.1Test: LPUSHi9-7980XEE3-1280 v5500K1000K1500K2000K2500KSE +/- 55151.41, N = 6SE +/- 37986.60, N = 3SE +/- 27558.02, N = 6SE +/- 26097.14, N = 32227561.192044989.171920204.671809081.161. (CC) gcc options: -ggdb -rdynamic -lm -pthread

Redis

Test: GET

Linux 4.14.0 StockKPTI + RetpolineOpenBenchmarking.orgRequests Per Second, More Is BetterRedis 3.0.1Test: GETi9-7980XEE3-1280 v5600K1200K1800K2400K3000KSE +/- 91567.19, N = 6SE +/- 17221.38, N = 3SE +/- 77877.56, N = 6SE +/- 2174.75, N = 32722404.672882051.002428046.712553195.251. (CC) gcc options: -ggdb -rdynamic -lm -pthread

Redis

Test: SET

Linux 4.14.0 StockKPTI + RetpolineOpenBenchmarking.orgRequests Per Second, More Is BetterRedis 3.0.1Test: SETi9-7980XEE3-1280 v5500K1000K1500K2000K2500KSE +/- 47497.72, N = 6SE +/- 40430.85, N = 6SE +/- 26640.15, N = 6SE +/- 22355.81, N = 32229753.792109357.272005842.481919907.831. (CC) gcc options: -ggdb -rdynamic -lm -pthread

NGINX Benchmark

Static Web Page Serving

Linux 4.14.0 StockKPTI + RetpolineOpenBenchmarking.orgRequests Per Second, More Is BetterNGINX Benchmark 1.9.9Static Web Page Servingi9-7980XEE3-1280 v512K24K36K48K60KSE +/- 66.93, N = 3SE +/- 149.45, N = 3SE +/- 653.05, N = 3SE +/- 85.74, N = 354668.1239061.2242867.7029838.351. (CC) gcc options: -lpthread -lcrypt -lz -O3 -march=native

Apache Benchmark

Static Web Page Serving

Linux 4.14.0 StockKPTI + RetpolineOpenBenchmarking.orgRequests Per Second, More Is BetterApache Benchmark 2.4.7Static Web Page Servingi9-7980XEE3-1280 v511K22K33K44K55KSE +/- 1205.80, N = 6SE +/- 56.03, N = 3SE +/- 684.78, N = 3SE +/- 24.35, N = 351621.4532278.0035205.8825399.471. (CC) gcc options: -shared -fPIC -O2 -pthread


Phoronix Test Suite v10.8.4