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 Benchmarksfio: Rand Write - IO_uring - No - Yes - 4KB - Default Test Directorysqlite: 8pgbench: 100 - 50 - Read Writepgbench: 100 - 50 - Read Write - Average Latencyfs-mark: 1000 Files, 1MB Sizefs-mark: 4000 Files, 32 Sub Dirs, 1MB Sizefs-mark: 5000 Files, 1MB Size, 4 Threadsfio: Rand Read - IO_uring - No - Yes - 4KB - Default Test Directorymysqlslap: 128pgbench: 1000 - 50 - Read Only - Average Latencyior: 16MB - Default Test Directorypgbench: 1000 - 50 - Read Onlymysqlslap: 256fio: Seq Read - IO_uring - No - Yes - 2MB - Default Test Directorymysqlslap: 512fio: Seq Write - IO_uring - No - Yes - 2MB - Default Test Directorypgbench: 1000 - 50 - Read Write - Average Latencypgbench: 1000 - 50 - Read Writedbench: 6sqlite: 1F2FSBtrfsEXT4XFS28500018.172410831.2171190.51193.52491.775366710810.1722291.22291011841359177916351.452344393234.579.12714333324.345243562.053872.2859.21841.05543338560.1612291.05311379725325370616332.456203612005.6513.38571200028.778412001.214843.0838.51798.976000010370.1482091.14338599791359174816341.760294552474.157.22171566738.910416461.201827.2829.41774.575566710250.1472445.03340083799359375116351.350370591751.818.274OpenBenchmarking.org

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 Write - Engine: IO_uring - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test DirectoryF2FSBtrfsEXT4XFS150K300K450K600K750KSE +/- 1527.53, N = 3SE +/- 1201.85, N = 3SE +/- 1527.53, N = 3SE +/- 2027.59, N = 32850001433337120007156671. (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: 8F2FSBtrfsEXT4XFS918273645SE +/- 0.11, N = 3SE +/- 0.31, N = 15SE +/- 0.01, N = 3SE +/- 0.13, N = 318.1724.3528.7838.911. (CC) gcc options: -O2 -lz -lm -ldl -lpthread

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 WriteF2FSBtrfsEXT4XFS9K18K27K36K45KSE +/- 18.55, N = 3SE +/- 104.55, N = 3SE +/- 236.30, N = 3SE +/- 17.09, N = 3410832435641200416461. (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 LatencyF2FSBtrfsEXT4XFS0.46190.92381.38571.84762.3095SE +/- 0.001, N = 3SE +/- 0.009, N = 3SE +/- 0.007, N = 3SE +/- 0.000, N = 31.2172.0531.2141.2011. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -lpgcommon -lpgport -lpq -lpthread -lrt -ldl -lm

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 SizeF2FSBtrfsEXT4XFS30060090012001500SE +/- 3.32, N = 3SE +/- 3.88, N = 3SE +/- 1.01, N = 3SE +/- 3.19, N = 31190.5872.2843.0827.21. (CC) gcc options: -static

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

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

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 DirectoryF2FSBtrfsEXT4XFS160K320K480K640K800KSE +/- 9333.33, N = 3SE +/- 2905.93, N = 3SE +/- 4725.82, N = 3SE +/- 3756.48, N = 37536675543337600007556671. (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

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: 128F2FSBtrfsEXT4XFS2004006008001000SE +/- 6.47, N = 3SE +/- 2.40, N = 3SE +/- 3.45, N = 3SE +/- 0.70, N = 31081856103710251. (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

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

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: 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: 256F2FSBtrfsEXT4XFS2004006008001000SE +/- 6.13, N = 3SE +/- 3.04, N = 3SE +/- 9.68, N = 4SE +/- 10.40, N = 38417257917991. (CXX) g++ options: -pie -fPIC -fstack-protector -O3 -pthread -lbz2 -lnuma -lpcre2-8 -lcrypt -laio -lz -lm -lssl -lcrypto -lpthread -ldl

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.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 DirectoryF2FSBtrfsEXT4XFS8001600240032004000SE +/- 39.61, N = 3SE +/- 0.88, N = 335913253359135931. (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

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: 512F2FSBtrfsEXT4XFS2004006008001000SE +/- 0.53, N = 3SE +/- 1.20, N = 3SE +/- 3.11, N = 3SE +/- 0.19, N = 37797067487511. (CXX) g++ options: -pie -fPIC -fstack-protector -O3 -pthread -lbz2 -lnuma -lpcre2-8 -lcrypt -laio -lz -lm -lssl -lcrypto -lpthread -ldl

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: Sequential Write - Engine: IO_uring - Buffered: No - Direct: Yes - Block Size: 2MB - Disk Target: Default Test DirectoryF2FSBtrfsEXT4XFS400800120016002000SE +/- 0.33, N = 3SE +/- 0.58, N = 3SE +/- 0.33, N = 3SE +/- 1.20, N = 316351633163416351. (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

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 LatencyF2FSBtrfsEXT4XFS0.55261.10521.65782.21042.763SE +/- 0.003, N = 3SE +/- 0.012, N = 3SE +/- 0.123, N = 9SE +/- 0.010, N = 111.4522.4561.7601.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 WriteF2FSBtrfsEXT4XFS8K16K24K32K40KSE +/- 78.62, N = 3SE +/- 101.55, N = 3SE +/- 1887.77, N = 9SE +/- 270.24, N = 11344392036129455370591. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -lpgcommon -lpgport -lpq -lpthread -lrt -ldl -lm

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: 6F2FSBtrfsEXT4XFS7001400210028003500SE +/- 92.55, N = 9SE +/- 3.25, N = 3SE +/- 1.03, N = 3SE +/- 0.28, N = 33234.572005.652474.151751.811. (CC) gcc options: -lpopt -O2

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