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
Allow Limiting Results To Certain Suite(s)

Statistics

Show Overall Harmonic Mean(s)
Show Overall Geometric Mean
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
Toggle/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 Behavior (Only Show Selected Data)
  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 DirectoryXFSF2FSEXT4Btrfs150K300K450K600K750KSE +/- 2027.59, N = 3SE +/- 1527.53, N = 3SE +/- 1527.53, N = 3SE +/- 1201.85, N = 37156672850007120001433331. (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: 8XFSF2FSEXT4Btrfs918273645SE +/- 0.13, N = 3SE +/- 0.11, N = 3SE +/- 0.01, N = 3SE +/- 0.31, N = 1538.9118.1728.7824.351. (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 WriteXFSF2FSEXT4Btrfs9K18K27K36K45KSE +/- 17.09, N = 3SE +/- 18.55, N = 3SE +/- 236.30, N = 3SE +/- 104.55, N = 3416464108341200243561. (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 LatencyXFSF2FSEXT4Btrfs0.46190.92381.38571.84762.3095SE +/- 0.000, N = 3SE +/- 0.001, N = 3SE +/- 0.007, N = 3SE +/- 0.009, N = 31.2011.2171.2142.0531. (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 SizeXFSF2FSEXT4Btrfs30060090012001500SE +/- 3.19, N = 3SE +/- 3.32, N = 3SE +/- 1.01, N = 3SE +/- 3.88, N = 3827.21190.5843.0872.21. (CC) gcc options: -static

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

OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 5000 Files, 1MB Size, 4 ThreadsXFSF2FSEXT4Btrfs5001000150020002500SE +/- 6.06, N = 3SE +/- 5.37, N = 3SE +/- 1.24, N = 3SE +/- 21.56, N = 31774.52491.71798.91841.01. (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 DirectoryXFSF2FSEXT4Btrfs160K320K480K640K800KSE +/- 3756.48, N = 3SE +/- 9333.33, N = 3SE +/- 4725.82, N = 3SE +/- 2905.93, N = 37556677536677600005543331. (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: 128XFSF2FSEXT4Btrfs2004006008001000SE +/- 0.70, N = 3SE +/- 6.47, N = 3SE +/- 3.45, N = 3SE +/- 2.40, N = 31025108110378561. (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 LatencyXFSF2FSEXT4Btrfs0.03870.07740.11610.15480.1935SE +/- 0.001, N = 3SE +/- 0.002, N = 12SE +/- 0.000, N = 3SE +/- 0.002, N = 30.1470.1720.1480.1611. (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 DirectoryXFSF2FSEXT4Btrfs5001000150020002500SE +/- 32.57, N = 3SE +/- 9.96, N = 3SE +/- 6.33, N = 3SE +/- 10.10, N = 32445.032291.222091.142291.05MIN: 1622.8 / MAX: 2902.79MIN: 113.76 / MAX: 2903.3MIN: 1556.91 / MAX: 2551.17MIN: 1995.52 / MAX: 2735.911. (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 OnlyXFSF2FSEXT4Btrfs70K140K210K280K350KSE +/- 1110.10, N = 3SE +/- 3123.24, N = 12SE +/- 802.68, N = 3SE +/- 2881.18, N = 33400832910113385993113791. (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: 256XFSF2FSEXT4Btrfs2004006008001000SE +/- 10.40, N = 3SE +/- 6.13, N = 3SE +/- 9.68, N = 4SE +/- 3.04, N = 37998417917251. (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 DirectoryXFSF2FSEXT4Btrfs8001600240032004000SE +/- 0.88, N = 3SE +/- 39.61, N = 335933591359132531. (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: 512XFSF2FSEXT4Btrfs2004006008001000SE +/- 0.19, N = 3SE +/- 0.53, N = 3SE +/- 3.11, N = 3SE +/- 1.20, N = 37517797487061. (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 DirectoryXFSF2FSEXT4Btrfs400800120016002000SE +/- 1.20, N = 3SE +/- 0.33, N = 3SE +/- 0.33, N = 3SE +/- 0.58, N = 316351635163416331. (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 LatencyXFSF2FSEXT4Btrfs0.55261.10521.65782.21042.763SE +/- 0.010, N = 11SE +/- 0.003, N = 3SE +/- 0.123, N = 9SE +/- 0.012, N = 31.3501.4521.7602.4561. (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 WriteXFSF2FSEXT4Btrfs8K16K24K32K40KSE +/- 270.24, N = 11SE +/- 78.62, N = 3SE +/- 1887.77, N = 9SE +/- 101.55, N = 3370593443929455203611. (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: 6XFSF2FSEXT4Btrfs7001400210028003500SE +/- 0.28, N = 3SE +/- 92.55, N = 9SE +/- 1.03, N = 3SE +/- 3.25, N = 31751.813234.572474.152005.651. (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: 1XFSF2FSEXT4Btrfs3691215SE +/- 0.005, N = 3SE +/- 0.025, N = 3SE +/- 0.021, N = 3SE +/- 0.287, N = 158.2749.1277.22113.3851. (CC) gcc options: -O2 -lz -lm -ldl -lpthread