File-System Testing Up To Linux 4.9 Linux 4.6 through Linux 4.9 file-system benchmarks using EXT4, F2FS, Btrfs, and XFS. Benchmarks by Michael Larabel for a future article on Phoronix.com.
HTML result view exported from: https://openbenchmarking.org/result/1612133-TA-FILESYSTE79&sro&gru .
Processor Motherboard Chipset Memory Disk Graphics Audio Monitor Network OS Kernel Desktop Display Server Display Driver OpenGL Compiler File-System Screen Resolution EXT4 F2FS Btrfs XFS Linux 4.6 Linux 4.7 Linux 4.8 Linux 4.9 Linux 4.6 Linux 4.7 Linux 4.8 Linux 4.9 Linux 4.6 Linux 4.7 Linux 4.8 Linux 4.9 Linux 4.6 Linux 4.7 Linux 4.8 Linux 4.9 Intel Core i7-6800K @ 3.80GHz (12 Cores) MSI X99A WORKSTATION (MS-7A54) v1.0 Intel Xeon E7 v4/Xeon 16384MB 120GB Samsung SSD 850 + 4 x 120GB TOSHIBA-TR150 NVIDIA GeForce GTX TITAN X 12288MB Realtek ALC1150 ASUS PB278 Intel Connection Ubuntu 16.10 4.6.0-040600-generic (x86_64) Unity 7.5.0 X Server 1.18.4 nouveau 1.0.12 3.3 Mesa 12.0.3 Gallium 0.4 GCC 6.2.0 20161005 ext4 2560x1440 4.7.0-040700-generic (x86_64) 4.8.0-040800-generic (x86_64) 4.9.0-999-generic (x86_64) 20161209 4.6.0-040600-generic (x86_64) f2fs 4.7.0-040700-generic (x86_64) 4.8.0-040800-generic (x86_64) 4.9.0-999-generic (x86_64) 20161209 4.6.0-040600-generic (x86_64) btrfs 4.7.0-040700-generic (x86_64) 4.8.0-040800-generic (x86_64) 4.9.0-999-generic (x86_64) 20161209 4.6.0-040600-generic (x86_64) xfs 4.7.0-040700-generic (x86_64) 4.8.0-040800-generic (x86_64) 4.9.0-999-generic (x86_64) 20161209 OpenBenchmarking.org Compiler Details - --build=x86_64-linux-gnu --disable-browser-plugin --disable-vtable-verify --disable-werror --enable-checking=release --enable-clocale=gnu --enable-default-pie --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 --program-prefix=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 Processor Details - Scaling Governor: intel_pstate powersave System Details - Python 2.7.12+. Disk Mount Options Details - EXT4: Linux 4.6: data=ordered,relatime,rw - EXT4: Linux 4.7: data=ordered,relatime,rw - EXT4: Linux 4.8: data=ordered,relatime,rw - EXT4: Linux 4.9: data=ordered,relatime,rw - F2FS: Linux 4.6: acl,active_logs=6,background_gc=on,extent_cache,inline_data,relatime,rw,user_xattr - F2FS: Linux 4.7: acl,active_logs=6,background_gc=on,extent_cache,inline_data,relatime,rw,user_xattr - F2FS: Linux 4.8: acl,active_logs=6,background_gc=on,extent_cache,flush_merge,inline_data,lazytime,mode=adaptive,relatime,rw,user_xattr - F2FS: Linux 4.9: acl,active_logs=6,background_gc=on,extent_cache,flush_merge,inline_data,inline_dentry,lazytime,mode=adaptive,relatime,rw,user_xattr - Btrfs: Linux 4.6: relatime,rw,space_cache,ssd,subvol=/,subvolid=5 - Btrfs: Linux 4.7: relatime,rw,space_cache,ssd,subvol=/,subvolid=5 - Btrfs: Linux 4.8: relatime,rw,space_cache,ssd,subvol=/,subvolid=5 - Btrfs: Linux 4.9: relatime,rw,space_cache,ssd,subvol=/,subvolid=5 - XFS: Linux 4.6: attr2,inode64,noquota,relatime,rw - XFS: Linux 4.7: attr2,inode64,noquota,relatime,rw - XFS: Linux 4.8: attr2,inode64,noquota,relatime,rw - XFS: Linux 4.9: attr2,inode64,noquota,relatime,rw
fs-mark: 1000 Files, 1MB Size fs-mark: 5000 Files, 1MB Size, 4 Threads fs-mark: 4000 Files, 32 Sub Dirs, 1MB Size blogbench: Read blogbench: Write fio: Rand Read - Libaio - No - Yes - 4KB - Default Test Directory - MB/s fio: Rand Write - Libaio - No - Yes - 4KB - Default Test Directory - MB/s fio: Seq Read - Libaio - No - Yes - 4KB - Default Test Directory - MB/s fio: Seq Write - Libaio - No - Yes - 4KB - Default Test Directory - MB/s compilebench: Initial Create postmark: Disk Transaction Performance sqlite: Default Test Directory EXT4 F2FS Btrfs XFS Linux 4.6 Linux 4.7 Linux 4.8 Linux 4.9 Linux 4.6 Linux 4.7 Linux 4.8 Linux 4.9 Linux 4.6 Linux 4.7 Linux 4.8 Linux 4.9 Linux 4.6 Linux 4.7 Linux 4.8 Linux 4.9 63.45 51.63 43.55 2303055 6010 225.81 286.24 205.06 427.15 441.34 6578 41.10 62.48 51.33 43.16 2464416 5440 210.79 287.06 226.64 430.07 439.47 6756 39.07 61.60 51.47 42.96 2607836 5863 210.70 355.87 127.31 359.77 452.33 6522 37.89 61.77 51.63 42.63 2273978 5920 212.53 288.47 210.01 428.98 451.62 6466 38.25 64.07 52.67 45.27 3154997 4938 216.39 287.17 217.75 428.90 435.93 7980 40.00 63.88 52.40 45.30 3336775 4452 207.41 287.63 218.37 429.56 405.82 8154 40.33 63.32 47.70 44.95 3202812 4332 220.92 357.91 128.54 360.71 403.59 8154 39.97 62.98 52.20 45.30 3258119 3523 213.47 286.02 221.09 430.82 356.18 8243 40.00 68.60 50.10 44.93 3219050 4439 213.12 94.47 250.56 97.32 123.51 6697 131.38 71.55 49.73 46.17 3234609 4451 212.15 93.06 244.42 99.25 133.18 6697 132.00 55.93 51.07 46.08 3170021 4680 210.16 90.57 248.34 91.08 170.60 6637 85.47 64.42 50.30 44.92 3070448 4655 216.27 90.31 250.36 99.11 192.47 6303 84.87 77.32 52.13 45.77 3029239 3448 216.58 282.43 221.19 430.30 325.14 6199 35.23 98.15 51.47 45.37 3227148 3311 215.67 287.46 227.45 430.72 310.81 6163 35.31 103.70 52.40 45.23 3268490 3417 214.86 352.00 128.42 359.56 345.05 3928 35.12 93.52 53.07 45.98 3112281 3380 215.99 279.83 222.20 430.11 303.89 3995 35.33 OpenBenchmarking.org
FS-Mark Test: 1000 Files, 1MB Size Min Avg Max Btrfs 55.9 65.1 71.6 EXT4 61.6 62.3 63.5 F2FS 63.0 63.6 64.1 XFS 77.3 93.2 103.7 OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 1000 Files, 1MB Size Linux 4.6 Linux 4.7 Linux 4.8 Linux 4.9 20 40 60 80 100
FS-Mark Test: 5000 Files, 1MB Size, 4 Threads Min Avg Max Btrfs 49.7 50.3 51.1 EXT4 51.3 51.5 51.6 F2FS 47.7 51.2 52.7 XFS 51.5 52.3 53.1 OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 5000 Files, 1MB Size, 4 Threads Linux 4.6 Linux 4.7 Linux 4.8 Linux 4.9 15 30 45 60 75
FS-Mark Test: 4000 Files, 32 Sub Dirs, 1MB Size Min Avg Max Btrfs 44.9 45.5 46.2 EXT4 42.6 43.1 43.6 F2FS 45.0 45.2 45.3 XFS 45.2 45.6 46.0 OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 4000 Files, 32 Sub Dirs, 1MB Size Linux 4.6 Linux 4.7 Linux 4.8 Linux 4.9 12 24 36 48 60
BlogBench Test: Read Min Avg Max Btrfs 3070448 3173532 3234609 EXT4 2273978 2412321 2607836 F2FS 3154997 3238176 3336775 XFS 3029239 3159290 3268490 OpenBenchmarking.org Final Score, More Is Better BlogBench 1.0 Test: Read Linux 4.6 Linux 4.7 Linux 4.8 Linux 4.9 800K 1600K 2400K 3200K 4000K
BlogBench Test: Write Min Avg Max Btrfs 4439 4556 4680 EXT4 5440 5808 6010 F2FS 3523 4311 4938 XFS 3311 3389 3448 OpenBenchmarking.org Final Score, More Is Better BlogBench 1.0 Test: Write Linux 4.6 Linux 4.7 Linux 4.8 Linux 4.9 1600 3200 4800 6400 8000
Flexible IO Tester Type: Random Read - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/s Min Avg Max Btrfs 210.2 212.9 216.3 EXT4 210.7 215.0 225.8 F2FS 207.4 214.5 220.9 XFS 214.9 215.8 216.6 OpenBenchmarking.org MB/s, More Is Better Flexible IO Tester 2.1.13 Type: Random Read - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/s Linux 4.6 Linux 4.7 Linux 4.8 Linux 4.9 60 120 180 240 300
Flexible IO Tester Type: Random Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/s Min Avg Max Btrfs 90.3 92.1 94.5 EXT4 286.2 304.4 355.9 F2FS 286.0 304.7 357.9 XFS 279.8 300.4 352.0 OpenBenchmarking.org MB/s, More Is Better Flexible IO Tester 2.1.13 Type: Random Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/s Linux 4.6 Linux 4.7 Linux 4.8 Linux 4.9 100 200 300 400 500
Flexible IO Tester Type: Sequential Read - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/s Min Avg Max Btrfs 244.4 248.4 250.6 EXT4 127.3 192.3 226.6 F2FS 128.5 196.4 221.1 XFS 128.4 199.8 227.5 OpenBenchmarking.org MB/s, More Is Better Flexible IO Tester 2.1.13 Type: Sequential Read - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/s Linux 4.6 Linux 4.7 Linux 4.8 Linux 4.9 60 120 180 240 300
Flexible IO Tester Type: Sequential Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/s Min Avg Max Btrfs 91.1 96.7 99.3 EXT4 359.8 411.5 430.1 F2FS 360.7 412.5 430.8 XFS 359.6 412.7 430.7 OpenBenchmarking.org MB/s, More Is Better Flexible IO Tester 2.1.13 Type: Sequential Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/s Linux 4.6 Linux 4.7 Linux 4.8 Linux 4.9 110 220 330 440 550
Compile Bench Test: Initial Create Min Avg Max Btrfs 123.5 154.9 192.5 EXT4 439.5 446.2 452.3 F2FS 356.2 400.4 435.9 XFS 303.9 321.2 345.1 OpenBenchmarking.org MB/s, More Is Better Compile Bench 0.6 Test: Initial Create Linux 4.6 Linux 4.7 Linux 4.8 Linux 4.9 120 240 360 480 600
PostMark Disk Transaction Performance Min Avg Max Btrfs 6303 6584 6697 EXT4 6466 6581 6756 F2FS 7980 8133 8243 XFS 3928 5071 6199 OpenBenchmarking.org TPS, More Is Better PostMark 1.51 Disk Transaction Performance Linux 4.6 Linux 4.7 Linux 4.8 Linux 4.9 2K 4K 6K 8K 10K
SQLite Test Target: Default Test Directory Min Avg Max Btrfs 84.9 108.4 132.0 EXT4 37.9 39.1 41.1 F2FS 40.0 40.1 40.3 XFS 35.1 35.2 35.3 OpenBenchmarking.org Seconds, Fewer Is Better SQLite 3.8.10.2 Test Target: Default Test Directory Linux 4.6 Linux 4.7 Linux 4.8 Linux 4.9 40 80 120 160 200
Phoronix Test Suite v10.8.5