Linux 5.14 SSD File-System Benchmarks

Linux 5.14 kernel SSD file-system benchmarks on WD_BLACK SN850 NVMe solid-state drive. Benchmarks by Michael Larabel for a future article.

Compare your own system(s) to this result file with the Phoronix Test Suite by running the command: phoronix-test-suite benchmark 2108260-PTS-SSDS978300
Jump To Table - Results

View

Do Not Show Noisy Results
Do Not Show Results With Incomplete Data
Do Not Show Results With Little Change/Spread
List Notable Results
Show Result Confidence Charts

Limit displaying results to tests within:

CPU Massive 2 Tests
Database Test Suite 3 Tests
Disk Test Suite 4 Tests
Multi-Core 2 Tests
Server 3 Tests

Statistics

Show Overall Harmonic Mean(s)
Show Overall Geometric Mean
Show Geometric Means Per-Suite/Category
Show Wins / Losses Counts (Pie Chart)
Normalize Results
Remove Outliers Before Calculating Averages

Graph Settings

Force Line Graphs Where Applicable
Convert To Scalar Where Applicable
Prefer Vertical Bar Graphs

Multi-Way Comparison

Condense Multi-Option Tests Into Single Result Graphs

Table

Show Detailed System Result Table

Run Management

Highlight
Result
Hide
Result
Result
Identifier
Performance Per
Dollar
Date
Run
  Test
  Duration
F2FS
August 23 2021
  4 Hours, 4 Minutes
Btrfs
August 24 2021
  2 Hours, 20 Minutes
EXT4
August 24 2021
  2 Hours, 43 Minutes
XFS
August 24 2021
  2 Hours, 48 Minutes
Invert Hiding All Results Option
  2 Hours, 58 Minutes

Only show results where is faster than
Only show results matching title/arguments (delimit multiple options with a comma):
Do not show results matching title/arguments (delimit multiple options with a comma):


Linux 5.14 SSD File-System BenchmarksOpenBenchmarking.orgPhoronix Test SuiteAMD Ryzen 9 5900X 12-Core @ 3.70GHz (12 Cores / 24 Threads)ASUS ROG CROSSHAIR VIII HERO (3501 BIOS)AMD Starship/Matisse16GB1000GB Western Digital WD_BLACK SN850 1TB + 1000GB Western Digital WDS100T1X0E-00AFY0AMD DIMGREY_CAVEFISH 8GB (2900/1000MHz)AMD Device ab28ASUS VP28URealtek RTL8125 2.5GbE + Intel I211Ubuntu 20.045.14.0-051400rc7-generic (x86_64) 20210822GNOME Shell 3.36.9X Server 1.20.114.6 Mesa 21.3.0-devel (git-2b4b310 2021-08-21 focal-oibaf-ppa) (LLVM 12.0.1)1.2.185GCC 9.3.0f2fsbtrfsext4xfs3840x2160ProcessorMotherboardChipsetMemoryDiskGraphicsAudioMonitorNetworkOSKernelDesktopDisplay ServerOpenGLVulkanCompilerFile-SystemsScreen ResolutionLinux 5.14 SSD File-System Benchmarks PerformanceSystem Logs- Transparent Huge Pages: madvise- --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=/build/gcc-9-HskZEa/gcc-9-9.3.0/debian/tmp-nvptx/usr,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 - F2FS: NONE / acl,active_logs=6,alloc_mode=default,background_gc=on,checkpoint_merge,discard,extent_cache,flush_merge,fsync_mode=posix,inline_data,inline_dentry,inline_xattr,lazytime,mode=adaptive,no_heap,relatime,rw,user_xattr / Block Size: 4096 - Btrfs: NONE / relatime,rw,space_cache,ssd,subvol=/,subvolid=5 / Block Size: 4096- EXT4: NONE / relatime,rw / Block Size: 4096- XFS: NONE / attr2,inode64,logbsize=32k,logbufs=8,noquota,relatime,rw / Block Size: 4096- Scaling Governor: acpi-cpufreq ondemand (Boost: Enabled) - CPU Microcode: 0xa201009- itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + 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 AMD retpoline IBPB: conditional IBRS_FW STIBP: always-on RSB filling + srbds: Not affected + tsx_async_abort: Not affected

F2FSBtrfsEXT4XFSResult OverviewPhoronix Test Suite100%121%142%163%185%DbenchFlexible IO TesterPostgreSQL pgbenchFS-MarkSQLiteMariaDBIOR

Linux 5.14 SSD File-System Benchmarksdbench: 6fio: Rand Read - IO_uring - No - Yes - 4KB - Default Test Directoryfio: Rand Write - IO_uring - No - Yes - 4KB - Default Test Directoryfio: Seq Read - IO_uring - No - Yes - 2MB - Default Test Directoryfio: Seq Write - IO_uring - No - Yes - 2MB - Default Test Directoryfs-mark: 1000 Files, 1MB Sizefs-mark: 5000 Files, 1MB Size, 4 Threadsfs-mark: 4000 Files, 32 Sub Dirs, 1MB Sizeior: 16MB - Default Test Directorymysqlslap: 128mysqlslap: 256mysqlslap: 512pgbench: 100 - 50 - Read Writepgbench: 100 - 50 - Read Write - Average Latencypgbench: 1000 - 50 - Read Onlypgbench: 1000 - 50 - Read Only - Average Latencypgbench: 1000 - 50 - Read Writepgbench: 1000 - 50 - Read Write - Average Latencysqlite: 1sqlite: 8F2FSBtrfsEXT4XFS3234.57753667285000359116351190.52491.71193.52291.221081841779410831.2172910110.172344391.4529.12718.1722005.6555433314333332531633872.21841.0859.22291.05856725706243562.0533113790.161203612.45613.38524.3452474.1576000071200035911634843.01798.9838.52091.141037791748412001.2143385990.148294551.7607.22128.7781751.8175566771566735931635827.21774.5829.42445.031025799751416461.2013400830.147370591.3508.27438.910OpenBenchmarking.org

Dbench

Dbench is a benchmark designed by the Samba project as a free alternative to netbench, but dbench contains only file-system calls for testing the disk performance. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgMB/s, More Is BetterDbench 4.0Client Count: 6XFSEXT4BtrfsF2FS7001400210028003500SE +/- 0.28, N = 3SE +/- 1.03, N = 3SE +/- 3.25, N = 3SE +/- 92.55, N = 91751.812474.152005.653234.571. (CC) gcc options: -lpopt -O2

Flexible IO Tester

FIO, the Flexible I/O Tester, is an advanced Linux disk benchmark supporting multiple I/O engines and a wealth of options. FIO was written by Jens Axboe for testing of the Linux I/O subsystem and schedulers. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.25Type: Random Read - Engine: IO_uring - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test DirectoryXFSEXT4BtrfsF2FS160K320K480K640K800KSE +/- 3756.48, N = 3SE +/- 4725.82, N = 3SE +/- 2905.93, N = 3SE +/- 9333.33, N = 37556677600005543337536671. (CC) gcc options: -rdynamic -ll -lnuma -lrt -lz -lpthread -lm -ldl -laio -lcurl -lssl -lcrypto -std=gnu99 -ffast-math -include -O3 -fcommon -U_FORTIFY_SOURCE -march=native

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.25Type: Random Write - Engine: IO_uring - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test DirectoryXFSEXT4BtrfsF2FS150K300K450K600K750KSE +/- 2027.59, N = 3SE +/- 1527.53, N = 3SE +/- 1201.85, N = 3SE +/- 1527.53, N = 37156677120001433332850001. (CC) gcc options: -rdynamic -ll -lnuma -lrt -lz -lpthread -lm -ldl -laio -lcurl -lssl -lcrypto -std=gnu99 -ffast-math -include -O3 -fcommon -U_FORTIFY_SOURCE -march=native

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 3.25Type: Sequential Read - Engine: IO_uring - Buffered: No - Direct: Yes - Block Size: 2MB - Disk Target: Default Test DirectoryXFSEXT4BtrfsF2FS8001600240032004000SE +/- 0.88, N = 3SE +/- 39.61, N = 335933591325335911. (CC) gcc options: -rdynamic -ll -lnuma -lrt -lz -lpthread -lm -ldl -laio -lcurl -lssl -lcrypto -std=gnu99 -ffast-math -include -O3 -fcommon -U_FORTIFY_SOURCE -march=native

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.25Type: Sequential Write - Engine: IO_uring - Buffered: No - Direct: Yes - Block Size: 2MB - Disk Target: Default Test DirectoryXFSEXT4BtrfsF2FS400800120016002000SE +/- 1.20, N = 3SE +/- 0.33, N = 3SE +/- 0.58, N = 3SE +/- 0.33, N = 316351634163316351. (CC) gcc options: -rdynamic -ll -lnuma -lrt -lz -lpthread -lm -ldl -laio -lcurl -lssl -lcrypto -std=gnu99 -ffast-math -include -O3 -fcommon -U_FORTIFY_SOURCE -march=native

FS-Mark

FS_Mark is designed to test a system's file-system performance. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 1000 Files, 1MB SizeXFSEXT4BtrfsF2FS30060090012001500SE +/- 3.19, N = 3SE +/- 1.01, N = 3SE +/- 3.88, N = 3SE +/- 3.32, N = 3827.2843.0872.21190.51. (CC) gcc options: -static

OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 5000 Files, 1MB Size, 4 ThreadsXFSEXT4BtrfsF2FS5001000150020002500SE +/- 6.06, N = 3SE +/- 1.24, N = 3SE +/- 21.56, N = 3SE +/- 5.37, N = 31774.51798.91841.02491.71. (CC) gcc options: -static

OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 4000 Files, 32 Sub Dirs, 1MB SizeXFSEXT4BtrfsF2FS30060090012001500SE +/- 3.22, N = 3SE +/- 2.67, N = 3SE +/- 2.65, N = 3SE +/- 3.23, N = 3829.4838.5859.21193.51. (CC) gcc options: -static

IOR

IOR is a parallel I/O storage benchmark making use of MPI with a particular focus on HPC (High Performance Computing) systems. IOR is developed at the Lawrence Livermore National Laboratory (LLNL). Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgMB/s, More Is BetterIOR 3.3.0Block Size: 16MB - Disk Target: Default Test DirectoryXFSEXT4BtrfsF2FS5001000150020002500SE +/- 32.57, N = 3SE +/- 6.33, N = 3SE +/- 10.10, N = 3SE +/- 9.96, N = 32445.032091.142291.052291.22MIN: 1622.8 / MAX: 2902.79MIN: 1556.91 / MAX: 2551.17MIN: 1995.52 / MAX: 2735.91MIN: 113.76 / MAX: 2903.31. (CC) gcc options: -O2 -lm -pthread -lmpi

MariaDB

This is a MariaDB MySQL database server benchmark making use of mysqlslap. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgQueries Per Second, More Is BetterMariaDB 10.6.4Clients: 128XFSEXT4BtrfsF2FS2004006008001000SE +/- 0.70, N = 3SE +/- 3.45, N = 3SE +/- 2.40, N = 3SE +/- 6.47, N = 31025103785610811. (CXX) g++ options: -pie -fPIC -fstack-protector -O3 -pthread -lbz2 -lnuma -lpcre2-8 -lcrypt -laio -lz -lm -lssl -lcrypto -lpthread -ldl

OpenBenchmarking.orgQueries Per Second, More Is BetterMariaDB 10.6.4Clients: 256XFSEXT4BtrfsF2FS2004006008001000SE +/- 10.40, N = 3SE +/- 9.68, N = 4SE +/- 3.04, N = 3SE +/- 6.13, N = 37997917258411. (CXX) g++ options: -pie -fPIC -fstack-protector -O3 -pthread -lbz2 -lnuma -lpcre2-8 -lcrypt -laio -lz -lm -lssl -lcrypto -lpthread -ldl

OpenBenchmarking.orgQueries Per Second, More Is BetterMariaDB 10.6.4Clients: 512XFSEXT4BtrfsF2FS2004006008001000SE +/- 0.19, N = 3SE +/- 3.11, N = 3SE +/- 1.20, N = 3SE +/- 0.53, N = 37517487067791. (CXX) g++ options: -pie -fPIC -fstack-protector -O3 -pthread -lbz2 -lnuma -lpcre2-8 -lcrypt -laio -lz -lm -lssl -lcrypto -lpthread -ldl

PostgreSQL pgbench

This is a benchmark of PostgreSQL using pgbench for facilitating the database benchmarks. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 13.0Scaling Factor: 100 - Clients: 50 - Mode: Read WriteXFSEXT4BtrfsF2FS9K18K27K36K45KSE +/- 17.09, N = 3SE +/- 236.30, N = 3SE +/- 104.55, N = 3SE +/- 18.55, N = 3416464120024356410831. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -lpgcommon -lpgport -lpq -lpthread -lrt -ldl -lm

OpenBenchmarking.orgms, Fewer Is BetterPostgreSQL pgbench 13.0Scaling Factor: 100 - Clients: 50 - Mode: Read Write - Average LatencyXFSEXT4BtrfsF2FS0.46190.92381.38571.84762.3095SE +/- 0.000, N = 3SE +/- 0.007, N = 3SE +/- 0.009, N = 3SE +/- 0.001, N = 31.2011.2142.0531.2171. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -lpgcommon -lpgport -lpq -lpthread -lrt -ldl -lm

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 13.0Scaling Factor: 1000 - Clients: 50 - Mode: Read OnlyXFSEXT4BtrfsF2FS70K140K210K280K350KSE +/- 1110.10, N = 3SE +/- 802.68, N = 3SE +/- 2881.18, N = 3SE +/- 3123.24, N = 123400833385993113792910111. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -lpgcommon -lpgport -lpq -lpthread -lrt -ldl -lm

OpenBenchmarking.orgms, Fewer Is BetterPostgreSQL pgbench 13.0Scaling Factor: 1000 - Clients: 50 - Mode: Read Only - Average LatencyXFSEXT4BtrfsF2FS0.03870.07740.11610.15480.1935SE +/- 0.001, N = 3SE +/- 0.000, N = 3SE +/- 0.002, N = 3SE +/- 0.002, N = 120.1470.1480.1610.1721. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -lpgcommon -lpgport -lpq -lpthread -lrt -ldl -lm

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 13.0Scaling Factor: 1000 - Clients: 50 - Mode: Read WriteXFSEXT4BtrfsF2FS8K16K24K32K40KSE +/- 270.24, N = 11SE +/- 1887.77, N = 9SE +/- 101.55, N = 3SE +/- 78.62, N = 3370592945520361344391. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -lpgcommon -lpgport -lpq -lpthread -lrt -ldl -lm

OpenBenchmarking.orgms, Fewer Is BetterPostgreSQL pgbench 13.0Scaling Factor: 1000 - Clients: 50 - Mode: Read Write - Average LatencyXFSEXT4BtrfsF2FS0.55261.10521.65782.21042.763SE +/- 0.010, N = 11SE +/- 0.123, N = 9SE +/- 0.012, N = 3SE +/- 0.003, N = 31.3501.7602.4561.4521. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -lpgcommon -lpgport -lpq -lpthread -lrt -ldl -lm

SQLite

This is a simple benchmark of SQLite. At present this test profile just measures the time to perform a pre-defined number of insertions on an indexed database. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterSQLite 3.30.1Threads / Copies: 1XFSEXT4BtrfsF2FS3691215SE +/- 0.005, N = 3SE +/- 0.021, N = 3SE +/- 0.287, N = 15SE +/- 0.025, N = 38.2747.22113.3859.1271. (CC) gcc options: -O2 -lz -lm -ldl -lpthread

OpenBenchmarking.orgSeconds, Fewer Is BetterSQLite 3.30.1Threads / Copies: 8XFSEXT4BtrfsF2FS918273645SE +/- 0.13, N = 3SE +/- 0.01, N = 3SE +/- 0.31, N = 15SE +/- 0.11, N = 338.9128.7824.3518.171. (CC) gcc options: -O2 -lz -lm -ldl -lpthread