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: 6pgbench: 1000 - 50 - Read Write - Average Latencypgbench: 1000 - 50 - Read Writemysqlslap: 256pgbench: 1000 - 50 - Read Only - Average Latencypgbench: 1000 - 50 - Read Onlymysqlslap: 512mysqlslap: 128pgbench: 100 - 50 - Read Write - Average Latencypgbench: 100 - 50 - Read Writesqlite: 8fio: Rand Read - 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 Directoryfio: Rand Write - IO_uring - No - Yes - 4KB - Default Test Directorysqlite: 1ior: 16MB - Default Test Directoryfs-mark: 5000 Files, 1MB Size, 4 Threadsfs-mark: 4000 Files, 32 Sub Dirs, 1MB Sizefs-mark: 1000 Files, 1MB SizeF2FSBtrfsEXT4XFS3234.571.452344398410.17229101177910811.2174108318.172753667359116352850009.1272291.222491.71193.51190.52005.652.456203617250.1613113797068562.0532435624.3455543333253163314333313.3852291.051841.0859.2872.22474.151.760294557910.14833859974810371.2144120028.778760000359116347120007.2212091.141798.9838.5843.01751.811.350370597990.14734008375110251.2014164638.910755667359316357156678.2742445.031774.5829.4827.2OpenBenchmarking.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: 6XFSBtrfsEXT4F2FS7001400210028003500SE +/- 0.28, N = 3SE +/- 3.25, N = 3SE +/- 1.03, N = 3SE +/- 92.55, N = 91751.812005.652474.153234.571. (CC) gcc options: -lpopt -O2

PostgreSQL pgbench

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

OpenBenchmarking.orgms, Fewer Is BetterPostgreSQL pgbench 13.0Scaling Factor: 1000 - Clients: 50 - Mode: Read Write - Average LatencyBtrfsEXT4F2FSXFS0.55261.10521.65782.21042.763SE +/- 0.012, N = 3SE +/- 0.123, N = 9SE +/- 0.003, N = 3SE +/- 0.010, N = 112.4561.7601.4521.3501. (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 WriteBtrfsEXT4F2FSXFS8K16K24K32K40KSE +/- 101.55, N = 3SE +/- 1887.77, N = 9SE +/- 78.62, N = 3SE +/- 270.24, N = 11203612945534439370591. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -lpgcommon -lpgport -lpq -lpthread -lrt -ldl -lm

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: 256BtrfsEXT4XFSF2FS2004006008001000SE +/- 3.04, N = 3SE +/- 9.68, N = 4SE +/- 10.40, N = 3SE +/- 6.13, N = 37257917998411. (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.orgms, Fewer Is BetterPostgreSQL pgbench 13.0Scaling Factor: 1000 - Clients: 50 - Mode: Read Only - Average LatencyF2FSBtrfsEXT4XFS0.03870.07740.11610.15480.1935SE +/- 0.002, N = 12SE +/- 0.002, N = 3SE +/- 0.000, N = 3SE +/- 0.001, N = 30.1720.1610.1480.1471. (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 OnlyF2FSBtrfsEXT4XFS70K140K210K280K350KSE +/- 3123.24, N = 12SE +/- 2881.18, N = 3SE +/- 802.68, N = 3SE +/- 1110.10, N = 32910113113793385993400831. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -lpgcommon -lpgport -lpq -lpthread -lrt -ldl -lm

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: 512BtrfsEXT4XFSF2FS2004006008001000SE +/- 1.20, N = 3SE +/- 3.11, N = 3SE +/- 0.19, N = 3SE +/- 0.53, N = 37067487517791. (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: 128BtrfsXFSEXT4F2FS2004006008001000SE +/- 2.40, N = 3SE +/- 0.70, N = 3SE +/- 3.45, N = 3SE +/- 6.47, N = 38561025103710811. (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.orgms, Fewer Is BetterPostgreSQL pgbench 13.0Scaling Factor: 100 - Clients: 50 - Mode: Read Write - Average LatencyBtrfsF2FSEXT4XFS0.46190.92381.38571.84762.3095SE +/- 0.009, N = 3SE +/- 0.001, N = 3SE +/- 0.007, N = 3SE +/- 0.000, N = 32.0531.2171.2141.2011. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -lpgcommon -lpgport -lpq -lpthread -lrt -ldl -lm

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 13.0Scaling Factor: 100 - Clients: 50 - Mode: Read WriteBtrfsF2FSEXT4XFS9K18K27K36K45KSE +/- 104.55, N = 3SE +/- 18.55, N = 3SE +/- 236.30, N = 3SE +/- 17.09, N = 3243564108341200416461. (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: 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

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 DirectoryBtrfsF2FSXFSEXT4160K320K480K640K800KSE +/- 2905.93, N = 3SE +/- 9333.33, N = 3SE +/- 3756.48, N = 3SE +/- 4725.82, N = 35543337536677556677600001. (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 DirectoryBtrfsF2FSEXT4XFS8001600240032004000SE +/- 39.61, N = 3SE +/- 0.88, N = 332533591359135931. (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 DirectoryBtrfsEXT4F2FSXFS400800120016002000SE +/- 0.58, N = 3SE +/- 0.33, N = 3SE +/- 0.33, N = 3SE +/- 1.20, N = 316331634163516351. (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 DirectoryBtrfsF2FSEXT4XFS150K300K450K600K750KSE +/- 1201.85, N = 3SE +/- 1527.53, N = 3SE +/- 1527.53, N = 3SE +/- 2027.59, N = 31433332850007120007156671. (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

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: 1BtrfsF2FSXFSEXT43691215SE +/- 0.287, N = 15SE +/- 0.025, N = 3SE +/- 0.005, N = 3SE +/- 0.021, N = 313.3859.1278.2747.2211. (CC) gcc options: -O2 -lz -lm -ldl -lpthread

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 DirectoryEXT4BtrfsF2FSXFS5001000150020002500SE +/- 6.33, N = 3SE +/- 10.10, N = 3SE +/- 9.96, N = 3SE +/- 32.57, N = 32091.142291.052291.222445.03MIN: 1556.91 / MAX: 2551.17MIN: 1995.52 / MAX: 2735.91MIN: 113.76 / MAX: 2903.3MIN: 1622.8 / MAX: 2902.791. (CC) gcc options: -O2 -lm -pthread -lmpi

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: 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

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