LVI Mitigations

Intel Core 2 Quad Q6600 testing with a MSI MS-7350 v100 (V1.0A BIOS) and MSI NVIDIA GeForce 8600 GT 256MB on EndeavourOS rolling via the Phoronix Test Suite.

HTML result view exported from: https://openbenchmarking.org/result/2003133-VE-2003126NI94&obr_sor=y&obr_hgv=Core2Quad-Q6600&grr&rdt&rro.

LVI MitigationsProcessorMotherboardChipsetMemoryDiskGraphicsAudioMonitorNetworkOSKernelDesktopDisplay ServerDisplay DriverCompilerFile-SystemScreen ResolutionNo LVI MitigationLFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before Indirect BranchLFENCE Before RETCore2Quad-Q6600Intel 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 20200304ext41920x1080Intel Core 2 Quad Q6600 @ 2.40GHz (4 Cores)MSI MS-7350 v100 (V1.0A BIOS)NVIDIA C554096MB320GB Western Digital WD3200AVJS-6MSI NVIDIA GeForce 8600 GT 256MBRealtek ALC888EndeavourOS rolling5.5.8-arch1-1 (x86_64)XfceGCC 9.2.1 20200130 + Clang 9.0.1OpenBenchmarking.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- No LVI Mitigation: --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 - LFENCE Load + Indirect Branch + Ret: --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 - LFENCE After Load: --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 - LFENCE Before Indirect Branch: --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 - LFENCE Before RET: --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 - Core2Quad-Q6600: --disable-libssp --disable-libstdcxx-pch --disable-libunwind-exceptions --disable-werror --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-install-libiberty --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++,d --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --mandir=/usr/share/man --with-isl --with-linker-hash-style=gnu Processor Details- No LVI Mitigation: Scaling Governor: intel_pstate powersave - CPU Microcode: 0xca- LFENCE Load + Indirect Branch + Ret: Scaling Governor: intel_pstate powersave - CPU Microcode: 0xca- LFENCE After Load: Scaling Governor: intel_pstate powersave - CPU Microcode: 0xca- LFENCE Before Indirect Branch: Scaling Governor: intel_pstate powersave - CPU Microcode: 0xca- LFENCE Before RET: Scaling Governor: intel_pstate powersave - CPU Microcode: 0xca- Core2Quad-Q6600: Scaling Governor: acpi-cpufreq schedutil - CPU Microcode: 0xb6Security Details- No LVI Mitigation: 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 - LFENCE Load + Indirect Branch + Ret: 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 - LFENCE After Load: 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 - LFENCE Before Indirect Branch: 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 - LFENCE Before RET: 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 - Core2Quad-Q6600: itlb_multihit: KVM: Mitigation of Split huge pages + l1tf: Mitigation of PTE Inversion; VMX: EPT disabled + mds: Vulnerable: Clear buffers attempted no microcode; SMT disabled + meltdown: Mitigation of PTI + spec_store_bypass: Vulnerable + spectre_v1: Mitigation of usercopy/swapgs barriers and __user pointer sanitization + spectre_v2: Mitigation of Full generic retpoline STIBP: disabled RSB filling + tsx_async_abort: Not affected

LVI Mitigationsmt-dgemm: Sustained Floating-Point Ratec-ray: Total Time - 4K, 16 Rays Per Pixelmcperf: Add - 16mrbayes: Primate Phylogeny Analysissvt-av1: Enc Mode 8 - 1080ppgbench: Buffer Test - Normal Load - Read Onlypgbench: Buffer Test - Normal Load - Read Writevpxenc: Speed 5svt-hevc: 1080p 8-bit YUV To HEVC Video Encodex264: H.264 Video Encodingencode-flac: WAV To FLACjohn-the-ripper: MD5graphics-magick: Resizingrocksdb: Read While Writinggraphics-magick: Rotatehimeno: Poisson Pressure Solverencode-mp3: WAV To MP3dav1d: Summer Nature 1080pjohn-the-ripper: Blowfishmcperf: Set - 1mcperf: Add - 1ipc-benchmark: Unnamed Pipe - 2048smhasher: fasthash32smhasher: fasthash32lammps: Rhodopsin Proteinsmhasher: wyhashsmhasher: wyhashcoremark: CoreMark Size 666 - Iterations Per Secondsmhasher: t1ha0_aes_avx2smhasher: t1ha0_aes_avx2botan: AES-256mcperf: Get - 1botan: Blowfishbotan: Twofishopenssl: RSA 4096-bit Performancebotan: CAST-256botan: KASUMIhmmer: Pfam Database Searchredis: GETipc-benchmark: FIFO Named Pipe - 2048leveldb: Fill Syncleveldb: Fill Syncsysbench: CPUleveldb: Seek Randfftw: Float + SSE - 2D FFT Size 128leveldb: Hot Readleveldb: Rand ReadNo LVI MitigationLFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before Indirect BranchLFENCE Before RETCore2Quad-Q66001.121684160.75274588.580.09413.841109133.8349476337.39772623.8624.4144.548.9224383594379258497353504.3821748.641281.07770374530.774622.1152036139.9736302.883.05430.8715371.58155734.92712440.40639576.774027.591126791.2450.387364.6171217.6143.94094.5345.1722902781.8514820976078.9538863.99744.581362073.4383.4690.1968991235.08269368.6865.2952.13345420.1824225255.4478692.593.7910.5997.7329235265904375165182.68520877.14985.0464668935.869416.71454442205.3971108.260.275199.7661460.0629308.801462129.6322578.17667.163108597.827.03623.626138.113.84311.94730.0582157109.9212815226343.5909160.685210.9633147.05.7465.7940.1991131234.59170035.3861.6352.16949296.6619285470.2147512.633.8810.8197.9419245765911671162182.68075976.72785.9564669868.969923.11506789158.3201108.630.275183.6061459.6430075.832607100.1422536.98656.426112679.327.04123.661138.113.78611.96130.0262290110.9214822066279.4069160.575210.5403179.75.5575.5611.125063160.74081.26613.580107867.8723276489.71745123.7023.8343.598.8794507304359014277203495.0656558.700279.92770473056.173822.3150158871.4166305.003.09144.59415139.16155387.19296747.80939743.374012.193122542.8455.182365.4721217.5143.74294.5565.1902807336.7514420046172.7600.18482.74134.670345693.5353.4581.134689161.23272514.586.72912.156101653.3291486622.93502820.3221.2841.309.0064421284358998056883502.5389659.381273.73763272700.472552.0147564792.4606301.252.99948.44615368.40150838.38817673.13440155.933548.671125504.0449.685361.8571214.9143.33694.3155.7782964800.4214582196140.0120.18475.18435.343331093.8333.8000.065478443.61314078.3401.2720.1832157.390080389.6824884.6210.1044.697975821381947342391158.73379574.75855.19307213919.714265.55286901.02143182.06320278.51523106.3184.671160.342198.568.28527.14242.487816590.0056775551.5578.02022.78187.6308166.65.0424.969OpenBenchmarking.org

ACES DGEMM

Sustained Floating-Point Rate

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

C-Ray

Total Time - 4K, 16 Rays Per Pixel

OpenBenchmarking.orgSeconds, Fewer Is BetterC-Ray 1.1Total Time - 4K, 16 Rays Per PixelLFENCE Load + Indirect Branch + RetLFENCE After LoadCore2Quad-Q6600LFENCE Before RETNo LVI MitigationLFENCE Before Indirect Branch30060090012001500SE +/- 0.84, N = 3SE +/- 0.56, N = 3SE +/- 0.07, N = 3SE +/- 0.02, N = 3SE +/- 0.06, N = 3SE +/- 0.05, N = 31235.081234.59443.61161.23160.75160.741. (CC) gcc options: -lm -lpthread -O3

Memcached mcperf

Method: Add - Connections: 16

OpenBenchmarking.orgOperations Per Second, More Is BetterMemcached mcperf 1.6.0Method: Add - Connections: 16Core2Quad-Q6600LFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before RETNo LVI Mitigation16K32K48K64K80KSE +/- 49.25, N = 3SE +/- 85.00, N = 3SE +/- 120.20, N = 3SE +/- 114.33, N = 3SE +/- 293.57, N = 314078.369368.670035.372514.574588.5-O3-O3-O3-O31. (CC) gcc options: -lm -rdynamic

Timed MrBayes Analysis

Primate Phylogeny Analysis

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

SVT-AV1

Encoder Mode: Enc Mode 8 - Input: 1080p

OpenBenchmarking.orgFrames Per Second, More Is BetterSVT-AV1 0.8Encoder Mode: Enc Mode 8 - Input: 1080pCore2Quad-Q6600LFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before RETLFENCE Before Indirect BranchNo LVI Mitigation48121620SE +/- 0.000, N = 3SE +/- 0.001, N = 3SE +/- 0.003, N = 3SE +/- 0.020, N = 3SE +/- 0.015, N = 3SE +/- 0.012, N = 30.1802.1332.16912.15613.58013.841-O3-O3-O31. (CXX) g++ options: -fPIE -fPIC -pie

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 OnlyCore2Quad-Q6600LFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before RETLFENCE Before Indirect BranchNo LVI Mitigation20K40K60K80K100KSE +/- 263.95, N = 15SE +/- 47.38, N = 3SE +/- 54.85, N = 3SE +/- 196.17, N = 3SE +/- 95.59, N = 3SE +/- 413.63, N = 332157.3945420.1849296.66101653.33107867.87109133.83-O2-O3-O3-O3-O3-O31. (CC) gcc options: -fno-strict-aliasing -fwrapv -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 WriteCore2Quad-Q6600LFENCE Load + Indirect Branch + RetLFENCE After LoadNo LVI MitigationLFENCE Before Indirect BranchLFENCE Before RET14002800420056007000SE +/- 0.93, N = 3SE +/- 71.67, N = 3SE +/- 19.12, N = 3SE +/- 63.09, N = 15SE +/- 42.83, N = 3SE +/- 98.41, N = 3389.685255.455470.216337.406489.726622.94-O3-O3-O3-O3-O31. (CC) gcc options: -fno-strict-aliasing -fwrapv -lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -lm

VP9 libvpx Encoding

Speed: Speed 5

OpenBenchmarking.orgFrames Per Second, More Is BetterVP9 libvpx Encoding 1.8.2Speed: Speed 5LFENCE Load + Indirect Branch + RetLFENCE After LoadCore2Quad-Q6600LFENCE Before RETLFENCE Before Indirect BranchNo LVI Mitigation612182430SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.06, N = 5SE +/- 0.02, N = 3SE +/- 0.03, N = 3SE +/- 0.04, N = 32.592.634.6220.3223.7023.861. (CXX) g++ options: -m64 -lm -lpthread -O3 -fPIC -U_FORTIFY_SOURCE -std=c++11

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 EncodeLFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before RETLFENCE Before Indirect BranchNo LVI Mitigation612182430SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.01, N = 3SE +/- 0.01, N = 3SE +/- 0.03, N = 33.793.8821.2823.8324.411. (CC) gcc options: -O3 -fPIE -fPIC -O2 -pie -rdynamic -lpthread -lrt

x264

H.264 Video Encoding

OpenBenchmarking.orgFrames Per Second, More Is Betterx264 2019-12-17H.264 Video EncodingCore2Quad-Q6600LFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before RETLFENCE Before Indirect BranchNo LVI Mitigation1020304050SE +/- 0.10, N = 15SE +/- 0.02, N = 3SE +/- 0.01, N = 3SE +/- 0.11, N = 3SE +/- 0.28, N = 3SE +/- 0.49, N = 310.1010.5910.8141.3043.5944.54-llsmash -lavformat -lavcodec -lavutil -lswscale1. (CC) gcc options: -ldl -m64 -lm -lpthread -O3 -ffast-math -std=gnu99 -fPIC -fomit-frame-pointer -fno-tree-vectorize

FLAC Audio Encoding

WAV To FLAC

OpenBenchmarking.orgSeconds, Fewer Is BetterFLAC Audio Encoding 1.3.2WAV To FLACLFENCE After LoadLFENCE Load + Indirect Branch + RetCore2Quad-Q6600LFENCE Before RETNo LVI MitigationLFENCE Before Indirect Branch20406080100SE +/- 0.094, N = 5SE +/- 0.023, N = 5SE +/- 0.161, N = 5SE +/- 0.005, N = 5SE +/- 0.004, N = 5SE +/- 0.008, N = 597.94197.73244.6979.0068.9228.879-O3-O3-O2 -logg1. (CXX) g++ options: -fvisibility=hidden -lm

John The Ripper

Test: MD5

OpenBenchmarking.orgReal C/S, More Is BetterJohn The Ripper 1.9.0-jumbo-1Test: MD5LFENCE Load + Indirect Branch + RetLFENCE After LoadCore2Quad-Q6600No LVI MitigationLFENCE Before RETLFENCE Before Indirect Branch100K200K300K400K500KSE +/- 6.67, N = 3SE +/- 10.33, N = 3SE +/- 417.85, N = 3SE +/- 42.78, N = 3SE +/- 520.74, N = 3SE +/- 90.21, N = 3923529245797582438359442128450730-lgmp1. (CC) gcc options: -m64 -lssl -lcrypto -fopenmp -pthread -lm -lz -ldl -lcrypt -lbz2

GraphicsMagick

Operation: Resizing

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.33Operation: ResizingLFENCE Load + Indirect Branch + RetLFENCE After LoadCore2Quad-Q6600LFENCE Before Indirect BranchLFENCE Before RETNo LVI Mitigation90180270360450SE +/- 1.73, N = 36565138435435437-O3-O3-O2 -lwebp -lwebpmux -llcms2 -ltiff -lfreetype -ljasper -lXext -llzma -lzstd-O3-O3-O31. (CC) gcc options: -fopenmp -pthread -ljpeg -lSM -lICE -lX11 -lbz2 -lxml2 -lz -lm -lpthread

Facebook RocksDB

Test: Read While Writing

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

GraphicsMagick

Operation: Rotate

OpenBenchmarking.orgIterations Per Minute, More Is BetterGraphicsMagick 1.3.33Operation: RotateLFENCE After LoadLFENCE Load + Indirect Branch + RetCore2Quad-Q6600LFENCE Before RETLFENCE Before Indirect BranchNo LVI Mitigation160320480640800SE +/- 0.67, N = 3SE +/- 2.19, N = 3SE +/- 1.00, N = 3SE +/- 8.62, N = 3SE +/- 0.33, N = 3162165239688720735-O3-O3-O2 -lwebp -lwebpmux -llcms2 -ltiff -lfreetype -ljasper -lXext -llzma -lzstd-O3-O3-O31. (CC) gcc options: -fopenmp -pthread -ljpeg -lSM -lICE -lX11 -lbz2 -lxml2 -lz -lm -lpthread

Himeno Benchmark

Poisson Pressure Solver

OpenBenchmarking.orgMFLOPS, More Is BetterHimeno Benchmark 3.0Poisson Pressure SolverLFENCE After LoadLFENCE Load + Indirect Branch + RetCore2Quad-Q6600LFENCE Before Indirect BranchLFENCE Before RETNo LVI Mitigation8001600240032004000SE +/- 0.04, N = 3SE +/- 0.03, N = 3SE +/- 1.30, N = 3SE +/- 2.74, N = 3SE +/- 2.71, N = 3SE +/- 8.50, N = 3182.68182.691158.733495.073502.543504.38-mavx2-mavx2-mavx21. (CC) gcc options: -O3

LAME MP3 Encoding

WAV To MP3

OpenBenchmarking.orgSeconds, Fewer Is BetterLAME MP3 Encoding 3.100WAV To MP3LFENCE Load + Indirect Branch + RetLFENCE After LoadCore2Quad-Q6600LFENCE Before RETLFENCE Before Indirect BranchNo LVI Mitigation20406080100SE +/- 0.016, N = 3SE +/- 0.005, N = 3SE +/- 0.069, N = 3SE +/- 0.001, N = 3SE +/- 0.003, N = 3SE +/- 0.004, N = 377.14976.72774.7589.3818.7008.641-O3 -ffast-math -funroll-loops -fschedule-insns2 -fbranch-count-reg -fforce-addr -pipe-O3 -ffast-math -funroll-loops -fschedule-insns2 -fbranch-count-reg -fforce-addr -pipe1. (CC) gcc options: -lncurses -lm

dav1d

Video Input: Summer Nature 1080p

OpenBenchmarking.orgFPS, More Is Betterdav1d 0.6.0Video Input: Summer Nature 1080pCore2Quad-Q6600LFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before RETLFENCE Before Indirect BranchNo LVI Mitigation60120180240300SE +/- 0.09, N = 3SE +/- 0.06, N = 3SE +/- 0.04, N = 3SE +/- 0.44, N = 3SE +/- 0.43, N = 3SE +/- 0.44, N = 355.1985.0485.95273.73279.92281.07MIN: 48.65 / MAX: 59.29-O3 - MIN: 78.13 / MAX: 96.33-O3 - MIN: 78.9 / MAX: 97.75-O3 - MIN: 248.49 / MAX: 298.86-O3 - MIN: 254.67 / MAX: 306.05-O3 - MIN: 263 / MAX: 305.721. (CC) gcc options: -pthread

John The Ripper

Test: Blowfish

OpenBenchmarking.orgReal C/S, More Is BetterJohn The Ripper 1.9.0-jumbo-1Test: BlowfishLFENCE Load + Indirect Branch + RetLFENCE After LoadCore2Quad-Q6600LFENCE Before RETNo LVI MitigationLFENCE Before Indirect Branch17003400510068008500SE +/- 3.18, N = 3SE +/- 1.45, N = 3SE +/- 0.88, N = 36466463072763277037704-lgmp1. (CC) gcc options: -m64 -lssl -lcrypto -fopenmp -pthread -lm -lz -ldl -lcrypt -lbz2

Memcached mcperf

Method: Set - Connections: 1

OpenBenchmarking.orgOperations Per Second, More Is BetterMemcached mcperf 1.6.0Method: Set - Connections: 1Core2Quad-Q6600LFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before RETLFENCE Before Indirect BranchNo LVI Mitigation16K32K48K64K80KSE +/- 56.59, N = 3SE +/- 383.89, N = 3SE +/- 157.67, N = 3SE +/- 129.57, N = 3SE +/- 149.20, N = 3SE +/- 403.77, N = 313919.768935.869868.972700.473056.174530.7-O3-O3-O3-O3-O31. (CC) gcc options: -lm -rdynamic

Memcached mcperf

Method: Add - Connections: 1

OpenBenchmarking.orgOperations Per Second, More Is BetterMemcached mcperf 1.6.0Method: Add - Connections: 1Core2Quad-Q6600LFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before RETLFENCE Before Indirect BranchNo LVI Mitigation16K32K48K64K80KSE +/- 45.94, N = 3SE +/- 115.20, N = 3SE +/- 120.28, N = 3SE +/- 475.38, N = 3SE +/- 230.88, N = 3SE +/- 110.28, N = 314265.569416.769923.172552.073822.374622.1-O3-O3-O3-O3-O31. (CC) gcc options: -lm -rdynamic

IPC_benchmark

Type: Unnamed Pipe - Message Bytes: 2048

OpenBenchmarking.orgMessages Per Second, More Is BetterIPC_benchmarkType: Unnamed Pipe - Message Bytes: 2048Core2Quad-Q6600LFENCE Load + Indirect Branch + RetLFENCE Before RETLFENCE Before Indirect BranchLFENCE After LoadNo LVI Mitigation300K600K900K1200K1500KSE +/- 11701.09, N = 15SE +/- 24328.97, N = 15SE +/- 22792.63, N = 13SE +/- 14185.23, N = 10SE +/- 5934.66, N = 3SE +/- 23319.71, N = 352869014544421475647150158815067891520361

SMHasher

Hash: fasthash32

OpenBenchmarking.orgcycles/hash, Fewer Is BetterSMHasher 2020-02-29Hash: fasthash32LFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before RETLFENCE Before Indirect BranchNo LVI Mitigation50100150200250SE +/- 0.01, N = 3SE +/- 0.01, N = 3SE +/- 0.02, N = 3SE +/- 0.01, N = 3SE +/- 0.01, N = 3205.40158.3292.4671.4239.971. (CXX) g++ options: -O3 -march=native -lpthread

SMHasher

Hash: fasthash32

OpenBenchmarking.orgMiB/sec, More Is BetterSMHasher 2020-02-29Hash: fasthash32LFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before RETNo LVI MitigationLFENCE Before Indirect Branch14002800420056007000SE +/- 0.06, N = 3SE +/- 0.06, N = 3SE +/- 2.59, N = 3SE +/- 4.58, N = 3SE +/- 2.33, N = 31108.261108.636301.256302.886305.001. (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 ProteinLFENCE Load + Indirect Branch + RetLFENCE After LoadCore2Quad-Q6600LFENCE Before RETNo LVI MitigationLFENCE Before Indirect Branch0.69551.3912.08652.7823.4775SE +/- 0.001, N = 3SE +/- 0.000, N = 3SE +/- 0.000, N = 3SE +/- 0.004, N = 3SE +/- 0.006, N = 3SE +/- 0.005, N = 30.2750.2751.0212.9993.0543.091-lpng -lz1. (CXX) g++ options: -O3 -rdynamic -ljpeg -lfftw3 -lm

SMHasher

Hash: wyhash

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

SMHasher

Hash: wyhash

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

Coremark

CoreMark Size 666 - Iterations Per Second

OpenBenchmarking.orgIterations/Sec, More Is BetterCoremark 1.0CoreMark Size 666 - Iterations Per SecondLFENCE Load + Indirect Branch + RetLFENCE After LoadCore2Quad-Q6600LFENCE Before RETLFENCE Before Indirect BranchNo LVI Mitigation30K60K90K120K150KSE +/- 3.16, N = 3SE +/- 15.75, N = 3SE +/- 78.51, N = 3SE +/- 696.48, N = 3SE +/- 406.60, N = 3SE +/- 594.80, N = 329308.8030075.8343182.06150838.39155387.19155734.93-O3-O3-O31. (CC) gcc options: -O2 -lrt" -lrt

SMHasher

Hash: t1ha0_aes_avx2

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

SMHasher

Hash: t1ha0_aes_avx2

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

Botan

Test: AES-256

OpenBenchmarking.orgMiB/s, More Is BetterBotan 2.13.0Test: AES-256Core2Quad-Q6600LFENCE After LoadLFENCE Load + Indirect Branch + RetLFENCE Before RETLFENCE Before Indirect BranchNo LVI Mitigation9001800270036004500SE +/- 0.12, N = 3SE +/- 0.42, N = 3SE +/- 0.03, N = 3SE +/- 0.17, N = 3SE +/- 0.68, N = 3SE +/- 3.22, N = 378.52656.43667.163548.674012.194027.591. (CXX) g++ options: -fstack-protector -m64 -pthread -lbotan-2 -ldl -lrt

Memcached mcperf

Method: Get - Connections: 1

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

Botan

Test: Blowfish

OpenBenchmarking.orgMiB/s, More Is BetterBotan 2.13.0Test: BlowfishLFENCE Load + Indirect Branch + RetLFENCE After LoadCore2Quad-Q6600LFENCE Before RETNo LVI MitigationLFENCE Before Indirect Branch100200300400500SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.18, N = 3SE +/- 0.09, N = 3SE +/- 4.11, N = 3SE +/- 0.10, N = 327.0427.04184.67449.69450.39455.181. (CXX) g++ options: -fstack-protector -m64 -pthread -lbotan-2 -ldl -lrt

Botan

Test: Twofish

OpenBenchmarking.orgMiB/s, More Is BetterBotan 2.13.0Test: TwofishLFENCE Load + Indirect Branch + RetLFENCE After LoadCore2Quad-Q6600LFENCE Before RETNo LVI MitigationLFENCE Before Indirect Branch80160240320400SE +/- 0.02, N = 3SE +/- 0.00, N = 3SE +/- 0.06, N = 3SE +/- 0.26, N = 3SE +/- 0.27, N = 3SE +/- 0.01, N = 323.6323.66160.34361.86364.62365.471. (CXX) g++ options: -fstack-protector -m64 -pthread -lbotan-2 -ldl -lrt

OpenSSL

RSA 4096-bit Performance

OpenBenchmarking.orgSigns Per Second, More Is BetterOpenSSL 1.1.1RSA 4096-bit PerformanceLFENCE Load + Indirect Branch + RetLFENCE After LoadCore2Quad-Q6600LFENCE Before RETLFENCE Before Indirect BranchNo LVI Mitigation30060090012001500SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.06, N = 3SE +/- 0.70, N = 3SE +/- 0.63, N = 3SE +/- 1.65, N = 3138.1138.1198.51214.91217.51217.61. (CC) gcc options: -pthread -m64 -O3 -lssl -lcrypto -ldl

Botan

Test: CAST-256

OpenBenchmarking.orgMiB/s, More Is BetterBotan 2.13.0Test: CAST-256LFENCE After LoadLFENCE Load + Indirect Branch + RetCore2Quad-Q6600LFENCE Before RETLFENCE Before Indirect BranchNo LVI Mitigation306090120150SE +/- 0.01, N = 3SE +/- 0.00, N = 3SE +/- 0.07, N = 3SE +/- 0.06, N = 3SE +/- 0.21, N = 3SE +/- 0.02, N = 313.7913.8468.29143.34143.74143.941. (CXX) g++ options: -fstack-protector -m64 -pthread -lbotan-2 -ldl -lrt

Botan

Test: KASUMI

OpenBenchmarking.orgMiB/s, More Is BetterBotan 2.13.0Test: KASUMILFENCE Load + Indirect Branch + RetLFENCE After LoadCore2Quad-Q6600LFENCE Before RETNo LVI MitigationLFENCE Before Indirect Branch20406080100SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.02, N = 3SE +/- 0.04, N = 3SE +/- 0.02, N = 3SE +/- 0.05, N = 311.9511.9627.1494.3294.5394.561. (CXX) g++ options: -fstack-protector -m64 -pthread -lbotan-2 -ldl -lrt

Timed HMMer Search

Pfam Database Search

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed HMMer Search 2.3.2Pfam Database SearchCore2Quad-Q6600LFENCE Load + Indirect Branch + RetLFENCE After LoadLFENCE Before RETLFENCE Before Indirect BranchNo LVI Mitigation1020304050SE +/- 0.228, N = 3SE +/- 0.047, N = 3SE +/- 0.079, N = 3SE +/- 0.053, N = 3SE +/- 0.020, N = 3SE +/- 0.005, N = 342.48730.05830.0265.7785.1905.172-O2-O3-O31. (CC) gcc options: -pthread -lhmmer -lsquid -lm

Redis

Test: GET

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

IPC_benchmark

Type: FIFO Named Pipe - Message Bytes: 2048

OpenBenchmarking.orgMessages Per Second, More Is BetterIPC_benchmarkType: FIFO Named Pipe - Message Bytes: 2048Core2Quad-Q6600LFENCE Load + Indirect Branch + RetLFENCE Before Indirect BranchLFENCE Before RETNo LVI MitigationLFENCE After Load300K600K900K1200K1500KSE +/- 9551.92, N = 12SE +/- 15759.80, N = 3SE +/- 6206.38, N = 3SE +/- 22765.74, N = 3SE +/- 6688.93, N = 3SE +/- 23424.58, N = 356775512815221442004145821914820971482206

LevelDB

Benchmark: Fill Sync

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

LevelDB

Benchmark: Fill Sync

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

Sysbench

Test: CPU

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

LevelDB

Benchmark: Seek Random

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Seek RandomLFENCE Load + Indirect Branch + RetLFENCE After LoadCore2Quad-Q6600LFENCE Before RETLFENCE Before Indirect BranchNo LVI Mitigation3691215SE +/- 0.039, N = 3SE +/- 0.039, N = 3SE +/- 0.030, N = 3SE +/- 0.045, N = 3SE +/- 0.034, N = 3SE +/- 0.013, N = 310.96310.5407.6305.3434.6704.5811. (CXX) g++ options: -O3 -lsnappy -lpthread

FFTW

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

OpenBenchmarking.orgMflops, More Is BetterFFTW 3.3.6Build: Float + SSE - Size: 2D FFT Size 128LFENCE Load + Indirect Branch + RetLFENCE After LoadCore2Quad-Q6600LFENCE Before RETLFENCE Before Indirect BranchNo LVI Mitigation8K16K24K32K40KSE +/- 5.21, N = 3SE +/- 2.37, N = 3SE +/- 77.64, N = 3SE +/- 402.02, N = 6SE +/- 335.87, N = 3SE +/- 457.98, N = 33147.03179.78166.633109.034569.036207.0-fomit-frame-pointer -mtune=native -malign-double -fstrict-aliasing -fno-schedule-insns -ffast-math1. (CC) gcc options: -pthread -O3 -lm

LevelDB

Benchmark: Hot Read

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Hot ReadLFENCE Load + Indirect Branch + RetLFENCE After LoadCore2Quad-Q6600LFENCE Before RETLFENCE Before Indirect BranchNo LVI Mitigation1.29292.58583.87875.17166.4645SE +/- 0.011, N = 3SE +/- 0.011, N = 3SE +/- 0.066, N = 3SE +/- 0.016, N = 3SE +/- 0.029, N = 3SE +/- 0.010, N = 35.7465.5575.0423.8333.5353.4381. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Random Read

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Random ReadLFENCE Load + Indirect Branch + RetLFENCE After LoadCore2Quad-Q6600LFENCE Before RETNo LVI MitigationLFENCE Before Indirect Branch1.30372.60743.91115.21486.5185SE +/- 0.007, N = 3SE +/- 0.001, N = 3SE +/- 0.043, N = 3SE +/- 0.036, N = 3SE +/- 0.003, N = 3SE +/- 0.034, N = 35.7945.5614.9693.8003.4693.4581. (CXX) g++ options: -O3 -lsnappy -lpthread


Phoronix Test Suite v10.8.5