LVI Mitigations

Intel Xeon E3-1275 v6 testing with a ASUS P10S-M WS (4401 BIOS) and Intel HD P630 on Ubuntu 20.04 via the Phoronix Test Suite for a future article.

Compare your own system(s) to this result file with the Phoronix Test Suite by running the command: phoronix-test-suite benchmark 2003126-NI-LVIMITIGA83
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
No LVI Mitigation
March 11 2020
  1 Hour, 38 Minutes
LFENCE Before Indirect Branch
March 12 2020
  1 Hour, 12 Minutes
LFENCE Before RET
March 12 2020
  1 Hour, 28 Minutes
LFENCE After Load
March 12 2020
  4 Hours, 36 Minutes
LFENCE Load + Indirect Branch + Ret
March 11 2020
  4 Hours, 40 Minutes
Invert Behavior (Only Show Selected Data)
  2 Hours, 43 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):


LVI MitigationsOpenBenchmarking.orgPhoronix Test SuiteIntel Xeon E3-1275 v6 @ 4.20GHz (4 Cores / 8 Threads)ASUS P10S-M WS (4401 BIOS)Intel Xeon E3-1200 v6/7th16GBSamsung SSD 970 EVO Plus 500GBIntel HD P630 (1150MHz)Realtek ALC1150DELL S2409W2 x Intel I210Ubuntu 20.045.4.0-14-generic (x86_64)GNOME Shell 3.35.91X Server 1.20.7modesetting 1.20.7GCC 9.2.1 20200304ext41920x1080ProcessorMotherboardChipsetMemoryDiskGraphicsAudioMonitorNetworkOSKernelDesktopDisplay ServerDisplay DriverCompilerFile-SystemScreen ResolutionLVI Mitigations PerformanceSystem Logs- No LVI Mitigation: CXXFLAGS=-O3 CFLAGS=-O3- LFENCE Before Indirect Branch: CXXFLAGS="-O3 -Wa,-mlfence-before-indirect-branch=all" CFLAGS="-O3 -Wa,-mlfence-before-indirect-branch=all" - LFENCE Before RET: CXXFLAGS="-O3 -Wa,-mlfence-before-ret=or" CFLAGS="-O3 -Wa,-mlfence-before-ret=or" - LFENCE After Load: CXXFLAGS="-O3 -Wa,-mlfence-after-load=yes" CFLAGS="-O3 -Wa,-mlfence-after-load=yes" - LFENCE Load + Indirect Branch + Ret: CXXFLAGS="-O3 -Wa,-mlfence-after-load=yes -Wa,-mlfence-before-indirect-branch=all -Wa,-mlfence-before-ret=or" CFLAGS="-O3 -Wa,-mlfence-after-load=yes -Wa,-mlfence-before-indirect-branch=all -Wa,-mlfence-before-ret=or" - --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++,gm2 --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multiarch --enable-multilib --enable-nls --enable-objc-gc=auto --enable-offload-targets=nvptx-none,hsa --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=auto --with-tune=generic --without-cuda-driver -v - Scaling Governor: intel_pstate powersave - CPU Microcode: 0xca- itlb_multihit: KVM: Mitigation of Split huge pages + l1tf: Mitigation of PTE Inversion; VMX: conditional cache flushes SMT vulnerable + mds: Mitigation of Clear buffers; SMT vulnerable + meltdown: Mitigation of PTI + 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 Full generic retpoline IBPB: conditional IBRS_FW STIBP: conditional RSB filling + tsx_async_abort: Mitigation of Clear buffers; SMT vulnerable

No LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + RetLogarithmic Result OverviewPhoronix Test SuiteVP9 libvpx EncodingLAME MP3 EncodingOpenSSLC-RayJohn The RipperSMHasherSVT-AV1SVT-HEVCTimed HMMer SearchACES DGEMMGraphicsMagickCoremarkx264dav1dHimeno BenchmarkFFTWLAMMPS Molecular Dynamics SimulatorFLAC Audio EncodingTimed MrBayes AnalysisBotanPostgreSQL pgbenchLevelDBRedisMemcached mcperfIPC_benchmarkSysbenchFacebook RocksDB

LVI Mitigationsmt-dgemm: Sustained Floating-Point Ratebotan: KASUMIbotan: AES-256botan: Twofishbotan: Blowfishbotan: CAST-256c-ray: Total Time - 4K, 16 Rays Per Pixelcoremark: CoreMark Size 666 - Iterations Per Seconddav1d: Summer Nature 1080procksdb: Read While Writingfftw: Float + SSE - 2D FFT Size 128encode-flac: WAV To FLACgraphics-magick: Rotategraphics-magick: Resizinghimeno: Poisson Pressure Solveripc-benchmark: Unnamed Pipe - 2048ipc-benchmark: FIFO Named Pipe - 2048john-the-ripper: Blowfishjohn-the-ripper: MD5encode-mp3: WAV To MP3lammps: Rhodopsin Proteinleveldb: Hot Readleveldb: Fill Syncleveldb: Rand Readleveldb: Seek Randleveldb: Fill Syncmcperf: Add - 1mcperf: Get - 1mcperf: Set - 1mcperf: Add - 16openssl: RSA 4096-bit Performancepgbench: Buffer Test - Normal Load - Read Onlypgbench: Buffer Test - Normal Load - Read Writeredis: GETsmhasher: wyhashsmhasher: wyhashsmhasher: fasthash32smhasher: fasthash32smhasher: t1ha0_aes_avx2smhasher: t1ha0_aes_avx2svt-av1: Enc Mode 8 - 1080psvt-hevc: 1080p 8-bit YUV To HEVC Video Encodesysbench: CPUhmmer: Pfam Database Searchmrbayes: Primate Phylogeny Analysisvpxenc: Speed 5x264: H.264 Video EncodingNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret1.12168494.5344027.591364.617450.387143.940160.752155734.927124281.07925849362078.9227354373504.3821741520361148209777034383598.6413.0543.4386078.9533.4694.58174622.1126791.274530.774588.51217.6109133.8349476337.3977262902781.8515371.5830.876302.8839.97339576.7740.40613.84124.418863.99745.17280.09423.8644.541.12506394.5564012.193365.472455.182143.742160.740155387.192967279.92901427345698.8797204353495.0656551501588144200477044507308.7003.0913.5356172.7603.4584.6700.173822.3122542.873056.11217.5107867.8723276489.7174512807336.7515139.1644.5946305.0071.41639743.3747.80913.58023.838482.74135.19081.26623.7043.591.13468994.3153548.671361.857449.685143.336161.232150838.388176273.73899805331099.0066884353502.5389651475647145821976324421289.3812.9993.8336140.0123.8005.3430.172552.0125504.072700.472514.51214.9101653.3291486622.9350282964800.4215368.4048.4466301.2592.46040155.9373.13412.15621.288475.18435.77886.72920.3241.300.19911311.961656.42623.66127.04113.7861234.59130075.83260785.959116713179.797.94116265182.680759150678914822066469245776.7270.2755.5576279.4065.56110.54069923.1112679.369868.970035.3138.149296.6619285470.2147512290110.921459.64183.6061108.63158.3202536.98100.1422.1693.889160.575230.026861.6352.6310.810.19689911.947667.16323.62627.03613.8431235.08229308.80146285.049043753147.097.73216565182.685208145444212815226469235277.1490.2755.7466343.5905.79410.96369416.7108597.868935.869368.6138.145420.1824225255.4478692157109.921460.06199.7661108.26205.3972578.17129.6322.1333.799160.685230.058865.2952.5910.59OpenBenchmarking.org

ACES DGEMM

This is a multi-threaded DGEMM benchmark. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgGFLOP/s, More Is BetterACES DGEMM 1.0Sustained Floating-Point RateNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret0.25530.51060.76591.02121.2765SE +/- 0.009404, N = 3SE +/- 0.009027, N = 3SE +/- 0.011024, N = 3SE +/- 0.000251, N = 3SE +/- 0.001089, N = 31.1216841.1250631.1346890.1991130.1968991. (CC) gcc options: -O3 -march=native -fopenmp

Botan

Botan is a cross-platform open-source C++ crypto library that supports most all publicly known cryptographic algorithms. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgMiB/s, More Is BetterBotan 2.13.0Test: KASUMINo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret20406080100SE +/- 0.02, N = 3SE +/- 0.05, N = 3SE +/- 0.04, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 394.5394.5694.3211.9611.951. (CXX) g++ options: -fstack-protector -m64 -pthread -lbotan-2 -ldl -lrt

OpenBenchmarking.orgMiB/s, More Is BetterBotan 2.13.0Test: AES-256No LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret9001800270036004500SE +/- 3.22, N = 3SE +/- 0.68, N = 3SE +/- 0.17, N = 3SE +/- 0.42, N = 3SE +/- 0.03, N = 34027.594012.193548.67656.43667.161. (CXX) g++ options: -fstack-protector -m64 -pthread -lbotan-2 -ldl -lrt

OpenBenchmarking.orgMiB/s, More Is BetterBotan 2.13.0Test: TwofishNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret80160240320400SE +/- 0.27, N = 3SE +/- 0.01, N = 3SE +/- 0.26, N = 3SE +/- 0.00, N = 3SE +/- 0.02, N = 3364.62365.47361.8623.6623.631. (CXX) g++ options: -fstack-protector -m64 -pthread -lbotan-2 -ldl -lrt

OpenBenchmarking.orgMiB/s, More Is BetterBotan 2.13.0Test: BlowfishNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret100200300400500SE +/- 4.11, N = 3SE +/- 0.10, N = 3SE +/- 0.09, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 3450.39455.18449.6927.0427.041. (CXX) g++ options: -fstack-protector -m64 -pthread -lbotan-2 -ldl -lrt

OpenBenchmarking.orgMiB/s, More Is BetterBotan 2.13.0Test: CAST-256No LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret306090120150SE +/- 0.02, N = 3SE +/- 0.21, N = 3SE +/- 0.06, N = 3SE +/- 0.01, N = 3SE +/- 0.00, N = 3143.94143.74143.3413.7913.841. (CXX) g++ options: -fstack-protector -m64 -pthread -lbotan-2 -ldl -lrt

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 PixelNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret30060090012001500SE +/- 0.06, N = 3SE +/- 0.05, N = 3SE +/- 0.02, N = 3SE +/- 0.56, N = 3SE +/- 0.84, N = 3160.75160.74161.231234.591235.081. (CC) gcc options: -lm -lpthread -O3

Coremark

This is a test of EEMBC CoreMark processor benchmark. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgIterations/Sec, More Is BetterCoremark 1.0CoreMark Size 666 - Iterations Per SecondNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret30K60K90K120K150KSE +/- 594.80, N = 3SE +/- 406.60, N = 3SE +/- 696.48, N = 3SE +/- 15.75, N = 3SE +/- 3.16, N = 3155734.93155387.19150838.3930075.8329308.801. (CC) gcc options: -O2 -O3 -lrt" -lrt

dav1d

Dav1d is an open-source, speedy AV1 video decoder. This test profile times how long it takes to decode sample AV1 video content. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgFPS, More Is Betterdav1d 0.6.0Video Input: Summer Nature 1080pNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret60120180240300SE +/- 0.44, N = 3SE +/- 0.43, N = 3SE +/- 0.44, N = 3SE +/- 0.04, N = 3SE +/- 0.06, N = 3281.07279.92273.7385.9585.04MIN: 263 / MAX: 305.72MIN: 254.67 / MAX: 306.05MIN: 248.49 / MAX: 298.86MIN: 78.9 / MAX: 97.75MIN: 78.13 / MAX: 96.331. (CC) gcc options: -O3 -pthread

Facebook RocksDB

This is a benchmark of Facebook's RocksDB as an embeddable persistent key-value store for fast storage based on Google's LevelDB. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgOp/s, More Is BetterFacebook RocksDB 6.3.6Test: Read While WritingNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret200K400K600K800K1000KSE +/- 14182.06, N = 3SE +/- 6920.01, N = 3SE +/- 10108.45, N = 3SE +/- 6024.37, N = 3SE +/- 1624.30, N = 39258499014278998059116719043751. (CXX) g++ options: -O3 -march=native -std=c++11 -fno-builtin-memcmp -fno-rtti -rdynamic -lpthread

FFTW

FFTW is a C subroutine library for computing the discrete Fourier transform (DFT) in one or more dimensions. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgMflops, More Is BetterFFTW 3.3.6Build: Float + SSE - Size: 2D FFT Size 128No LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret8K16K24K32K40KSE +/- 457.98, N = 3SE +/- 335.87, N = 3SE +/- 402.02, N = 6SE +/- 2.37, N = 3SE +/- 5.21, N = 336207.034569.033109.03179.73147.01. (CC) gcc options: -pthread -O3 -lm

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 FLACNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret20406080100SE +/- 0.004, N = 5SE +/- 0.008, N = 5SE +/- 0.005, N = 5SE +/- 0.094, N = 5SE +/- 0.023, N = 58.9228.8799.00697.94197.7321. (CXX) g++ options: -O3 -fvisibility=hidden -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: RotateNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret160320480640800SE +/- 0.33, N = 3SE +/- 8.62, N = 3SE +/- 1.00, N = 3SE +/- 0.67, N = 37357206881621651. (CC) gcc options: -fopenmp -O3 -pthread -ljpeg -lSM -lICE -lX11 -lbz2 -lxml2 -lz -lm -lpthread

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.33Operation: ResizingNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret90180270360450SE +/- 1.73, N = 343743543565651. (CC) gcc options: -fopenmp -O3 -pthread -ljpeg -lSM -lICE -lX11 -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 SolverNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret8001600240032004000SE +/- 8.50, N = 3SE +/- 2.74, N = 3SE +/- 2.71, N = 3SE +/- 0.04, N = 3SE +/- 0.03, N = 33504.383495.073502.54182.68182.691. (CC) gcc options: -O3 -mavx2

IPC_benchmark

IPC_benchmark is a Linux inter-process communication benchmark. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgMessages Per Second, More Is BetterIPC_benchmarkType: Unnamed Pipe - Message Bytes: 2048No LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret300K600K900K1200K1500KSE +/- 23319.71, N = 3SE +/- 14185.23, N = 10SE +/- 22792.63, N = 13SE +/- 5934.66, N = 3SE +/- 24328.97, N = 1515203611501588147564715067891454442

OpenBenchmarking.orgMessages Per Second, More Is BetterIPC_benchmarkType: FIFO Named Pipe - Message Bytes: 2048No LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret300K600K900K1200K1500KSE +/- 6688.93, N = 3SE +/- 6206.38, N = 3SE +/- 22765.74, N = 3SE +/- 23424.58, N = 3SE +/- 15759.80, N = 314820971442004145821914822061281522

John The Ripper

This is a benchmark of John The Ripper, which is a password cracker. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgReal C/S, More Is BetterJohn The Ripper 1.9.0-jumbo-1Test: BlowfishNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret17003400510068008500SE +/- 0.88, N = 3SE +/- 1.45, N = 37703770476326466461. (CC) gcc options: -m64 -lssl -lcrypto -fopenmp -pthread -lm -lz -ldl -lcrypt -lbz2

OpenBenchmarking.orgReal C/S, More Is BetterJohn The Ripper 1.9.0-jumbo-1Test: MD5No LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret100K200K300K400K500KSE +/- 42.78, N = 3SE +/- 90.21, N = 3SE +/- 520.74, N = 3SE +/- 10.33, N = 3SE +/- 6.67, N = 343835945073044212892457923521. (CC) gcc options: -m64 -lssl -lcrypto -fopenmp -pthread -lm -lz -ldl -lcrypt -lbz2

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 MP3No LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret20406080100SE +/- 0.004, N = 3SE +/- 0.003, N = 3SE +/- 0.001, N = 3SE +/- 0.005, N = 3SE +/- 0.016, N = 38.6418.7009.38176.72777.1491. (CC) gcc options: -O3 -ffast-math -funroll-loops -fschedule-insns2 -fbranch-count-reg -fforce-addr -pipe -lncurses -lm

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 ProteinNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret0.69551.3912.08652.7823.4775SE +/- 0.006, N = 3SE +/- 0.005, N = 3SE +/- 0.004, N = 3SE +/- 0.000, N = 3SE +/- 0.001, N = 33.0543.0912.9990.2750.2751. (CXX) g++ options: -O3 -rdynamic -ljpeg -lfftw3 -lm

LevelDB

LevelDB is a key-value storage library developed by Google that supports making use of Snappy for data compression and has other modern features. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Hot ReadNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret1.29292.58583.87875.17166.4645SE +/- 0.010, N = 3SE +/- 0.029, N = 3SE +/- 0.016, N = 3SE +/- 0.011, N = 3SE +/- 0.011, N = 33.4383.5353.8335.5575.7461. (CXX) g++ options: -O3 -lsnappy -lpthread

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Fill SyncNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret14002800420056007000SE +/- 114.30, N = 3SE +/- 26.04, N = 3SE +/- 102.63, N = 15SE +/- 121.57, N = 15SE +/- 9.49, N = 36078.956172.766140.016279.416343.591. (CXX) g++ options: -O3 -lsnappy -lpthread

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Random ReadNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret1.30372.60743.91115.21486.5185SE +/- 0.003, N = 3SE +/- 0.034, N = 3SE +/- 0.036, N = 3SE +/- 0.001, N = 3SE +/- 0.007, N = 33.4693.4583.8005.5615.7941. (CXX) g++ options: -O3 -lsnappy -lpthread

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Seek RandomNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret3691215SE +/- 0.013, N = 3SE +/- 0.034, N = 3SE +/- 0.045, N = 3SE +/- 0.039, N = 3SE +/- 0.039, N = 34.5814.6705.34310.54010.9631. (CXX) g++ options: -O3 -lsnappy -lpthread

OpenBenchmarking.orgMB/s, More Is BetterLevelDB 1.22Benchmark: Fill SyncLFENCE Before Indirect BranchLFENCE Before RET0.02250.0450.06750.090.1125SE +/- 0.00, N = 3SE +/- 0.01, N = 150.10.11. (CXX) g++ options: -O3 -lsnappy -lpthread

Memcached mcperf

This is a test of twmperf/mcperf with memcached, a distributed memory object caching system. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgOperations Per Second, More Is BetterMemcached mcperf 1.6.0Method: Add - Connections: 1No LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret16K32K48K64K80KSE +/- 110.28, N = 3SE +/- 230.88, N = 3SE +/- 475.38, N = 3SE +/- 120.28, N = 3SE +/- 115.20, N = 374622.173822.372552.069923.169416.71. (CC) gcc options: -O3 -lm -rdynamic

OpenBenchmarking.orgOperations Per Second, More Is BetterMemcached mcperf 1.6.0Method: Get - Connections: 1No LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret30K60K90K120K150KSE +/- 1437.67, N = 3SE +/- 188.33, N = 3SE +/- 529.02, N = 3SE +/- 613.45, N = 3SE +/- 214.95, N = 3126791.2122542.8125504.0112679.3108597.81. (CC) gcc options: -O3 -lm -rdynamic

OpenBenchmarking.orgOperations Per Second, More Is BetterMemcached mcperf 1.6.0Method: Set - Connections: 1No LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret16K32K48K64K80KSE +/- 403.77, N = 3SE +/- 149.20, N = 3SE +/- 129.57, N = 3SE +/- 157.67, N = 3SE +/- 383.89, N = 374530.773056.172700.469868.968935.81. (CC) gcc options: -O3 -lm -rdynamic

OpenBenchmarking.orgOperations Per Second, More Is BetterMemcached mcperf 1.6.0Method: Add - Connections: 16No LVI MitigationLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret16K32K48K64K80KSE +/- 293.57, N = 3SE +/- 114.33, N = 3SE +/- 120.20, N = 3SE +/- 85.00, N = 374588.572514.570035.369368.61. (CC) gcc options: -O3 -lm -rdynamic

OpenSSL

OpenSSL is an open-source toolkit that implements SSL (Secure Sockets Layer) and TLS (Transport Layer Security) protocols. This test measures the RSA 4096-bit performance of OpenSSL. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSigns Per Second, More Is BetterOpenSSL 1.1.1RSA 4096-bit PerformanceNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret30060090012001500SE +/- 1.65, N = 3SE +/- 0.63, N = 3SE +/- 0.70, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 31217.61217.51214.9138.1138.11. (CC) gcc options: -pthread -m64 -O3 -lssl -lcrypto -ldl

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 OnlyNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret20K40K60K80K100KSE +/- 413.63, N = 3SE +/- 95.59, N = 3SE +/- 196.17, N = 3SE +/- 54.85, N = 3SE +/- 47.38, N = 3109133.83107867.87101653.3349296.6645420.181. (CC) gcc options: -fno-strict-aliasing -fwrapv -O3 -lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -lm

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 12.0Scaling: Buffer Test - Test: Normal Load - Mode: Read WriteNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret14002800420056007000SE +/- 63.09, N = 15SE +/- 42.83, N = 3SE +/- 98.41, N = 3SE +/- 19.12, N = 3SE +/- 71.67, N = 36337.406489.726622.945470.215255.451. (CC) gcc options: -fno-strict-aliasing -fwrapv -O3 -lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -lm

Redis

Redis is an open-source data structure server. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgRequests Per Second, More Is BetterRedis 5.0.5Test: GETNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret600K1200K1800K2400K3000KSE +/- 33984.11, N = 15SE +/- 37253.75, N = 3SE +/- 23623.92, N = 3SE +/- 6290.25, N = 3SE +/- 20411.81, N = 32902781.852807336.752964800.422290110.922157109.921. (CXX) g++ options: -MM -MT -g3 -fvisibility=hidden -O3

SMHasher

SMHasher is a hash function tester. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgMiB/sec, More Is BetterSMHasher 2020-02-29Hash: wyhashNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret3K6K9K12K15KSE +/- 91.45, N = 3SE +/- 172.83, N = 3SE +/- 61.62, N = 3SE +/- 0.34, N = 3SE +/- 0.18, N = 315371.5815139.1615368.401459.641460.061. (CXX) g++ options: -O3 -march=native -lpthread

OpenBenchmarking.orgcycles/hash, Fewer Is BetterSMHasher 2020-02-29Hash: wyhashNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret4080120160200SE +/- 0.00, N = 3SE +/- 0.03, N = 3SE +/- 0.01, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 330.8744.5948.45183.61199.771. (CXX) g++ options: -O3 -march=native -lpthread

OpenBenchmarking.orgMiB/sec, More Is BetterSMHasher 2020-02-29Hash: fasthash32No LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret14002800420056007000SE +/- 4.58, N = 3SE +/- 2.33, N = 3SE +/- 2.59, N = 3SE +/- 0.06, N = 3SE +/- 0.06, N = 36302.886305.006301.251108.631108.261. (CXX) g++ options: -O3 -march=native -lpthread

OpenBenchmarking.orgcycles/hash, Fewer Is BetterSMHasher 2020-02-29Hash: fasthash32No LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret50100150200250SE +/- 0.01, N = 3SE +/- 0.01, N = 3SE +/- 0.02, N = 3SE +/- 0.01, N = 3SE +/- 0.01, N = 339.9771.4292.46158.32205.401. (CXX) g++ options: -O3 -march=native -lpthread

OpenBenchmarking.orgMiB/sec, More Is BetterSMHasher 2020-02-29Hash: t1ha0_aes_avx2No LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret9K18K27K36K45KSE +/- 278.78, N = 3SE +/- 549.98, N = 4SE +/- 280.18, N = 3SE +/- 0.19, N = 3SE +/- 1.85, N = 339576.7739743.3740155.932536.982578.171. (CXX) g++ options: -O3 -march=native -lpthread

OpenBenchmarking.orgcycles/hash, Fewer Is BetterSMHasher 2020-02-29Hash: t1ha0_aes_avx2No LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret306090120150SE +/- 0.01, N = 3SE +/- 0.01, N = 4SE +/- 0.01, N = 3SE +/- 0.45, N = 3SE +/- 0.01, N = 340.4147.8173.13100.14129.631. (CXX) g++ options: -O3 -march=native -lpthread

SVT-AV1

This is a test of the Intel Open Visual Cloud Scalable Video Technology SVT-AV1 CPU-based multi-threaded video encoder for the AV1 video format with a sample 1080p YUV video file. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgFrames Per Second, More Is BetterSVT-AV1 0.8Encoder Mode: Enc Mode 8 - Input: 1080pNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret48121620SE +/- 0.012, N = 3SE +/- 0.015, N = 3SE +/- 0.020, N = 3SE +/- 0.003, N = 3SE +/- 0.001, N = 313.84113.58012.1562.1692.1331. (CXX) g++ options: -O3 -fPIE -fPIC -pie

SVT-HEVC

This is a test of the Intel Open Visual Cloud Scalable Video Technology SVT-HEVC CPU-based multi-threaded video encoder for the HEVC / H.265 video format with a sample 1080p YUV video file. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgFrames Per Second, More Is BetterSVT-HEVC 1.4.11080p 8-bit YUV To HEVC Video EncodeNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret612182430SE +/- 0.03, N = 3SE +/- 0.01, N = 3SE +/- 0.01, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 324.4123.8321.283.883.791. (CC) gcc options: -O3 -fPIE -fPIC -O2 -pie -rdynamic -lpthread -lrt

Sysbench

This is a benchmark of Sysbench with CPU and memory sub-tests. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgEvents Per Second, More Is BetterSysbench 2018-07-28Test: CPUNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret2K4K6K8K10KSE +/- 0.57, N = 3SE +/- 0.77, N = 3SE +/- 1.05, N = 3SE +/- 0.95, N = 3SE +/- 0.43, N = 38864.008482.748475.189160.589160.691. (CC) gcc options: -pthread -O3 -funroll-loops -ggdb3 -march=core2 -rdynamic -ldl -laio -lm

Timed HMMer Search

This test searches through the Pfam database of profile hidden markov models. The search finds the domain structure of Drosophila Sevenless protein. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed HMMer Search 2.3.2Pfam Database SearchNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret714212835SE +/- 0.005, N = 3SE +/- 0.020, N = 3SE +/- 0.053, N = 3SE +/- 0.079, N = 3SE +/- 0.047, N = 35.1725.1905.77830.02630.0581. (CC) gcc options: -O3 -pthread -lhmmer -lsquid -lm

Timed MrBayes Analysis

This test performs a bayesian analysis of a set of primate genome sequences in order to estimate their phylogeny. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed MrBayes Analysis 3.2.7Primate Phylogeny AnalysisNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret2004006008001000SE +/- 0.03, N = 3SE +/- 1.31, N = 3SE +/- 0.06, N = 3SE +/- 0.18, N = 3SE +/- 0.22, N = 380.0981.2786.73861.64865.301. (CC) gcc options: -mmmx -msse -msse2 -msse3 -mssse3 -msse4.1 -msse4.2 -maes -mavx -mfma -mavx2 -mrdrnd -mbmi -mbmi2 -madx -mmpx -mabm -O3 -std=c99 -pedantic -lm

VP9 libvpx Encoding

This is a standard video encoding performance test of Google's libvpx library and the vpxenc command for the VP9/WebM format using a sample 1080p video. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgFrames Per Second, More Is BetterVP9 libvpx Encoding 1.8.2Speed: Speed 5No LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret612182430SE +/- 0.04, N = 3SE +/- 0.03, N = 3SE +/- 0.02, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 323.8623.7020.322.632.591. (CXX) g++ options: -m64 -lm -lpthread -O3 -fPIC -U_FORTIFY_SOURCE -std=c++11

x264

This is a simple test of the x264 encoder run on the CPU (OpenCL support disabled) with a sample video file. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgFrames Per Second, More Is Betterx264 2019-12-17H.264 Video EncodingNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret1020304050SE +/- 0.49, N = 3SE +/- 0.28, N = 3SE +/- 0.11, N = 3SE +/- 0.01, N = 3SE +/- 0.02, N = 344.5443.5941.3010.8110.591. (CC) gcc options: -ldl -m64 -lm -lpthread -O3 -ffast-math -std=gnu99 -fPIC -fomit-frame-pointer -fno-tree-vectorize