Linux 3.13 HDD File-System Comparison Tests by Michael Larabel for a future article on Phoronix.com using many different Linux file-systems from Ubuntu Linux. Using a Western Digital VelociRaptor 1000RPM WD1500HLHX HDD for testing.
HTML result view exported from: https://openbenchmarking.org/result/1312121-SO-LINUX313K97&gru&sro .
Linux 3.13 HDD File-System Comparison Processor Motherboard Chipset Memory Disk Graphics Audio Network OS Kernel Desktop Display Server Display Driver OpenGL Compiler File-System Screen Resolution EXT3 EXT4 XFS Btrfs ReiserFS JFS NILFS2 NTFS Intel Core i7-4770K @ 4.40GHz (8 Cores) ECS Z87H3-A2X EXTREME v1.0 Intel 4th Gen Core DRAM 16384MB 150GB Western Digital WD1500HLHX-0 + 240GB OCZ VERTEX3 Intel HD 4600 (1250MHz) Intel Haswell HDMI Realtek RTL8111/8168/8411 Ubuntu 13.10 3.13.0-999-generic (x86_64) Unity 7.1.2 X Server 1.14.3 intel 2.99.906 3.3 Mesa 10.1.0-devel (git-5b331f6 saucy-oibaf-ppa) GCC 4.8 + LLVM 3.4 ext4 1920x1080 xfs btrfs reiserfs jfs nilfs fuseblk OpenBenchmarking.org Compiler Details - --build=x86_64-linux-gnu --disable-browser-plugin --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-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 - EXT3: DEADLINE / acl,barrier=1,data=ordered,errors=continue,relatime,rw,user_xattr - EXT4: DEADLINE / data=ordered,relatime,rw - XFS: DEADLINE / attr2,inode64,noquota,relatime,rw - Btrfs: DEADLINE / relatime,rw,space_cache - ReiserFS: DEADLINE / relatime,rw - JFS: DEADLINE / relatime,rw - NILFS2: DEADLINE / relatime,rw - NTFS: DEADLINE / allow_other,blksize=4096,group_id=0,nodev,nosuid,relatime,rw,user_id=0 System Details - Disk Scheduler: DEADLINE. Python 2.7.5+.
Linux 3.13 HDD File-System Comparison fs-mark: 1000 Files, 1MB Size fs-mark: 5000 Files, 1MB Size, 4 Threads fs-mark: 4000 Files, 32 Sub Dirs, 1MB Size aio-stress: Rand Write iozone: 64Kb - 8GB - Write Performance tiobench: Write - 32MB - 4 tiobench: Write - 64MB - 4 tiobench: Rand Write - 32MB - 4 tiobench: Rand Write - 64MB - 4 compilebench: Initial Create postmark: Disk Transaction Performance EXT3 EXT4 XFS Btrfs ReiserFS JFS NILFS2 NTFS 29.83 40.67 28.50 74.49 0.46 0.49 1.00 1.03 203.60 1346 31.03 57.33 30.87 130.83 0.49 0.46 0.49 0.48 225.02 5436 37.03 53.47 35.83 124.10 0.40 0.42 0.51 0.51 199.94 5597 31.57 46.37 30.83 267.45 135.18 0.64 0.60 0.55 0.59 137.58 5211 28.23 47.90 26.30 97.90 0.46 0.46 2.47 2.16 44.84 1826 97.20 65.33 103.17 94.13 108.39 25.20 24.62 3.06 2.67 42.69 1194 67.47 70.50 47.67 107.30 100.74 1.18 1.17 1.15 1.14 75.11 563 20.92 17.33 20.43 6.97 127.47 82.79 88.27 8.50 5.70 53.02 400 OpenBenchmarking.org
FS-Mark Test: 1000 Files, 1MB Size OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 1000 Files, 1MB Size Btrfs EXT3 EXT4 JFS NILFS2 NTFS ReiserFS XFS 20 40 60 80 100 SE +/- 0.48, N = 3 SE +/- 0.20, N = 3 SE +/- 0.07, N = 3 SE +/- 1.00, N = 3 SE +/- 0.91, N = 3 SE +/- 0.36, N = 6 SE +/- 0.12, N = 3 SE +/- 0.09, N = 3 31.57 29.83 31.03 97.20 67.47 20.92 28.23 37.03 1. (CC) gcc options: -static
FS-Mark Test: 5000 Files, 1MB Size, 4 Threads OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 5000 Files, 1MB Size, 4 Threads Btrfs EXT3 EXT4 JFS NILFS2 NTFS ReiserFS XFS 16 32 48 64 80 SE +/- 0.12, N = 3 SE +/- 0.80, N = 6 SE +/- 1.28, N = 6 SE +/- 0.46, N = 3 SE +/- 1.27, N = 3 SE +/- 0.27, N = 6 SE +/- 0.21, N = 3 SE +/- 0.13, N = 3 46.37 40.67 57.33 65.33 70.50 17.33 47.90 53.47 1. (CC) gcc options: -static
FS-Mark Test: 4000 Files, 32 Sub Dirs, 1MB Size OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 4000 Files, 32 Sub Dirs, 1MB Size Btrfs EXT3 EXT4 JFS NILFS2 NTFS ReiserFS XFS 20 40 60 80 100 SE +/- 0.39, N = 3 SE +/- 0.21, N = 3 SE +/- 0.56, N = 6 SE +/- 1.36, N = 3 SE +/- 0.35, N = 3 SE +/- 0.29, N = 3 SE +/- 1.03, N = 6 SE +/- 1.19, N = 6 30.83 28.50 30.87 103.17 47.67 20.43 26.30 35.83 1. (CC) gcc options: -static
AIO-Stress Test: Random Write OpenBenchmarking.org MB/s, More Is Better AIO-Stress 0.21 Test: Random Write Btrfs JFS NILFS2 NTFS 60 120 180 240 300 SE +/- 12.22, N = 6 SE +/- 8.22, N = 6 SE +/- 0.26, N = 3 SE +/- 0.18, N = 6 267.45 94.13 107.30 6.97 1. (CC) gcc options: -pthread -laio
IOzone Record Size: 64Kb - File Size: 8GB - Disk Test: Write Performance OpenBenchmarking.org MB/s, More Is Better IOzone 3.405 Record Size: 64Kb - File Size: 8GB - Disk Test: Write Performance Btrfs EXT3 EXT4 JFS NILFS2 NTFS ReiserFS XFS 30 60 90 120 150 SE +/- 0.48, N = 3 SE +/- 0.21, N = 3 SE +/- 0.38, N = 3 SE +/- 3.87, N = 6 SE +/- 1.82, N = 2 SE +/- 2.22, N = 3 SE +/- 0.72, N = 3 SE +/- 0.23, N = 3 135.18 74.49 130.83 108.39 100.74 127.47 97.90 124.10 1. (CC) gcc options: -O3
Threaded I/O Tester Test: Write - Size Per Thread: 32MB - Thread Count: 4 OpenBenchmarking.org MB/s, More Is Better Threaded I/O Tester 0.3.3 Test: Write - Size Per Thread: 32MB - Thread Count: 4 Btrfs EXT3 EXT4 JFS NILFS2 NTFS ReiserFS XFS 20 40 60 80 100 SE +/- 0.01, N = 3 SE +/- 0.02, N = 6 SE +/- 0.00, N = 3 SE +/- 0.32, N = 3 SE +/- 0.00, N = 3 SE +/- 1.49, N = 3 SE +/- 0.00, N = 3 SE +/- 0.01, N = 3 0.64 0.46 0.49 25.20 1.18 82.79 0.46 0.40
Threaded I/O Tester Test: Write - Size Per Thread: 64MB - Thread Count: 4 OpenBenchmarking.org MB/s, More Is Better Threaded I/O Tester 0.3.3 Test: Write - Size Per Thread: 64MB - Thread Count: 4 Btrfs EXT3 EXT4 JFS NILFS2 NTFS ReiserFS XFS 20 40 60 80 100 SE +/- 0.01, N = 3 SE +/- 0.01, N = 3 SE +/- 0.02, N = 6 SE +/- 0.05, N = 3 SE +/- 0.00, N = 3 SE +/- 0.16, N = 3 SE +/- 0.00, N = 3 SE +/- 0.01, N = 3 0.60 0.49 0.46 24.62 1.17 88.27 0.46 0.42
Threaded I/O Tester Test: Random Write - Size Per Thread: 32MB - Thread Count: 4 OpenBenchmarking.org MB/s, More Is Better Threaded I/O Tester 0.3.3 Test: Random Write - Size Per Thread: 32MB - Thread Count: 4 Btrfs EXT3 EXT4 JFS NILFS2 NTFS ReiserFS XFS 2 4 6 8 10 SE +/- 0.00, N = 3 SE +/- 0.01, N = 3 SE +/- 0.00, N = 3 SE +/- 0.05, N = 3 SE +/- 0.00, N = 3 SE +/- 0.30, N = 6 SE +/- 0.03, N = 3 SE +/- 0.01, N = 6 0.55 1.00 0.49 3.06 1.15 8.50 2.47 0.51
Threaded I/O Tester Test: Random Write - Size Per Thread: 64MB - Thread Count: 4 OpenBenchmarking.org MB/s, More Is Better Threaded I/O Tester 0.3.3 Test: Random Write - Size Per Thread: 64MB - Thread Count: 4 Btrfs EXT3 EXT4 JFS NILFS2 NTFS ReiserFS XFS 1.2825 2.565 3.8475 5.13 6.4125 SE +/- 0.01, N = 5 SE +/- 0.05, N = 6 SE +/- 0.00, N = 3 SE +/- 0.04, N = 3 SE +/- 0.00, N = 3 SE +/- 0.09, N = 3 SE +/- 0.20, N = 6 SE +/- 0.01, N = 3 0.59 1.03 0.48 2.67 1.14 5.70 2.16 0.51
Compile Bench Test: Initial Create OpenBenchmarking.org MB/s, More Is Better Compile Bench 0.6 Test: Initial Create Btrfs EXT3 EXT4 JFS NILFS2 NTFS ReiserFS XFS 50 100 150 200 250 SE +/- 5.25, N = 3 SE +/- 22.08, N = 3 SE +/- 2.56, N = 3 SE +/- 0.98, N = 3 SE +/- 0.59, N = 3 SE +/- 2.35, N = 3 SE +/- 2.48, N = 3 SE +/- 10.18, N = 3 137.58 203.60 225.02 42.69 75.11 53.02 44.84 199.94
PostMark Disk Transaction Performance OpenBenchmarking.org TPS, More Is Better PostMark 1.51 Disk Transaction Performance Btrfs EXT3 EXT4 JFS NILFS2 NTFS ReiserFS XFS 1200 2400 3600 4800 6000 SE +/- 251.19, N = 6 SE +/- 13.65, N = 3 SE +/- 68.13, N = 3 SE +/- 5.04, N = 3 SE +/- 3.38, N = 3 SE +/- 28.36, N = 5 SE +/- 42.00, N = 3 5211 1346 5436 1194 563 400 1826 5597 1. (CC) gcc options: -O3
Phoronix Test Suite v10.8.5