Linux 4.0 HDD File-System Testing

Hard drive file-system comparison on Linux 4.0. Benchmarks by Michael Larabel for a future article on Phoronix.

HTML result view exported from: https://openbenchmarking.org/result/1504080-BE-LINUX40HD57.

Linux 4.0 HDD File-System TestingProcessorMotherboardChipsetMemoryDiskGraphicsAudioMonitorNetworkOSKernelDesktopDisplay ServerDisplay DriverOpenGLCompilerFile-SystemScreen ResolutionEXT4BtrfsXFSNTFSNILFS2ReiserFSIntel Core i7-5960X @ 3.50GHz (16 Cores)Gigabyte X99-UD4-CFIntel Xeon E5 v3/Core16384MB150GB Western Digital WD1500HLHX-0 + 120GB OCZ VECTOR150Gigabyte AMD Radeon R9 270X 2048MBIntel C610/X99SyncMasterIntel ConnectionUbuntu 15.044.0.0-999-generic (x86_64)Unity 7.3.2X Server 1.17.1radeon 7.5.03.3 Mesa 10.5.2 Gallium 0.4GCC 4.9.2ext42560x1600btrfsxfsfuseblknilfsreiserfsOpenBenchmarking.orgCompiler Details- --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,c++,java,go,d,fortran,objc,obj-c++ --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-multilib-list=m32,m64,mx32 --with-tune=generic -v Disk Details- EXT4: DEADLINE / data=ordered,relatime,rw- Btrfs: DEADLINE / relatime,rw,space_cache- XFS: DEADLINE / attr2,inode64,noquota,relatime,rw- NTFS: DEADLINE / allow_other,blksize=4096,group_id=0,relatime,rw,user_id=0- NILFS2: DEADLINE / relatime,rw- ReiserFS: DEADLINE / relatime,rwProcessor Details- Scaling Governor: intel_pstate powersaveSystem Details- Disk Scheduler: DEADLINE. Python 2.7.9.

Linux 4.0 HDD File-System Testingfio: Rand Write - POSIX AIO - Yes - No - 4KB - Default Test Directory - MB/sfio: Rand Read - POSIX AIO - Yes - No - 128KB - Default Test Directory - MB/sfio: Rand Write - POSIX AIO - Yes - No - 128KB - Default Test Directory - MB/sfio: Seq Read - POSIX AIO - Yes - No - 4KB - Default Test Directory - MB/sfio: Seq Write - POSIX AIO - Yes - No - 4KB - Default Test Directory - MB/sfio: Seq Read - POSIX AIO - Yes - No - 128KB - Default Test Directory - MB/sfio: Seq Write - POSIX AIO - Yes - No - 128KB - Default Test Directory - MB/sfs-mark: 1000 Files, 1MB Sizefs-mark: 5000 Files, 1MB Size, 4 Threadsfs-mark: 4000 Files, 32 Sub Dirs, 1MB Sizecompilebench: Compilecompilebench: Initial Createpostmark: Disk Transaction PerformanceEXT4BtrfsXFSNTFSNILFS2ReiserFS128.9924.8199.34141.76216.21141.46251.4430.5867.0729.23534.08268.50477762.196.66122.11137.16135.92140.03129.4529.2746.7028.471234.5198.624967257.8725.35144.33144.0332.2250.8035.60475.23192.21487040.85722.7577.0943.7583.8714.5514.9314.9058.8317.5616980.452.71101.0539.6099.92136.76100.9348.8764.1345.6084.85121.7724.36105.42141.32104.66141.04108.9723.7042.2724.63273.7640.781344OpenBenchmarking.org

Flexible IO Tester

Type: Random Write - IO Engine: POSIX AIO - Buffered: Yes - Direct: No - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/s

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Random Write - IO Engine: POSIX AIO - Buffered: Yes - Direct: No - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/sEXT4BtrfsXFSNTFSNILFS2ReiserFS60120180240300SE +/- 0.47, N = 3SE +/- 14.72, N = 6SE +/- 0.58, N = 3SE +/- 0.24, N = 3SE +/- 0.17, N = 3SE +/- 15.50, N = 6128.9962.19257.8740.8580.45121.771. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lm -lpthread -ldl

Flexible IO Tester

Type: Random Read - IO Engine: POSIX AIO - Buffered: Yes - Direct: No - Block Size: 128KB - Disk Target: Default Test Directory - Result: MB/s

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Random Read - IO Engine: POSIX AIO - Buffered: Yes - Direct: No - Block Size: 128KB - Disk Target: Default Test Directory - Result: MB/sEXT4BtrfsXFSNTFSNILFS2ReiserFS160320480640800SE +/- 0.07, N = 3SE +/- 0.10, N = 3SE +/- 0.12, N = 3SE +/- 14.22, N = 3SE +/- 0.00, N = 3SE +/- 0.37, N = 524.816.6625.35722.752.7124.361. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lm -lpthread -ldl

Flexible IO Tester

Type: Random Write - IO Engine: POSIX AIO - Buffered: Yes - Direct: No - Block Size: 128KB - Disk Target: Default Test Directory - Result: MB/s

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Random Write - IO Engine: POSIX AIO - Buffered: Yes - Direct: No - Block Size: 128KB - Disk Target: Default Test Directory - Result: MB/sEXT4BtrfsNTFSNILFS2ReiserFS306090120150SE +/- 7.12, N = 6SE +/- 1.32, N = 3SE +/- 1.24, N = 6SE +/- 0.27, N = 3SE +/- 2.08, N = 399.34122.1177.09101.05105.421. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lm -lpthread -ldl

Flexible IO Tester

Type: Sequential Read - IO Engine: POSIX AIO - Buffered: Yes - Direct: No - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/s

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Sequential Read - IO Engine: POSIX AIO - Buffered: Yes - Direct: No - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/sEXT4BtrfsXFSNILFS2ReiserFS306090120150SE +/- 0.35, N = 3SE +/- 0.04, N = 3SE +/- 2.72, N = 6SE +/- 0.22, N = 3SE +/- 0.59, N = 3141.76137.16144.3339.60141.321. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lm -lpthread -ldl

Flexible IO Tester

Type: Sequential Write - IO Engine: POSIX AIO - Buffered: Yes - Direct: No - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/s

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Sequential Write - IO Engine: POSIX AIO - Buffered: Yes - Direct: No - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/sEXT4BtrfsNTFSNILFS2ReiserFS50100150200250SE +/- 22.77, N = 6SE +/- 10.25, N = 6SE +/- 1.35, N = 6SE +/- 0.50, N = 3SE +/- 0.05, N = 3216.21135.9243.7599.92104.661. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lm -lpthread -ldl

Flexible IO Tester

Type: Sequential Read - IO Engine: POSIX AIO - Buffered: Yes - Direct: No - Block Size: 128KB - Disk Target: Default Test Directory - Result: MB/s

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Sequential Read - IO Engine: POSIX AIO - Buffered: Yes - Direct: No - Block Size: 128KB - Disk Target: Default Test Directory - Result: MB/sEXT4BtrfsXFSNILFS2ReiserFS306090120150SE +/- 0.24, N = 3SE +/- 0.03, N = 3SE +/- 2.34, N = 6SE +/- 0.03, N = 3SE +/- 0.64, N = 3141.46140.03144.03136.76141.041. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lm -lpthread -ldl

Flexible IO Tester

Type: Sequential Write - IO Engine: POSIX AIO - Buffered: Yes - Direct: No - Block Size: 128KB - Disk Target: Default Test Directory - Result: MB/s

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Sequential Write - IO Engine: POSIX AIO - Buffered: Yes - Direct: No - Block Size: 128KB - Disk Target: Default Test Directory - Result: MB/sEXT4BtrfsNTFSNILFS2ReiserFS50100150200250SE +/- 31.59, N = 6SE +/- 6.79, N = 6SE +/- 3.45, N = 6SE +/- 0.56, N = 3SE +/- 3.35, N = 6251.44129.4583.87100.93108.971. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lm -lpthread -ldl

FS-Mark

Test: 1000 Files, 1MB Size

OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 1000 Files, 1MB SizeEXT4BtrfsXFSNTFSNILFS2ReiserFS1122334455SE +/- 0.44, N = 6SE +/- 0.53, N = 3SE +/- 1.25, N = 6SE +/- 0.23, N = 6SE +/- 0.09, N = 3SE +/- 0.25, N = 330.5829.2732.2214.5548.8723.701. (CC) gcc options: -static

FS-Mark

Test: 5000 Files, 1MB Size, 4 Threads

OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 5000 Files, 1MB Size, 4 ThreadsEXT4BtrfsXFSNTFSNILFS2ReiserFS1530456075SE +/- 0.67, N = 3SE +/- 0.30, N = 3SE +/- 0.00, N = 3SE +/- 0.48, N = 3SE +/- 1.16, N = 3SE +/- 0.13, N = 367.0746.7050.8014.9364.1342.271. (CC) gcc options: -static

FS-Mark

Test: 4000 Files, 32 Sub Dirs, 1MB Size

OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 4000 Files, 32 Sub Dirs, 1MB SizeEXT4BtrfsXFSNTFSNILFS2ReiserFS1020304050SE +/- 0.38, N = 3SE +/- 0.38, N = 3SE +/- 1.10, N = 6SE +/- 0.21, N = 3SE +/- 0.15, N = 3SE +/- 0.27, N = 329.2328.4735.6014.9045.6024.631. (CC) gcc options: -static

Compile Bench

Test: Compile

OpenBenchmarking.orgMB/s, More Is BetterCompile Bench 0.6Test: CompileEXT4BtrfsXFSNTFSNILFS2ReiserFS30060090012001500SE +/- 2.46, N = 3SE +/- 38.29, N = 6SE +/- 15.02, N = 6SE +/- 1.47, N = 6SE +/- 34.37, N = 6534.081234.51475.2358.8384.85273.76

Compile Bench

Test: Initial Create

OpenBenchmarking.orgMB/s, More Is BetterCompile Bench 0.6Test: Initial CreateEXT4BtrfsXFSNTFSReiserFS60120180240300SE +/- 1.01, N = 3SE +/- 2.74, N = 3SE +/- 14.67, N = 3SE +/- 0.18, N = 3SE +/- 0.25, N = 3268.5098.62192.2117.5640.78

PostMark

Disk Transaction Performance

OpenBenchmarking.orgTPS, More Is BetterPostMark 1.51Disk Transaction PerformanceEXT4BtrfsXFSNTFSReiserFS11002200330044005500SE +/- 30.33, N = 3SE +/- 33.00, N = 3SE +/- 31.33, N = 3SE +/- 0.33, N = 3SE +/- 11.02, N = 347774967487016913441. (CC) gcc options: -O3


Phoronix Test Suite v10.8.5