HDD EXT4 XFS Btrfs Disk Testing Linux 4.8

XFS, EXT4, Btrfs, and NILFS2 benchmarking by Michael Larabel for a future article on Phoronix.com.

Compare your own system(s) to this result file with the Phoronix Test Suite by running the command: phoronix-test-suite benchmark 1608240-HA-1608243LO72
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

Limit displaying results to tests within:

CPU Massive 2 Tests
Database Test Suite 2 Tests
Disk Test Suite 5 Tests
Common Kernel Benchmarks 2 Tests
Server 2 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

Additional Graphs

Show Perf Per Core/Thread Calculation Graphs Where Applicable
Show Perf Per Clock Calculation Graphs Where Applicable

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
View Logs
Performance Per
Dollar
Date
Run
  Test
  Duration
Btrfs
August 23 2016
 
EXT4
August 23 2016
 
XFS
August 23 2016
 
NILFS2
August 23 2016
 
Btrfs SSD sandisk plus
August 24 2016
 
Invert Hiding All Results Option
 

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


HDD EXT4 XFS Btrfs Disk Testing Linux 4.8ProcessorMotherboardChipsetMemoryDiskGraphicsAudioMonitorNetworkOSKernelDesktopDisplay ServerDisplay DriverOpenGLCompilerFile-SystemScreen ResolutionBtrfsEXT4XFSNILFS2Btrfs SSD sandisk plusIntel Xeon E3-1280 v5 @ 4.00GHz (8 Cores)MSI C236A WORKSTATION (MS-7998) v1.0Intel Sky Lake16384MB2000GB Hitachi HUA72302 + Samsung SSD 950 PRO 256GBNVIDIA GeForce GTX 980 Ti 6144MBRealtek ALC1150Acer B286HKIntel ConnectionUbuntu 16.044.8.0-999-generic (x86_64) 20160818Unity 7.4.0X Server 1.18.3nouveau 1.0.124.1 Mesa 12.1.0-devel- padoka PPA Gallium 0.4GCC 5.4.0 20160609btrfs3840x2160ext4xfsnilfsIntel Core 2 Duo T7300 @ 2.00GHz (2 Cores)FUJITSU SIEMENS ESPRIMO Mobile V5545 v20Intel Mobile PM965/GM965/GL960 + ICH8M4096MB250GB Seagate ST9250315AS + 240GB SanDisk SDSSDA24AMD Mobility Radeon HD 2400 128MBConexant CX20549 (Venice)Realtek RTL8111/8168/8411 + Intel PRO/WirelessManjaroLinux 16.06.14.5.7-1-MANJARO (x86_64)3.3 Mesa 12.0.1 Gallium 0.4GCC 6.1.1 20160802btrfs1280x800OpenBenchmarking.orgCompiler Details- Btrfs: --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 - 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 - XFS: --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 - NILFS2: --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 - Btrfs SSD sandisk plus: --disable-libssp --disable-libstdcxx-pch --disable-libunwind-exceptions --disable-multilib --disable-werror --enable-__cxa_atexit --enable-checking=release --enable-clocale=gnu --enable-gnu-indirect-function --enable-gnu-unique-object --enable-install-libiberty --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ --enable-libmpx --enable-lto --enable-plugin --enable-shared --enable-threads=posix --mandir=/usr/share/man --with-isl --with-linker-hash-style=gnu Disk Details- Btrfs: CFQ / relatime,rw,space_cache,subvol=/,subvolid=5- EXT4: CFQ / data=ordered,relatime,rw- XFS: CFQ / attr2,inode64,noquota,relatime,rw- NILFS2: CFQ / relatime,rw- Btrfs SSD sandisk plus: BFQ / relatime,rw,space_cache,ssd,subvol=/,subvolid=5Processor Details- Btrfs: Scaling Governor: intel_pstate powersave- EXT4: Scaling Governor: intel_pstate powersave- XFS: Scaling Governor: intel_pstate powersave- NILFS2: Scaling Governor: intel_pstate powersave- Btrfs SSD sandisk plus: Scaling Governor: acpi-cpufreq ondemandSystem Details- Btrfs: Python 2.7.12.- EXT4: Python 2.7.12.- XFS: Python 2.7.12.- NILFS2: Python 2.7.12.- Btrfs SSD sandisk plus: Python 3.5.2.

BtrfsEXT4XFSNILFS2Btrfs SSD sandisk plusLogarithmic Result OverviewPhoronix Test SuiteFlexible IO TesterFlexible IO TesterFS-MarkSQLiteFlexible IO TesterPostMarkRand Read - Libaio - No - Yes - 4KB - MB/sSeq Read - Libaio - No - Yes - 4KB - MB/s1.F.1.SD.T.DSeq Write - Libaio - No - Yes - 4KB - MB/sD.T.P

HDD EXT4 XFS Btrfs Disk Testing Linux 4.8sqlite: Default Test Directoryfio: Rand Read - Libaio - No - Yes - 4KB - Default Test Directory - MB/sfio: Seq Read - Libaio - No - Yes - 4KB - Default Test Directory - MB/sfio: Seq Write - Libaio - No - Yes - 4KB - Default Test Directory - MB/sfs-mark: 1000 Files, 1MB Sizefs-mark: 5000 Files, 1MB Size, 4 Threadscompilebench: Initial Createpostmark: Disk Transaction Performancepgbench: On-Disk - Normal Load - Read WriteBtrfsEXT4XFSNILFS2Btrfs SSD sandisk plus849.781.791.8462.5126.3744.67350.01728692.82558.751.7772.5871.9717.1737.73452.587352118.67269.801.81104.8577.3637.0346.40388.90604998.38193.601.902.2627.9142.0059.6074.9559379.21205.6316.65161.6449.5084.67626OpenBenchmarking.org

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.8.10.2Test Target: Default Test DirectoryBtrfsEXT4XFSNILFS2Btrfs SSD sandisk plus2004006008001000SE +/- 10.16, N = 3SE +/- 4.27, N = 3SE +/- 5.25, N = 3SE +/- 0.19, N = 3SE +/- 4.30, N = 6849.78558.75269.80193.60205.63-lreadline -lcurses1. (CC) gcc options: -O2 -ldl -lpthread
OpenBenchmarking.orgSeconds, Fewer Is BetterSQLite 3.8.10.2Test Target: Default Test DirectoryBtrfsEXT4XFSNILFS2Btrfs SSD sandisk plus150300450600750Min: 831.26 / Avg: 849.78 / Max: 866.31Min: 550.22 / Avg: 558.75 / Max: 563.45Min: 259.38 / Avg: 269.8 / Max: 276.05Min: 193.22 / Avg: 193.6 / Max: 193.8Min: 192.68 / Avg: 205.63 / Max: 220.761. (CC) gcc options: -O2 -ldl -lpthread

Flexible IO Tester

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Random Read - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/sBtrfsEXT4XFSNILFS2Btrfs SSD sandisk plus48121620SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.01, N = 3SE +/- 0.00, N = 3SE +/- 0.07, N = 31.791.771.811.9016.65-lnuma1. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl
OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Random Read - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/sBtrfsEXT4XFSNILFS2Btrfs SSD sandisk plus48121620Min: 1.79 / Avg: 1.79 / Max: 1.8Min: 1.76 / Avg: 1.77 / Max: 1.78Min: 1.79 / Avg: 1.81 / Max: 1.83Min: 1.9 / Avg: 1.9 / Max: 1.9Min: 16.5 / Avg: 16.65 / Max: 16.721. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Sequential Read - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/sBtrfsEXT4XFSNILFS2Btrfs SSD sandisk plus4080120160200SE +/- 0.00, N = 3SE +/- 0.07, N = 3SE +/- 0.10, N = 3SE +/- 0.01, N = 3SE +/- 2.84, N = 31.8472.58104.852.26161.64-lnuma1. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl
OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Sequential Read - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/sBtrfsEXT4XFSNILFS2Btrfs SSD sandisk plus306090120150Min: 1.83 / Avg: 1.84 / Max: 1.85Min: 72.45 / Avg: 72.58 / Max: 72.67Min: 104.67 / Avg: 104.85 / Max: 104.99Min: 2.25 / Avg: 2.26 / Max: 2.28Min: 158.79 / Avg: 161.64 / Max: 167.321. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Sequential Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/sBtrfsEXT4XFSNILFS2Btrfs SSD sandisk plus20406080100SE +/- 4.54, N = 6SE +/- 0.42, N = 3SE +/- 0.04, N = 3SE +/- 1.27, N = 6SE +/- 1.65, N = 662.5171.9777.3627.9149.50-lnuma1. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl
OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Sequential Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/sBtrfsEXT4XFSNILFS2Btrfs SSD sandisk plus1530456075Min: 48 / Avg: 62.51 / Max: 74.17Min: 71.14 / Avg: 71.97 / Max: 72.51Min: 77.31 / Avg: 77.36 / Max: 77.43Min: 21.61 / Avg: 27.91 / Max: 29.74Min: 46.45 / Avg: 49.5 / Max: 57.591. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl

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 SizeBtrfsEXT4XFSNILFS2Btrfs SSD sandisk plus20406080100SE +/- 0.18, N = 3SE +/- 0.03, N = 3SE +/- 0.23, N = 3SE +/- 0.10, N = 3SE +/- 1.06, N = 326.3717.1737.0342.0084.671. (CC) gcc options: -static
OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 1000 Files, 1MB SizeBtrfsEXT4XFSNILFS2Btrfs SSD sandisk plus1632486480Min: 26.1 / Avg: 26.37 / Max: 26.7Min: 17.1 / Avg: 17.17 / Max: 17.2Min: 36.8 / Avg: 37.03 / Max: 37.5Min: 41.9 / Avg: 42 / Max: 42.2Min: 82.6 / Avg: 84.67 / Max: 86.11. (CC) gcc options: -static

OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 5000 Files, 1MB Size, 4 ThreadsBtrfsEXT4XFSNILFS21326395265SE +/- 0.19, N = 3SE +/- 0.71, N = 3SE +/- 0.00, N = 3SE +/- 0.23, N = 344.6737.7346.4059.601. (CC) gcc options: -static
OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 5000 Files, 1MB Size, 4 ThreadsBtrfsEXT4XFSNILFS21224364860Min: 44.3 / Avg: 44.67 / Max: 44.9Min: 36.4 / Avg: 37.73 / Max: 38.8Min: 46.4 / Avg: 46.4 / Max: 46.4Min: 59.2 / Avg: 59.6 / Max: 601. (CC) gcc options: -static

Compile Bench

Compilebench tries to age a filesystem by simulating some of the disk IO common in creating, compiling, patching, stating and reading kernel trees. It indirectly measures how well filesystems can maintain directory locality as the disk fills up and directories age. This current test is setup to use the makej mode with 10 initial directories Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgMB/s, More Is BetterCompile Bench 0.6Test: Initial CreateBtrfsEXT4XFSNILFS2100200300400500SE +/- 4.62, N = 6SE +/- 7.76, N = 4SE +/- 2.26, N = 3SE +/- 0.41, N = 3350.01452.58388.9074.95
OpenBenchmarking.orgMB/s, More Is BetterCompile Bench 0.6Test: Initial CreateBtrfsEXT4XFSNILFS280160240320400Min: 329.14 / Avg: 350.01 / Max: 360.68Min: 444.03 / Avg: 452.58 / Max: 475.82Min: 385.96 / Avg: 388.9 / Max: 393.35Min: 74.39 / Avg: 74.95 / Max: 75.76

PostMark

This is a test of NetApp's PostMark benchmark designed to simulate small-file testing similar to the tasks endured by web and mail servers. This test profile will set PostMark to perform 25,000 transactions with 500 files simultaneously with the file sizes ranging between 5 and 512 kilobytes. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgTPS, More Is BetterPostMark 1.51Disk Transaction PerformanceBtrfsEXT4XFSNILFS2Btrfs SSD sandisk plus16003200480064008000SE +/- 144.33, N = 3SE +/- 0.00, N = 3SE +/- 48.33, N = 3SE +/- 1.00, N = 3SE +/- 11.03, N = 67286735260495936261. (CC) gcc options: -O3
OpenBenchmarking.orgTPS, More Is BetterPostMark 1.51Disk Transaction PerformanceBtrfsEXT4XFSNILFS2Btrfs SSD sandisk plus13002600390052006500Min: 7142 / Avg: 7286.33 / Max: 7575Min: 7352 / Avg: 7352 / Max: 7352Min: 5952 / Avg: 6048.67 / Max: 6097Min: 592 / Avg: 593 / Max: 595Min: 592 / Avg: 625.83 / Max: 6571. (CC) gcc options: -O3

PostgreSQL pgbench

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 9.4.3Scaling: On-Disk - Test: Normal Load - Mode: Read WriteBtrfsEXT4XFSNILFS2306090120150SE +/- 2.35, N = 392.82118.6798.3879.211. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -pthread -lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -lm
OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 9.4.3Scaling: On-Disk - Test: Normal Load - Mode: Read WriteBtrfsEXT4XFSNILFS220406080100Min: 88.56 / Avg: 92.82 / Max: 96.691. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -pthread -lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -lm