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.

HTML result view exported from: https://openbenchmarking.org/result/2003126-NI-LVIMITIGA83&rdt.

LVI MitigationsProcessorMotherboardChipsetMemoryDiskGraphicsAudioMonitorNetworkOSKernelDesktopDisplay ServerDisplay DriverCompilerFile-SystemScreen ResolutionNo LVI MitigationLFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before Indirect BranchLFENCE Before RETIntel 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 20200304ext41920x1080OpenBenchmarking.orgEnvironment Details- No LVI Mitigation: CXXFLAGS=-O3 CFLAGS=-O3- 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" - LFENCE After Load: CXXFLAGS="-O3 -Wa,-mlfence-after-load=yes" CFLAGS="-O3 -Wa,-mlfence-after-load=yes"- 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"Compiler 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++,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 Processor Details- Scaling Governor: intel_pstate powersave - CPU Microcode: 0xcaSecurity Details- 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

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 Load + Indirect Branch + RetLFENCE After LoadLFENCE Before Indirect BranchLFENCE Before 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.5145444212815221460.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.6150678914822061459.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.31501588144200415139.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.1OpenBenchmarking.org

IPC_benchmark

Type: Unnamed Pipe - Message Bytes: 2048

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

IPC_benchmark

Type: FIFO Named Pipe - Message Bytes: 2048

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

SMHasher

Hash: wyhash

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

SMHasher

Hash: wyhash

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

SMHasher

Hash: fasthash32

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

SMHasher

Hash: fasthash32

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

SMHasher

Hash: t1ha0_aes_avx2

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

SMHasher

Hash: t1ha0_aes_avx2

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

FFTW

Build: Float + SSE - Size: 2D FFT Size 128

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

Timed MrBayes Analysis

Primate Phylogeny Analysis

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed MrBayes Analysis 3.2.7Primate Phylogeny AnalysisNo LVI MitigationLFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before Indirect BranchLFENCE Before RET2004006008001000SE +/- 0.03, N = 3SE +/- 0.22, N = 3SE +/- 0.18, N = 3SE +/- 1.31, N = 3SE +/- 0.06, N = 380.09865.30861.6481.2786.731. (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

Pfam Database Search

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

LAMMPS Molecular Dynamics Simulator

Model: Rhodopsin Protein

OpenBenchmarking.orgns/day, More Is BetterLAMMPS Molecular Dynamics Simulator 9Jan2020Model: Rhodopsin ProteinNo LVI MitigationLFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before Indirect BranchLFENCE Before RET0.69551.3912.08652.7823.4775SE +/- 0.006, N = 3SE +/- 0.001, N = 3SE +/- 0.000, N = 3SE +/- 0.005, N = 3SE +/- 0.004, N = 33.0540.2750.2753.0912.9991. (CXX) g++ options: -O3 -rdynamic -ljpeg -lfftw3 -lm

Botan

Test: KASUMI

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

Botan

Test: AES-256

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

Botan

Test: Twofish

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

Botan

Test: Blowfish

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

Botan

Test: CAST-256

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

John The Ripper

Test: Blowfish

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

John The Ripper

Test: MD5

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

GraphicsMagick

Operation: Rotate

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.33Operation: RotateNo LVI MitigationLFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before Indirect BranchLFENCE Before RET160320480640800SE +/- 0.33, N = 3SE +/- 0.67, N = 3SE +/- 8.62, N = 3SE +/- 1.00, N = 37351651627206881. (CC) gcc options: -fopenmp -O3 -pthread -ljpeg -lSM -lICE -lX11 -lbz2 -lxml2 -lz -lm -lpthread

GraphicsMagick

Operation: Resizing

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.33Operation: ResizingNo LVI MitigationLFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before Indirect BranchLFENCE Before RET90180270360450SE +/- 1.73, N = 343765654354351. (CC) gcc options: -fopenmp -O3 -pthread -ljpeg -lSM -lICE -lX11 -lbz2 -lxml2 -lz -lm -lpthread

dav1d

Video Input: Summer Nature 1080p

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

SVT-AV1

Encoder Mode: Enc Mode 8 - Input: 1080p

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

SVT-HEVC

1080p 8-bit YUV To HEVC Video Encode

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

VP9 libvpx Encoding

Speed: Speed 5

OpenBenchmarking.orgFrames Per Second, More Is BetterVP9 libvpx Encoding 1.8.2Speed: Speed 5No LVI MitigationLFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before Indirect BranchLFENCE Before RET612182430SE +/- 0.04, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.03, N = 3SE +/- 0.02, N = 323.862.592.6323.7020.321. (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 EncodingNo LVI MitigationLFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before Indirect BranchLFENCE Before RET1020304050SE +/- 0.49, N = 3SE +/- 0.02, N = 3SE +/- 0.01, N = 3SE +/- 0.28, N = 3SE +/- 0.11, N = 344.5410.5910.8143.5941.301. (CC) gcc options: -ldl -m64 -lm -lpthread -O3 -ffast-math -std=gnu99 -fPIC -fomit-frame-pointer -fno-tree-vectorize

ACES DGEMM

Sustained Floating-Point Rate

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

Coremark

CoreMark Size 666 - Iterations Per Second

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

Himeno Benchmark

Poisson Pressure Solver

OpenBenchmarking.orgMFLOPS, More Is BetterHimeno Benchmark 3.0Poisson Pressure SolverNo LVI MitigationLFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before Indirect BranchLFENCE Before RET8001600240032004000SE +/- 8.50, N = 3SE +/- 0.03, N = 3SE +/- 0.04, N = 3SE +/- 2.74, N = 3SE +/- 2.71, N = 33504.38182.69182.683495.073502.541. (CC) gcc options: -O3 -mavx2

C-Ray

Total Time - 4K, 16 Rays Per Pixel

OpenBenchmarking.orgSeconds, Fewer Is BetterC-Ray 1.1Total Time - 4K, 16 Rays Per PixelNo LVI MitigationLFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before Indirect BranchLFENCE Before RET30060090012001500SE +/- 0.06, N = 3SE +/- 0.84, N = 3SE +/- 0.56, N = 3SE +/- 0.05, N = 3SE +/- 0.02, N = 3160.751235.081234.59160.74161.231. (CC) gcc options: -lm -lpthread -O3

FLAC Audio Encoding

WAV To FLAC

OpenBenchmarking.orgSeconds, Fewer Is BetterFLAC Audio Encoding 1.3.2WAV To FLACNo LVI MitigationLFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before Indirect BranchLFENCE Before RET20406080100SE +/- 0.004, N = 5SE +/- 0.023, N = 5SE +/- 0.094, N = 5SE +/- 0.008, N = 5SE +/- 0.005, N = 58.92297.73297.9418.8799.0061. (CXX) g++ options: -O3 -fvisibility=hidden -lm

LAME MP3 Encoding

WAV To MP3

OpenBenchmarking.orgSeconds, Fewer Is BetterLAME MP3 Encoding 3.100WAV To MP3No LVI MitigationLFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before Indirect BranchLFENCE Before RET20406080100SE +/- 0.004, N = 3SE +/- 0.016, N = 3SE +/- 0.005, N = 3SE +/- 0.003, N = 3SE +/- 0.001, N = 38.64177.14976.7278.7009.3811. (CC) gcc options: -O3 -ffast-math -funroll-loops -fschedule-insns2 -fbranch-count-reg -fforce-addr -pipe -lncurses -lm

OpenSSL

RSA 4096-bit Performance

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

LevelDB

Benchmark: Hot Read

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

LevelDB

Benchmark: Fill Sync

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

LevelDB

Benchmark: Random Read

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

LevelDB

Benchmark: Seek Random

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

PostgreSQL pgbench

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

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 12.0Scaling: Buffer Test - Test: Normal Load - Mode: Read OnlyNo LVI MitigationLFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before Indirect BranchLFENCE Before RET20K40K60K80K100KSE +/- 413.63, N = 3SE +/- 47.38, N = 3SE +/- 54.85, N = 3SE +/- 95.59, N = 3SE +/- 196.17, N = 3109133.8345420.1849296.66107867.87101653.331. (CC) gcc options: -fno-strict-aliasing -fwrapv -O3 -lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -lm

PostgreSQL pgbench

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

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

Redis

Test: GET

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

Sysbench

Test: CPU

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

Facebook RocksDB

Test: Read While Writing

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

Memcached mcperf

Method: Add - Connections: 1

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

Memcached mcperf

Method: Get - Connections: 1

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

Memcached mcperf

Method: Set - Connections: 1

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

Memcached mcperf

Method: Add - Connections: 16

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

LevelDB

Benchmark: Fill Sync

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


Phoronix Test Suite v10.8.5