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 Mitigationsipc-benchmark: Unnamed Pipe - 2048ipc-benchmark: FIFO Named Pipe - 2048smhasher: wyhashsmhasher: wyhashsmhasher: fasthash32smhasher: fasthash32smhasher: t1ha0_aes_avx2smhasher: t1ha0_aes_avx2fftw: Float + SSE - 2D FFT Size 128mrbayes: Primate Phylogeny Analysishmmer: Pfam Database Searchlammps: Rhodopsin Proteinbotan: KASUMIbotan: AES-256botan: Twofishbotan: Blowfishbotan: CAST-256john-the-ripper: Blowfishjohn-the-ripper: MD5graphics-magick: Rotategraphics-magick: Resizingdav1d: Summer Nature 1080psvt-av1: Enc Mode 8 - 1080psvt-hevc: 1080p 8-bit YUV To HEVC Video Encodevpxenc: Speed 5x264: H.264 Video Encodingmt-dgemm: Sustained Floating-Point Ratecoremark: CoreMark Size 666 - Iterations Per Secondhimeno: Poisson Pressure Solverc-ray: Total Time - 4K, 16 Rays Per Pixelencode-flac: WAV To FLACencode-mp3: WAV To MP3openssl: RSA 4096-bit Performanceleveldb: Hot Readleveldb: Fill Syncleveldb: Rand Readleveldb: Seek Randpgbench: Buffer Test - Normal Load - Read Onlypgbench: Buffer Test - Normal Load - Read Writeredis: GETsysbench: CPUrocksdb: Read While Writingmcperf: Add - 1mcperf: Get - 1mcperf: Set - 1mcperf: Add - 16leveldb: Fill SyncNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret1520361148209715371.5830.876302.8839.97339576.7740.4063620780.0945.1723.05494.5344027.591364.617450.387143.9407703438359735437281.0713.84124.4123.8644.541.121684155734.9271243504.382174160.7528.9228.6411217.63.4386078.9533.4694.581109133.8349476337.3977262902781.858863.997492584974622.1126791.274530.774588.51501588144200415139.1644.5946305.0071.41639743.3747.8093456981.2665.1903.09194.5564012.193365.472455.182143.7427704450730720435279.9213.58023.8323.7043.591.125063155387.1929673495.065655160.7408.8798.7001217.53.5356172.7603.4584.670107867.8723276489.7174512807336.758482.741390142773822.3122542.873056.10.11475647145821915368.4048.4466301.2592.46040155.9373.1343310986.7295.7782.99994.3153548.671361.857449.685143.3367632442128688435273.7312.15621.2820.3241.301.134689150838.3881763502.538965161.2329.0069.3811214.93.8336140.0123.8005.343101653.3291486622.9350282964800.428475.184389980572552.0125504.072700.472514.50.1150678914822061459.64183.6061108.63158.3202536.98100.1423179.7861.63530.0260.27511.961656.42623.66127.04113.786646924571626585.952.1693.882.6310.810.19911330075.832607182.6807591234.59197.94176.727138.15.5576279.4065.56110.54049296.6619285470.2147512290110.929160.575291167169923.1112679.369868.970035.3145444212815221460.06199.7661108.26205.3972578.17129.6323147.0865.29530.0580.27511.947667.16323.62627.03613.843646923521656585.042.1333.792.5910.590.19689929308.801462182.6852081235.08297.73277.149138.15.7466343.5905.79410.96345420.1824225255.4478692157109.929160.685290437569416.7108597.868935.869368.6OpenBenchmarking.org

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 After LoadLFENCE Before Indirect BranchLFENCE Before RETLFENCE Load + Indirect Branch + Ret300K600K900K1200K1500KSE +/- 23319.71, N = 3SE +/- 5934.66, N = 3SE +/- 14185.23, N = 10SE +/- 22792.63, N = 13SE +/- 24328.97, N = 1515203611506789150158814756471454442

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

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 RETLFENCE Before Indirect BranchLFENCE Load + Indirect Branch + RetLFENCE After Load3K6K9K12K15KSE +/- 91.45, N = 3SE +/- 61.62, N = 3SE +/- 172.83, N = 3SE +/- 0.18, N = 3SE +/- 0.34, N = 315371.5815368.4015139.161460.061459.641. (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: fasthash32LFENCE Before Indirect BranchNo LVI MitigationLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret14002800420056007000SE +/- 2.33, N = 3SE +/- 4.58, N = 3SE +/- 2.59, N = 3SE +/- 0.06, N = 3SE +/- 0.06, N = 36305.006302.886301.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_avx2LFENCE Before RETLFENCE Before Indirect BranchNo LVI MitigationLFENCE Load + Indirect Branch + RetLFENCE After Load9K18K27K36K45KSE +/- 280.18, N = 3SE +/- 549.98, N = 4SE +/- 278.78, N = 3SE +/- 1.85, N = 3SE +/- 0.19, N = 340155.9339743.3739576.772578.172536.981. (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

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

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

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

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

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: KASUMILFENCE Before Indirect BranchNo LVI MitigationLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret20406080100SE +/- 0.05, N = 3SE +/- 0.02, N = 3SE +/- 0.04, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 394.5694.5394.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 Load + Indirect Branch + RetLFENCE After Load9001800270036004500SE +/- 3.22, N = 3SE +/- 0.68, N = 3SE +/- 0.17, N = 3SE +/- 0.03, N = 3SE +/- 0.42, N = 34027.594012.193548.67667.16656.431. (CXX) g++ options: -fstack-protector -m64 -pthread -lbotan-2 -ldl -lrt

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

OpenBenchmarking.orgMiB/s, More Is BetterBotan 2.13.0Test: BlowfishLFENCE Before Indirect BranchNo LVI MitigationLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret100200300400500SE +/- 0.10, N = 3SE +/- 4.11, N = 3SE +/- 0.09, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 3455.18450.39449.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 Load + Indirect Branch + RetLFENCE After Load306090120150SE +/- 0.02, N = 3SE +/- 0.21, N = 3SE +/- 0.06, N = 3SE +/- 0.00, N = 3SE +/- 0.01, N = 3143.94143.74143.3413.8413.791. (CXX) g++ options: -fstack-protector -m64 -pthread -lbotan-2 -ldl -lrt

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: BlowfishLFENCE Before Indirect BranchNo LVI MitigationLFENCE Before RETLFENCE Load + Indirect Branch + RetLFENCE After Load17003400510068008500SE +/- 0.88, N = 3SE +/- 1.45, N = 37704770376326466461. (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: MD5LFENCE Before Indirect BranchLFENCE Before RETNo LVI MitigationLFENCE After LoadLFENCE Load + Indirect Branch + Ret100K200K300K400K500KSE +/- 90.21, N = 3SE +/- 520.74, N = 3SE +/- 42.78, N = 3SE +/- 10.33, N = 3SE +/- 6.67, N = 345073044212843835992457923521. (CC) gcc options: -m64 -lssl -lcrypto -fopenmp -pthread -lm -lz -ldl -lcrypt -lbz2

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 Load + Indirect Branch + RetLFENCE After Load160320480640800SE +/- 0.33, N = 3SE +/- 8.62, N = 3SE +/- 1.00, N = 3SE +/- 0.67, N = 37357206881651621. (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 RETLFENCE Before Indirect BranchLFENCE Load + Indirect Branch + RetLFENCE After Load90180270360450SE +/- 1.73, N = 343743543565651. (CC) gcc options: -fopenmp -O3 -pthread -ljpeg -lSM -lICE -lX11 -lbz2 -lxml2 -lz -lm -lpthread

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

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

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

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 RateLFENCE Before RETLFENCE Before Indirect BranchNo LVI MitigationLFENCE After LoadLFENCE Load + Indirect Branch + Ret0.25530.51060.76591.02121.2765SE +/- 0.011024, N = 3SE +/- 0.009027, N = 3SE +/- 0.009404, N = 3SE +/- 0.000251, N = 3SE +/- 0.001089, N = 31.1346891.1250631.1216840.1991130.1968991. (CC) gcc options: -O3 -march=native -fopenmp

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

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 RETLFENCE Before Indirect BranchLFENCE Load + Indirect Branch + RetLFENCE After Load8001600240032004000SE +/- 8.50, N = 3SE +/- 2.71, N = 3SE +/- 2.74, N = 3SE +/- 0.03, N = 3SE +/- 0.04, N = 33504.383502.543495.07182.69182.681. (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 PixelLFENCE Before Indirect BranchNo LVI MitigationLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret30060090012001500SE +/- 0.05, N = 3SE +/- 0.06, N = 3SE +/- 0.02, N = 3SE +/- 0.56, N = 3SE +/- 0.84, N = 3160.74160.75161.231234.591235.081. (CC) gcc options: -lm -lpthread -O3

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 FLACLFENCE Before Indirect BranchNo LVI MitigationLFENCE Before RETLFENCE Load + Indirect Branch + RetLFENCE After Load20406080100SE +/- 0.008, N = 5SE +/- 0.004, N = 5SE +/- 0.005, N = 5SE +/- 0.023, N = 5SE +/- 0.094, N = 58.8798.9229.00697.73297.9411. (CXX) g++ options: -O3 -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 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

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 Load + Indirect Branch + RetLFENCE After Load30060090012001500SE +/- 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

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 RETLFENCE Before Indirect BranchLFENCE After LoadLFENCE Load + Indirect Branch + Ret14002800420056007000SE +/- 114.30, N = 3SE +/- 102.63, N = 15SE +/- 26.04, N = 3SE +/- 121.57, N = 15SE +/- 9.49, N = 36078.956140.016172.766279.416343.591. (CXX) g++ options: -O3 -lsnappy -lpthread

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Random ReadLFENCE Before Indirect BranchNo LVI MitigationLFENCE Before RETLFENCE After LoadLFENCE Load + Indirect Branch + Ret1.30372.60743.91115.21486.5185SE +/- 0.034, N = 3SE +/- 0.003, N = 3SE +/- 0.036, N = 3SE +/- 0.001, N = 3SE +/- 0.007, N = 33.4583.4693.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

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 WriteLFENCE Before RETLFENCE Before Indirect BranchNo LVI MitigationLFENCE After LoadLFENCE Load + Indirect Branch + Ret14002800420056007000SE +/- 98.41, N = 3SE +/- 42.83, N = 3SE +/- 63.09, N = 15SE +/- 19.12, N = 3SE +/- 71.67, N = 36622.946489.726337.405470.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: GETLFENCE Before RETNo LVI MitigationLFENCE Before Indirect BranchLFENCE After LoadLFENCE Load + Indirect Branch + Ret600K1200K1800K2400K3000KSE +/- 23623.92, N = 3SE +/- 33984.11, N = 15SE +/- 37253.75, N = 3SE +/- 6290.25, N = 3SE +/- 20411.81, N = 32964800.422902781.852807336.752290110.922157109.921. (CXX) g++ options: -MM -MT -g3 -fvisibility=hidden -O3

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: CPULFENCE Load + Indirect Branch + RetLFENCE After LoadNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RET2K4K6K8K10KSE +/- 0.43, N = 3SE +/- 0.95, N = 3SE +/- 0.57, N = 3SE +/- 0.77, N = 3SE +/- 1.05, N = 39160.699160.588864.008482.748475.181. (CC) gcc options: -pthread -O3 -funroll-loops -ggdb3 -march=core2 -rdynamic -ldl -laio -lm

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 After LoadLFENCE Load + Indirect Branch + RetLFENCE Before Indirect BranchLFENCE Before RET200K400K600K800K1000KSE +/- 14182.06, N = 3SE +/- 6024.37, N = 3SE +/- 1624.30, N = 3SE +/- 6920.01, N = 3SE +/- 10108.45, N = 39258499116719043759014278998051. (CXX) g++ options: -O3 -march=native -std=c++11 -fno-builtin-memcmp -fno-rtti -rdynamic -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 RETLFENCE Before Indirect BranchLFENCE After LoadLFENCE Load + Indirect Branch + Ret30K60K90K120K150KSE +/- 1437.67, N = 3SE +/- 529.02, N = 3SE +/- 188.33, N = 3SE +/- 613.45, N = 3SE +/- 214.95, N = 3126791.2125504.0122542.8112679.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

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.orgMB/s, More Is BetterLevelDB 1.22Benchmark: Fill SyncLFENCE Before RETLFENCE Before Indirect Branch0.02250.0450.06750.090.1125SE +/- 0.01, N = 15SE +/- 0.00, N = 30.10.11. (CXX) g++ options: -O3 -lsnappy -lpthread