BSD vs. Linux File-System OS Benchmarks

Tests for a future article.

HTML result view exported from: https://openbenchmarking.org/result/1804185-AR-FILES432150&sor.

BSD vs. Linux File-System OS BenchmarksProcessorMotherboardChipsetMemoryDiskNetworkGraphicsAudioMonitorOSKernelCompilerFile-SystemDesktopDisplay ServerOpenGLScreen ResolutionDisplay DriverHAMMERHAMMER2TrueOS - ZFSFreeBSD 11.1 - ZFSUbuntu 16.04.4 - EXT4Ubuntu 18.04 - EXT4Intel Xeon E3-1280 v5 @ 3.70GHz (4 Cores / 8 Threads)MSI MS-7998 1.0Intel Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Registers16384MBNVME-PCIeIntel PRO/1000 Connection PCH_SPT_I219_V2 7.6.2DragonFly5.2-RELEASE (x86_64)GCC 5.4.1hammerhammer2Intel Xeon E3-1280 v5 @ 3.70GHz (8 Cores)Generic NVMe Devicellvmpipe 16384MBATI (0xaaf0) HDAIntel PRO/1000 ConnectionFreeBSD12.0-CURRENT (x86_64)Lumina 1.4.2X Server 1.18.43.3 Mesa 17.3.1 (LLVM 5.0 256 bits)Clang 6.0.0 (SVN 324090)zfs1024x768Intel PRO/1000 Connection 7.6.1-k11.1-STABLE (x86_64)Clang 6.0.0 (SVN 326565)Intel Xeon E3-1280 v5 @ 4.00GHz (4 Cores / 8 Threads)MSI Z170A SLI PLUS (MS-7998) v1.0 (2.90 BIOS)Intel Sky Lake256GB TOSHIBA-RD400Sapphire AMD Radeon 4096MBRealtek ALC1150Acer B286HKIntel ConnectionUbuntu 16.044.13.0-38-generic (x86_64)Unity 7.4.5modesetting 1.19.54.5 Mesa 17.2.8 (LLVM 5.0.0)GCC 5.4.0 20160609ext43840x2160Intel SkylakeSapphire AMD Radeon RX 470/480 4096MBUbuntu 18.044.15.0-15-generic (x86_64)GNOME Shell 3.28.0modesetting 1.19.64.5 Mesa 18.0.0-rc5 (LLVM 6.0.0)GCC 7.3.0OpenBenchmarking.orgPython Details- HAMMER: Python 2.7.14 + Python 3.6.5- HAMMER2: Python 2.7.14 + Python 3.6.5- TrueOS - ZFS: Python 2.7.14 + Python 3.6.4- FreeBSD 11.1 - ZFS: Python 2.7.14 + Python 3.6.5- Ubuntu 16.04.4 - EXT4: Python 2.7.12 + Python 3.5.2- Ubuntu 18.04 - EXT4: Python 2.7.15rc1 + Python 3.6.5Security Details- HAMMER: Meltdown Mitigation Protection- HAMMER2: Meltdown Mitigation Protection- TrueOS - ZFS: KPTI Protection- FreeBSD 11.1 - ZFS: KPTI Protection- Ubuntu 16.04.4 - EXT4: KPTI + OSB (observable speculation barrier Intel v6) + Full generic retpoline Protection- Ubuntu 18.04 - EXT4: KPTI + __user pointer sanitization + Full generic retpoline ProtectionCompiler Details- Ubuntu 16.04.4 - EXT4: --build=x86_64-linux-gnu --disable-browser-plugin --disable-vtable-verify --disable-werror --enable-checking=release --enable-clocale=gnu --enable-gnu-unique-object --enable-gtk-cairo --enable-java-awt=gtk --enable-java-home --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --enable-libmpx --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multiarch --enable-multilib --enable-nls --enable-objc-gc --enable-plugin --enable-shared --enable-threads=posix --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-abi=m64 --with-arch-32=i686 --with-arch-directory=amd64 --with-default-libstdcxx-abi=new --with-multilib-list=m32,m64,mx32 --with-tune=generic -v - Ubuntu 18.04 - EXT4: --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- Ubuntu 16.04.4 - EXT4, Ubuntu 18.04 - EXT4: NONE / data=ordered,errors=remount-ro,relatime,rwProcessor Details- Ubuntu 16.04.4 - EXT4, Ubuntu 18.04 - EXT4: Scaling Governor: intel_pstate powersave

BSD vs. Linux File-System OS Benchmarkssqlite: Timed SQLite Insertionsdbench: 6compilebench: Compilecompilebench: Initial Createcompilebench: Read Compiled Treepostmark: Disk Transaction Performancebuild-php: Time To Compilepgbench: Buffer Test - Normal Load - Read Writegit: Time To Complete Common Git Commandsosbench: Create FilesHAMMERHAMMER2TrueOS - ZFSFreeBSD 11.1 - ZFSUbuntu 16.04.4 - EXT4Ubuntu 18.04 - EXT433.12813.12143.72193.62252.31195487.834490.208.9833.106.68969.32754.8183.43512.84303087.857106.239.20129.2063.90218.612036.94246.10567.023247136.802307.018.3442.1052.60219.092445.20263.16754.60449189.662348.487.3938.3677.06244.741631.32499.102937.89669772.763249.635.2265.521555.13524.742828.56658183.053575.945.5113.59OpenBenchmarking.org

SQLite

Timed SQLite Insertions

OpenBenchmarking.orgSeconds, Fewer Is BetterSQLite 3.22Timed SQLite InsertionsHAMMER2HAMMERFreeBSD 11.1 - ZFSTrueOS - ZFSUbuntu 18.04 - EXT4Ubuntu 16.04.4 - EXT420406080100SE +/- 0.12, N = 3SE +/- 0.73, N = 6SE +/- 0.07, N = 3SE +/- 0.27, N = 3SE +/- 0.39, N = 3SE +/- 5.24, N = 66.6833.1252.6063.9065.5277.06

Dbench

Client Count: 6

OpenBenchmarking.orgMB/s, More Is BetterDbench 4.0Client Count: 6HAMMER2HAMMERUbuntu 16.04.4 - EXT4FreeBSD 11.1 - ZFSTrueOS - ZFS2004006008001000SE +/- 21.07, N = 6SE +/- 6.35, N = 3SE +/- 0.07, N = 3SE +/- 0.33, N = 3SE +/- 0.42, N = 3969.32813.12244.74219.09218.61

Compile Bench

Test: Compile

OpenBenchmarking.orgMB/s, More Is BetterCompile Bench 0.6Test: CompileFreeBSD 11.1 - ZFSTrueOS - ZFSUbuntu 16.04.4 - EXT4Ubuntu 18.04 - EXT4HAMMER2HAMMER5001000150020002500SE +/- 24.47, N = 3SE +/- 139.50, N = 6SE +/- 11.27, N = 3SE +/- 12.38, N = 3SE +/- 16.08, N = 6SE +/- 2.46, N = 32445.202036.941631.321555.13754.81143.72

Compile Bench

Test: Initial Create

OpenBenchmarking.orgMB/s, More Is BetterCompile Bench 0.6Test: Initial CreateUbuntu 18.04 - EXT4Ubuntu 16.04.4 - EXT4FreeBSD 11.1 - ZFSTrueOS - ZFSHAMMERHAMMER2110220330440550SE +/- 6.44, N = 3SE +/- 8.13, N = 3SE +/- 0.49, N = 3SE +/- 0.14, N = 3SE +/- 11.11, N = 3SE +/- 2.46, N = 3524.74499.10263.16246.10193.6283.43

Compile Bench

Test: Read Compiled Tree

OpenBenchmarking.orgMB/s, More Is BetterCompile Bench 0.6Test: Read Compiled TreeUbuntu 16.04.4 - EXT4Ubuntu 18.04 - EXT4FreeBSD 11.1 - ZFSTrueOS - ZFSHAMMER2HAMMER6001200180024003000SE +/- 11.70, N = 3SE +/- 128.35, N = 3SE +/- 2.85, N = 3SE +/- 25.83, N = 3SE +/- 11.19, N = 3SE +/- 8.38, N = 32937.892828.56754.60567.02512.84252.31

PostMark

Disk Transaction Performance

OpenBenchmarking.orgTPS, More Is BetterPostMark 1.51Disk Transaction PerformanceUbuntu 16.04.4 - EXT4Ubuntu 18.04 - EXT4FreeBSD 11.1 - ZFSTrueOS - ZFSHAMMER2HAMMER14002800420056007000SE +/- 59.33, N = 3SE +/- 99.90, N = 3SE +/- 27.00, N = 3SE +/- 41.67, N = 3SE +/- 305.69, N = 6SE +/- 32.13, N = 4669765814491324730301954gccgccclangclanggccgcc

Timed PHP Compilation

Time To Compile

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed PHP Compilation 7.1.9Time To CompileUbuntu 16.04.4 - EXT4Ubuntu 18.04 - EXT4HAMMERHAMMER2FreeBSD 11.1 - ZFSTrueOS - ZFS306090120150SE +/- 0.20, N = 3SE +/- 0.02, N = 3SE +/- 0.80, N = 3SE +/- 0.41, N = 3SE +/- 0.76, N = 3SE +/- 2.21, N = 372.7683.0587.8387.8589.66136.80-ldl-ldl-lpthread -lz-lpthread -lz-lpthread -lz-lpthread -lz1. (CC) gcc options: -O2 -pedantic -lm

PostgreSQL pgbench

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

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 10.3Scaling: Buffer Test - Test: Normal Load - Mode: Read WriteHAMMER2HAMMERUbuntu 18.04 - EXT4Ubuntu 16.04.4 - EXT4FreeBSD 11.1 - ZFSTrueOS - ZFS15003000450060007500SE +/- 47.67, N = 3SE +/- 124.89, N = 6SE +/- 33.91, N = 3SE +/- 40.40, N = 3SE +/- 72.19, N = 6SE +/- 34.97, N = 47106.234490.203575.943249.632348.482307.01-pthread -lpgfeutils -lpgcommon -lpgport -lpq -lcrypt -lm-fPIC -shared-lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -lm-lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -lm-lpgcommon -lpgport -lcrypt -lm-lpgcommon -lpgport -lcrypt -lm1. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2

Git

Time To Complete Common Git Commands

OpenBenchmarking.orgSeconds, Fewer Is BetterGitTime To Complete Common Git CommandsUbuntu 16.04.4 - EXT4Ubuntu 18.04 - EXT4FreeBSD 11.1 - ZFSTrueOS - ZFSHAMMERHAMMER23691215SE +/- 0.04, N = 3SE +/- 0.04, N = 3SE +/- 0.10, N = 3SE +/- 0.00, N = 3SE +/- 0.04, N = 3SE +/- 0.02, N = 35.225.517.398.348.989.201. Ubuntu 16.04.4 - EXT4: git version 2.7.42. Ubuntu 18.04 - EXT4: git version 2.17.03. FreeBSD 11.1 - ZFS: git version 2.17.04. TrueOS - ZFS: git version 2.16.25. HAMMER: git version 2.16.26. HAMMER2: git version 2.16.2

OSBench

Test: Create Files

OpenBenchmarking.orgus Per Event, Fewer Is BetterOSBenchTest: Create FilesUbuntu 18.04 - EXT4HAMMERFreeBSD 11.1 - ZFSTrueOS - ZFSHAMMER2306090120150SE +/- 0.05, N = 3SE +/- 4.92, N = 6SE +/- 0.19, N = 3SE +/- 0.11, N = 3SE +/- 1.49, N = 313.5933.1038.3642.10129.20-lm-lm-lm-lm1. (CC) gcc options:


Phoronix Test Suite v10.8.4