Spectre V4 SSBD Intel Core i7 Ubuntu Linux Speculative Store Bypass Disable (SSBD) benchmarks for Spectre V4 with Ubuntu Linux on Intel Core i7 with updated microcode. Benchmarks by Michael Larabel for a future article..
HTML result view exported from: https://openbenchmarking.org/result/1807032-AR-SPECTREV417&sro&grr .
Spectre V4 SSBD Intel Core i7 Ubuntu Linux Processor Motherboard Chipset Memory Disk Graphics Audio Monitor Network OS Kernel Desktop Display Server Display Driver OpenGL Compiler File-System Screen Resolution Vulnerable SSBD On Intel Core i7-8086K @ 5.00GHz (6 Cores / 12 Threads) ASUS PRIME Z370-A (0809 BIOS) Intel Device 3ec2 16384MB 525GB SABRENT + 118GB INTEL SSDPEK1W120GA AMD Radeon RX Vega 8192MB Realtek ALC1220 DELL P2415Q Intel Connection Ubuntu 18.04 4.18.0-999-generic (x86_64) 20180701 GNOME Shell 3.28.1 X Server 1.19.6 modesetting 1.19.6 4.5 Mesa 18.2.0-devel- padoka PPA (LLVM 7.0.0) GCC 7.3.0 ext4 3840x2160 OpenBenchmarking.org 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++ --enable-libmpx --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multiarch --enable-multilib --enable-nls --enable-objc-gc=auto --enable-offload-targets=nvptx-none --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-as=/usr/bin/x86_64-linux-gnu-as --with-default-libstdcxx-abi=new --with-gcc-major-version-only --with-ld=/usr/bin/x86_64-linux-gnu-ld --with-multilib-list=m32,m64,mx32 --with-target-system-zlib --with-tune=generic --without-cuda-driver -v Disk Details - NONE / errors=remount-ro,relatime,rw Processor Details - Scaling Governor: intel_pstate performance Python Details - Python 2.7.15rc1 + Python 3.6.5 Security Details - Vulnerable: KPTI + __user pointer sanitization + Full generic retpoline IBPB IBRS_FW Protection - SSBD On: KPTI + __user pointer sanitization + Full generic retpoline IBPB IBRS_FW + SSB disabled Protection
Spectre V4 SSBD Intel Core i7 Ubuntu Linux build-gcc: Time To Compile vpxenc: vpxenc build-linux-kernel: Time To Compile hackbench: 16 - Thread schbench: 16 - 2 schbench: 16 - 4 luajit: Composite apache: Static Web Page Serving redis: SET go-benchmark: json go-benchmark: build go-benchmark: garbage x264: H.264 Video Encoding go-benchmark: http osbench: Create Files osbench: Launch Programs osbench: Create Threads git: Time To Complete Common Git Commands compilebench: Read Compiled Tree compilebench: Initial Create Vulnerable SSBD On 692.64 18.87 76.78 46.57 33333 54464 1838.09 37234.45 2425467.21 7219042 11098580174 1491201 72.96 5030 10.87 24.93 10.65 4.35 3782.16 655.58 711.94 18.85 77.89 47.11 33349 54208 1787.94 36730.59 2399475.90 7229187 11803564432 1511156 72.41 5081 10.76 24.95 11.22 4.55 3550.29 645.40 OpenBenchmarking.org
Timed GCC Compilation Time To Compile OpenBenchmarking.org Seconds, Fewer Is Better Timed GCC Compilation 7.2 Time To Compile SSBD On Vulnerable 150 300 450 600 750 SE +/- 0.78, N = 3 SE +/- 0.26, N = 3 711.94 692.64
VP9 libvpx Encoding vpxenc OpenBenchmarking.org Frames Per Second, More Is Better VP9 libvpx Encoding 1.7.0 vpxenc SSBD On Vulnerable 5 10 15 20 25 SE +/- 0.03, N = 3 SE +/- 0.00, N = 3 18.85 18.87 1. (CXX) g++ options: -m64 -lm -lpthread -O3 -fPIC -U_FORTIFY_SOURCE
Timed Linux Kernel Compilation Time To Compile OpenBenchmarking.org Seconds, Fewer Is Better Timed Linux Kernel Compilation 4.13 Time To Compile SSBD On Vulnerable 20 40 60 80 100 SE +/- 0.65, N = 3 SE +/- 0.53, N = 3 77.89 76.78
Hackbench Count: 16 - Type: Thread OpenBenchmarking.org Seconds, Fewer Is Better Hackbench Count: 16 - Type: Thread SSBD On Vulnerable 11 22 33 44 55 SE +/- 0.76, N = 6 SE +/- 0.05, N = 3 47.11 46.57 1. (CC) gcc options: -lpthread
Schbench Message Threads: 16 - Workers Per Message Thread: 2 OpenBenchmarking.org usec, 99.9th Latency Percentile, Fewer Is Better Schbench Message Threads: 16 - Workers Per Message Thread: 2 SSBD On Vulnerable 7K 14K 21K 28K 35K SE +/- 432.21, N = 6 SE +/- 401.53, N = 3 33349 33333 1. (CC) gcc options: -O2 -lpthread
Schbench Message Threads: 16 - Workers Per Message Thread: 4 OpenBenchmarking.org usec, 99.9th Latency Percentile, Fewer Is Better Schbench Message Threads: 16 - Workers Per Message Thread: 4 SSBD On Vulnerable 12K 24K 36K 48K 60K SE +/- 391.05, N = 3 SE +/- 899.04, N = 3 54208 54464 1. (CC) gcc options: -O2 -lpthread
LuaJIT Test: Composite OpenBenchmarking.org Mflops, More Is Better LuaJIT 2.0.5 Test: Composite SSBD On Vulnerable 400 800 1200 1600 2000 SE +/- 0.79, N = 3 SE +/- 2.23, N = 3 1787.94 1838.09 1. (CC) gcc options: -lm -ldl -O2 -fomit-frame-pointer -U_FORTIFY_SOURCE -fno-stack-protector
Apache Benchmark Static Web Page Serving OpenBenchmarking.org Requests Per Second, More Is Better Apache Benchmark 2.4.29 Static Web Page Serving SSBD On Vulnerable 8K 16K 24K 32K 40K SE +/- 132.09, N = 3 SE +/- 58.88, N = 3 36730.59 37234.45 1. (CC) gcc options: -shared -fPIC -O2 -pthread
Redis Test: SET OpenBenchmarking.org Requests Per Second, More Is Better Redis 4.0.8 Test: SET SSBD On Vulnerable 500K 1000K 1500K 2000K 2500K SE +/- 102625.98, N = 6 SE +/- 53130.12, N = 6 2399475.90 2425467.21 1. (CC) gcc options: -ggdb -rdynamic -lm -ldl -pthread
Go Benchmarks Test: json OpenBenchmarking.org Nanoseconds/Operation, Fewer Is Better Go Benchmarks Test: json SSBD On Vulnerable 1.5M 3M 4.5M 6M 7.5M SE +/- 9739.65, N = 3 SE +/- 3492.67, N = 3 7229187 7219042
Go Benchmarks Test: build OpenBenchmarking.org Nanoseconds/Operation, Fewer Is Better Go Benchmarks Test: build SSBD On Vulnerable 3000M 6000M 9000M 12000M 15000M SE +/- 57073938.53, N = 3 SE +/- 18979107.42, N = 3 11803564432 11098580174
Go Benchmarks Test: garbage OpenBenchmarking.org Nanoseconds/Operation, Fewer Is Better Go Benchmarks Test: garbage SSBD On Vulnerable 300K 600K 900K 1200K 1500K SE +/- 3054.32, N = 3 SE +/- 728.46, N = 3 1511156 1491201
x264 H.264 Video Encoding OpenBenchmarking.org Frames Per Second, More Is Better x264 2018-02-05 H.264 Video Encoding SSBD On Vulnerable 16 32 48 64 80 SE +/- 0.40, N = 3 SE +/- 0.20, N = 3 72.41 72.96 1. (CC) gcc options: -ldl -m64 -lm -lpthread -O3 -ffast-math -std=gnu99 -fPIC -fomit-frame-pointer -fno-tree-vectorize
Go Benchmarks Test: http OpenBenchmarking.org Nanoseconds/Operation, Fewer Is Better Go Benchmarks Test: http SSBD On Vulnerable 1100 2200 3300 4400 5500 SE +/- 2.52, N = 3 SE +/- 1.20, N = 3 5081 5030
OSBench Test: Create Files OpenBenchmarking.org us Per Event, Fewer Is Better OSBench Test: Create Files SSBD On Vulnerable 3 6 9 12 15 SE +/- 0.01, N = 3 SE +/- 0.03, N = 3 10.76 10.87 1. (CC) gcc options: -lm
OSBench Test: Launch Programs OpenBenchmarking.org us Per Event, Fewer Is Better OSBench Test: Launch Programs SSBD On Vulnerable 6 12 18 24 30 SE +/- 0.09, N = 3 SE +/- 0.04, N = 3 24.95 24.93 1. (CC) gcc options: -lm
OSBench Test: Create Threads OpenBenchmarking.org us Per Event, Fewer Is Better OSBench Test: Create Threads SSBD On Vulnerable 3 6 9 12 15 SE +/- 0.21, N = 3 SE +/- 0.08, N = 3 11.22 10.65 1. (CC) gcc options: -lm
Git Time To Complete Common Git Commands OpenBenchmarking.org Seconds, Fewer Is Better Git Time To Complete Common Git Commands SSBD On Vulnerable 1.0238 2.0476 3.0714 4.0952 5.119 SE +/- 0.05, N = 3 SE +/- 0.09, N = 3 4.55 4.35 1. git version 2.17.1
Compile Bench Test: Read Compiled Tree OpenBenchmarking.org MB/s, More Is Better Compile Bench 0.6 Test: Read Compiled Tree SSBD On Vulnerable 800 1600 2400 3200 4000 SE +/- 15.44, N = 3 SE +/- 17.49, N = 3 3550.29 3782.16
Compile Bench Test: Initial Create OpenBenchmarking.org MB/s, More Is Better Compile Bench 0.6 Test: Initial Create SSBD On Vulnerable 140 280 420 560 700 SE +/- 4.74, N = 3 SE +/- 5.05, N = 3 645.40 655.58
Phoronix Test Suite v10.8.5