BSD vs. Linux File-System OS Benchmarks

Tests for a future article.

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

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 InsertionsHAMMERHAMMER2TrueOS - ZFSFreeBSD 11.1 - ZFSUbuntu 16.04.4 - EXT4Ubuntu 18.04 - EXT420406080100SE +/- 0.73, N = 6SE +/- 0.12, N = 3SE +/- 0.27, N = 3SE +/- 0.07, N = 3SE +/- 5.24, N = 6SE +/- 0.39, N = 333.126.6863.9052.6077.0665.52

Dbench

Client Count: 6

OpenBenchmarking.orgMB/s, More Is BetterDbench 4.0Client Count: 6HAMMERHAMMER2TrueOS - ZFSFreeBSD 11.1 - ZFSUbuntu 16.04.4 - EXT42004006008001000SE +/- 6.35, N = 3SE +/- 21.07, N = 6SE +/- 0.42, N = 3SE +/- 0.33, N = 3SE +/- 0.07, N = 3813.12969.32218.61219.09244.74

Compile Bench

Test: Compile

OpenBenchmarking.orgMB/s, More Is BetterCompile Bench 0.6Test: CompileHAMMERHAMMER2TrueOS - ZFSFreeBSD 11.1 - ZFSUbuntu 16.04.4 - EXT4Ubuntu 18.04 - EXT45001000150020002500SE +/- 2.46, N = 3SE +/- 16.08, N = 6SE +/- 139.50, N = 6SE +/- 24.47, N = 3SE +/- 11.27, N = 3SE +/- 12.38, N = 3143.72754.812036.942445.201631.321555.13

Compile Bench

Test: Initial Create

OpenBenchmarking.orgMB/s, More Is BetterCompile Bench 0.6Test: Initial CreateHAMMERHAMMER2TrueOS - ZFSFreeBSD 11.1 - ZFSUbuntu 16.04.4 - EXT4Ubuntu 18.04 - EXT4110220330440550SE +/- 11.11, N = 3SE +/- 2.46, N = 3SE +/- 0.14, N = 3SE +/- 0.49, N = 3SE +/- 8.13, N = 3SE +/- 6.44, N = 3193.6283.43246.10263.16499.10524.74

Compile Bench

Test: Read Compiled Tree

OpenBenchmarking.orgMB/s, More Is BetterCompile Bench 0.6Test: Read Compiled TreeHAMMERHAMMER2TrueOS - ZFSFreeBSD 11.1 - ZFSUbuntu 16.04.4 - EXT4Ubuntu 18.04 - EXT46001200180024003000SE +/- 8.38, N = 3SE +/- 11.19, N = 3SE +/- 25.83, N = 3SE +/- 2.85, N = 3SE +/- 11.70, N = 3SE +/- 128.35, N = 3252.31512.84567.02754.602937.892828.56

PostMark

Disk Transaction Performance

OpenBenchmarking.orgTPS, More Is BetterPostMark 1.51Disk Transaction PerformanceHAMMERHAMMER2TrueOS - ZFSFreeBSD 11.1 - ZFSUbuntu 16.04.4 - EXT4Ubuntu 18.04 - EXT414002800420056007000SE +/- 32.13, N = 4SE +/- 305.69, N = 6SE +/- 41.67, N = 3SE +/- 27.00, N = 3SE +/- 59.33, N = 3SE +/- 99.90, N = 3195430303247449166976581gccgccclangclanggccgcc

Timed PHP Compilation

Time To Compile

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed PHP Compilation 7.1.9Time To CompileHAMMERHAMMER2TrueOS - ZFSFreeBSD 11.1 - ZFSUbuntu 16.04.4 - EXT4Ubuntu 18.04 - EXT4306090120150SE +/- 0.80, N = 3SE +/- 0.41, N = 3SE +/- 2.21, N = 3SE +/- 0.76, N = 3SE +/- 0.20, N = 3SE +/- 0.02, N = 387.8387.85136.8089.6672.7683.05

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 WriteHAMMERHAMMER2TrueOS - ZFSFreeBSD 11.1 - ZFSUbuntu 16.04.4 - EXT4Ubuntu 18.04 - EXT415003000450060007500SE +/- 124.89, N = 6SE +/- 47.67, N = 3SE +/- 34.97, N = 4SE +/- 72.19, N = 6SE +/- 40.40, N = 3SE +/- 33.91, N = 34490.207106.232307.012348.483249.633575.94-fPIC -shared-pthread -lpgfeutils -lpgcommon -lpgport -lpq -lcrypt -lm-lpgcommon -lpgport -lcrypt -lm-lpgcommon -lpgport -lcrypt -lm-lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -lm-lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -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 CommandsHAMMERHAMMER2TrueOS - ZFSFreeBSD 11.1 - ZFSUbuntu 16.04.4 - EXT4Ubuntu 18.04 - EXT43691215SE +/- 0.04, N = 3SE +/- 0.02, N = 3SE +/- 0.00, N = 3SE +/- 0.10, N = 3SE +/- 0.04, N = 3SE +/- 0.04, N = 38.989.208.347.395.225.511. HAMMER: git version 2.16.22. HAMMER2: git version 2.16.23. TrueOS - ZFS: git version 2.16.24. FreeBSD 11.1 - ZFS: git version 2.17.05. Ubuntu 16.04.4 - EXT4: git version 2.7.46. Ubuntu 18.04 - EXT4: git version 2.17.0

OSBench

Test: Create Files

OpenBenchmarking.orgus Per Event, Fewer Is BetterOSBenchTest: Create FilesHAMMERHAMMER2TrueOS - ZFSFreeBSD 11.1 - ZFSUbuntu 18.04 - EXT4306090120150SE +/- 4.92, N = 6SE +/- 1.49, N = 3SE +/- 0.11, N = 3SE +/- 0.19, N = 3SE +/- 0.05, N = 333.10129.2042.1038.3613.59


Phoronix Test Suite v10.8.4