Core i9 9900K LLVM LVI Mitigation

LLVM LVI testing by Michael Larabel for a future article.

HTML result view exported from: https://openbenchmarking.org/result/2004036-NI-COREI999088.

Core i9 9900K LLVM LVI MitigationProcessorMotherboardChipsetMemoryDiskGraphicsAudioMonitorNetworkOSKernelDesktopDisplay ServerDisplay DriverCompilerFile-SystemScreen ResolutionDefaultLVI MitigatedIntel Core i9-9900K @ 5.00GHz (8 Cores / 16 Threads)ASRock Z390M Pro4 (P4.20 BIOS)Intel Cannon Lake PCH16GB240GB Force MP510Intel UHD 630 (1200MHz)Realtek ALC892G237HLIntel I219-VUbuntu 20.045.4.0-9-generic (x86_64)GNOME Shell 3.34.1X Server 1.20.5modesetting 1.20.5Clang 11.0.0ext41920x1080OpenBenchmarking.orgEnvironment Details- Default: CXXFLAGS=-O3 CFLAGS=-O3- LVI Mitigated: CXXFLAGS="-O3 -mlvi-cfi" CFLAGS="-O3 -mlvi-cfi"Compiler Details- Optimized build; Default target: x86_64-unknown-linux-gnu; Host CPU: skylake Processor Details- Scaling Governor: intel_pstate powersave - CPU Microcode: 0xcaSecurity Details- itlb_multihit: KVM: Vulnerable + l1tf: Not affected + mds: Vulnerable; SMT vulnerable + meltdown: Not affected + spec_store_bypass: Vulnerable + spectre_v1: Vulnerable: __user pointer sanitization and usercopy barriers only; no swapgs barriers + spectre_v2: Vulnerable IBPB: disabled STIBP: disabled + tsx_async_abort: Vulnerable

Core i9 9900K LLVM LVI Mitigationsmhasher: wyhashsmhasher: fasthash32smhasher: fasthash32lammps: Rhodopsin Proteinjohn-the-ripper: MD5dav1d: Summer Nature 4Kvpxenc: Speed 5x264: H.264 Video Encodinghimeno: Poisson Pressure Solverencode-flac: WAV To FLACencode-mp3: WAV To MP3leveldb: Hot Readleveldb: Overwriteleveldb: Overwriteleveldb: Rand Fillleveldb: Rand Fillleveldb: Rand Readleveldb: Seek Randleveldb: Rand Deleteleveldb: Seq Fillleveldb: Seq Fillsqlite-speedtest: Timed Time - Size 1,000nginx: Static Web Page ServingDefaultLVI Mitigated23.8257461.9932.3034.567110559150.3633.0690.494183.8148189.3338.5557.45748.936.16849.135.9917.5029.13833.74950.834.84749.33651953.3634.6777468.3844.4674.491109119146.6128.6472.794171.7605189.3689.2507.63243.840.41843.540.6487.6809.33837.35148.236.70060.55451338.94OpenBenchmarking.org

SMHasher

Hash: wyhash

OpenBenchmarking.orgcycles/hash, Fewer Is BetterSMHasher 2020-02-29Hash: wyhashDefaultLVI Mitigated816243240SE +/- 0.02, N = 3SE +/- 0.00, N = 323.8334.68-mlvi-cfi1. (CXX) g++ options: -O3 -march=native -lpthread

SMHasher

Hash: fasthash32

OpenBenchmarking.orgMiB/sec, More Is BetterSMHasher 2020-02-29Hash: fasthash32DefaultLVI Mitigated16003200480064008000SE +/- 2.84, N = 3SE +/- 0.53, N = 37461.997468.38-mlvi-cfi1. (CXX) g++ options: -O3 -march=native -lpthread

SMHasher

Hash: fasthash32

OpenBenchmarking.orgcycles/hash, Fewer Is BetterSMHasher 2020-02-29Hash: fasthash32DefaultLVI Mitigated1020304050SE +/- 0.00, N = 3SE +/- 0.01, N = 332.3044.47-mlvi-cfi1. (CXX) g++ options: -O3 -march=native -lpthread

LAMMPS Molecular Dynamics Simulator

Model: Rhodopsin Protein

OpenBenchmarking.orgns/day, More Is BetterLAMMPS Molecular Dynamics Simulator 9Jan2020Model: Rhodopsin ProteinDefaultLVI Mitigated1.02762.05523.08284.11045.138SE +/- 0.040, N = 3SE +/- 0.008, N = 34.5674.491-mlvi-cfi1. (CXX) g++ options: -O3 -rdynamic -ljpeg -lpng -lz -lfftw3 -lm

John The Ripper

Test: MD5

OpenBenchmarking.orgReal C/S, More Is BetterJohn The Ripper 1.9.0-jumbo-1Test: MD5DefaultLVI Mitigated20K40K60K80K100KSE +/- 38.68, N = 3SE +/- 10.44, N = 3110559109119-mlvi-cfi1. (CC) gcc options: -m64 -lssl -lcrypto -lgmp -pthread -lm -lz -ldl -lcrypt -lbz2 -mavx2 -O3 -march=native -std=gnu89 -Qunused-arguments -funroll-loops

dav1d

Video Input: Summer Nature 4K

OpenBenchmarking.orgFPS, More Is Betterdav1d 0.6.0Video Input: Summer Nature 4KDefaultLVI Mitigated306090120150SE +/- 0.85, N = 3SE +/- 0.17, N = 3150.36146.61MIN: 139.18 / MAX: 164.01-mlvi-cfi - MIN: 135.28 / MAX: 161.581. (CC) gcc options: -O3 -pthread

VP9 libvpx Encoding

Speed: Speed 5

OpenBenchmarking.orgFrames Per Second, More Is BetterVP9 libvpx Encoding 1.8.2Speed: Speed 5DefaultLVI Mitigated816243240SE +/- 0.08, N = 3SE +/- 0.17, N = 333.0628.64-mlvi-cfi1. (CXX) g++ options: -m64 -lm -lpthread -O3 -fPIC -U_FORTIFY_SOURCE -std=c++11

x264

H.264 Video Encoding

OpenBenchmarking.orgFrames Per Second, More Is Betterx264 2019-12-17H.264 Video EncodingDefaultLVI Mitigated20406080100SE +/- 0.83, N = 10SE +/- 0.65, N = 390.4972.79-mlvi-cfi1. (CC) gcc options: -ldl -m64 -lm -lpthread -O3 -ffast-math -std=gnu99 -mstack-alignment=64 -fPIC -fomit-frame-pointer -fno-tree-vectorize

Himeno Benchmark

Poisson Pressure Solver

OpenBenchmarking.orgMFLOPS, More Is BetterHimeno Benchmark 3.0Poisson Pressure SolverDefaultLVI Mitigated9001800270036004500SE +/- 1.77, N = 3SE +/- 5.15, N = 34183.814171.76-mlvi-cfi1. (CC) gcc options: -O3 -mavx2

FLAC Audio Encoding

WAV To FLAC

OpenBenchmarking.orgSeconds, Fewer Is BetterFLAC Audio Encoding 1.3.2WAV To FLACDefaultLVI Mitigated3691215SE +/- 0.007, N = 5SE +/- 0.011, N = 59.3339.368-mlvi-cfi1. (CXX) g++ options: -O3 -logg -lm

LAME MP3 Encoding

WAV To MP3

OpenBenchmarking.orgSeconds, Fewer Is BetterLAME MP3 Encoding 3.100WAV To MP3DefaultLVI Mitigated3691215SE +/- 0.004, N = 3SE +/- 0.022, N = 38.5559.250-mlvi-cfi1. (CC) gcc options: -O3 -pipe -lncurses -lm

LevelDB

Benchmark: Hot Read

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Hot ReadDefaultLVI Mitigated246810SE +/- 0.099, N = 3SE +/- 0.121, N = 37.4577.632-mlvi-cfi1. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Overwrite

OpenBenchmarking.orgMB/s, More Is BetterLevelDB 1.22Benchmark: OverwriteDefaultLVI Mitigated1122334455SE +/- 0.26, N = 3SE +/- 0.15, N = 348.943.8-mlvi-cfi1. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Overwrite

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: OverwriteDefaultLVI Mitigated918273645SE +/- 0.19, N = 3SE +/- 0.14, N = 336.1740.42-mlvi-cfi1. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Random Fill

OpenBenchmarking.orgMB/s, More Is BetterLevelDB 1.22Benchmark: Random FillDefaultLVI Mitigated1122334455SE +/- 0.12, N = 3SE +/- 0.22, N = 349.143.5-mlvi-cfi1. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Random Fill

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Random FillDefaultLVI Mitigated918273645SE +/- 0.08, N = 3SE +/- 0.18, N = 335.9940.65-mlvi-cfi1. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Random Read

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Random ReadDefaultLVI Mitigated246810SE +/- 0.040, N = 3SE +/- 0.060, N = 37.5027.680-mlvi-cfi1. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Seek Random

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Seek RandomDefaultLVI Mitigated3691215SE +/- 0.080, N = 3SE +/- 0.018, N = 39.1389.338-mlvi-cfi1. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Random Delete

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Random DeleteDefaultLVI Mitigated918273645SE +/- 0.06, N = 3SE +/- 0.10, N = 333.7537.35-mlvi-cfi1. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Sequential Fill

OpenBenchmarking.orgMB/s, More Is BetterLevelDB 1.22Benchmark: Sequential FillDefaultLVI Mitigated1122334455SE +/- 0.39, N = 3SE +/- 0.10, N = 350.848.2-mlvi-cfi1. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Sequential Fill

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Sequential FillDefaultLVI Mitigated816243240SE +/- 0.28, N = 3SE +/- 0.08, N = 334.8536.70-mlvi-cfi1. (CXX) g++ options: -O3 -lsnappy -lpthread

SQLite Speedtest

Timed Time - Size 1,000

OpenBenchmarking.orgSeconds, Fewer Is BetterSQLite Speedtest 3.30Timed Time - Size 1,000DefaultLVI Mitigated1428425670SE +/- 0.22, N = 3SE +/- 0.09, N = 349.3460.55-mlvi-cfi1. (CC) gcc options: -O3 -ldl -lz -lpthread

NGINX Benchmark

Static Web Page Serving

OpenBenchmarking.orgRequests Per Second, More Is BetterNGINX Benchmark 1.9.9Static Web Page ServingDefaultLVI Mitigated11K22K33K44K55KSE +/- 163.47, N = 3SE +/- 190.13, N = 351953.3651338.94-mlvi-cfi1. (CC) gcc options: -lpthread -lcrypt -lcrypto -lz -O3 -march=native


Phoronix Test Suite v10.8.4