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 1608243-LO-HDDDISKTE91 HDD EXT4 XFS Btrfs Disk Testing Linux 4.8 - Phoronix Test Suite 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.
HTML result view exported from: https://openbenchmarking.org/result/1608243-LO-HDDDISKTE91&grs&sor&rro .
HDD EXT4 XFS Btrfs Disk Testing Linux 4.8 Processor Motherboard Chipset Memory Disk Graphics Audio Monitor Network OS Kernel Desktop Display Server Display Driver OpenGL Compiler File-System Screen Resolution Btrfs EXT4 XFS NILFS2 Intel Xeon E3-1280 v5 @ 4.00GHz (8 Cores) MSI C236A WORKSTATION (MS-7998) v1.0 Intel Sky Lake 16384MB 2000GB Hitachi HUA72302 + Samsung SSD 950 PRO 256GB NVIDIA GeForce GTX 980 Ti 6144MB Realtek ALC1150 Acer B286HK Intel Connection Ubuntu 16.04 4.8.0-999-generic (x86_64) 20160818 Unity 7.4.0 X Server 1.18.3 nouveau 1.0.12 4.1 Mesa 12.1.0-devel- padoka PPA Gallium 0.4 GCC 5.4.0 20160609 btrfs 3840x2160 ext4 xfs nilfs OpenBenchmarking.org Compiler 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,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 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 Processor Details - Scaling Governor: intel_pstate powersave System Details - Python 2.7.12.
HDD EXT4 XFS Btrfs Disk Testing Linux 4.8 compilebench: Initial Create fio: Seq Read - Libaio - No - Yes - 4KB - Default Test Directory - MB/s sqlite: Default Test Directory fs-mark: 1000 Files, 1MB Size postmark: Disk Transaction Performance fs-mark: 5000 Files, 1MB Size, 4 Threads pgbench: On-Disk - Normal Load - Read Write fio: Rand Read - Libaio - No - Yes - 4KB - Default Test Directory - MB/s fio: Seq Write - Libaio - No - Yes - 4KB - Default Test Directory - MB/s Btrfs EXT4 XFS NILFS2 350.01 1.84 849.78 26.37 7286 44.67 92.82 1.79 62.51 452.58 72.58 558.75 17.17 7352 37.73 118.67 1.77 71.97 388.90 104.85 269.80 37.03 6049 46.40 98.38 1.81 77.36 74.95 2.26 193.60 42.00 593 59.60 79.21 1.90 27.91 OpenBenchmarking.org
Compile Bench Test: Initial Create OpenBenchmarking.org MB/s, More Is Better Compile Bench 0.6 Test: Initial Create NILFS2 Btrfs XFS EXT4 100 200 300 400 500 SE +/- 0.41, N = 3 SE +/- 4.62, N = 6 SE +/- 2.26, N = 3 SE +/- 7.76, N = 4 74.95 350.01 388.90 452.58
Flexible IO Tester Type: Sequential Read - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/s 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 Btrfs NILFS2 EXT4 XFS 20 40 60 80 100 SE +/- 0.00, N = 3 SE +/- 0.01, N = 3 SE +/- 0.07, N = 3 SE +/- 0.10, N = 3 1.84 2.26 72.58 104.85 1. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl
SQLite Test Target: Default Test Directory OpenBenchmarking.org Seconds, Fewer Is Better SQLite 3.8.10.2 Test Target: Default Test Directory Btrfs EXT4 XFS NILFS2 200 400 600 800 1000 SE +/- 10.16, N = 3 SE +/- 4.27, N = 3 SE +/- 5.25, N = 3 SE +/- 0.19, N = 3 849.78 558.75 269.80 193.60 1. (CC) gcc options: -O2 -ldl -lpthread
FS-Mark Test: 1000 Files, 1MB Size OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 1000 Files, 1MB Size EXT4 Btrfs XFS NILFS2 10 20 30 40 50 SE +/- 0.03, N = 3 SE +/- 0.18, N = 3 SE +/- 0.23, N = 3 SE +/- 0.10, N = 3 17.17 26.37 37.03 42.00 1. (CC) gcc options: -static
PostMark Disk Transaction Performance OpenBenchmarking.org TPS, More Is Better PostMark 1.51 Disk Transaction Performance NILFS2 XFS Btrfs EXT4 1600 3200 4800 6400 8000 SE +/- 1.00, N = 3 SE +/- 48.33, N = 3 SE +/- 144.33, N = 3 SE +/- 0.00, N = 3 593 6049 7286 7352 1. (CC) gcc options: -O3
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 EXT4 Btrfs XFS NILFS2 13 26 39 52 65 SE +/- 0.71, N = 3 SE +/- 0.19, N = 3 SE +/- 0.00, N = 3 SE +/- 0.23, N = 3 37.73 44.67 46.40 59.60 1. (CC) gcc options: -static
PostgreSQL pgbench Scaling: On-Disk - Test: Normal Load - Mode: Read Write OpenBenchmarking.org TPS, More Is Better PostgreSQL pgbench 9.4.3 Scaling: On-Disk - Test: Normal Load - Mode: Read Write NILFS2 Btrfs XFS EXT4 30 60 90 120 150 SE +/- 2.35, N = 3 79.21 92.82 98.38 118.67 1. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -pthread -lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -lm
Flexible IO Tester Type: Random Read - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/s 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 EXT4 Btrfs XFS NILFS2 0.4275 0.855 1.2825 1.71 2.1375 SE +/- 0.00, N = 3 SE +/- 0.00, N = 3 SE +/- 0.01, N = 3 SE +/- 0.00, N = 3 1.77 1.79 1.81 1.90 1. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl
Flexible IO Tester Type: Sequential Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/s 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 NILFS2 Btrfs EXT4 XFS 20 40 60 80 100 SE +/- 1.27, N = 6 SE +/- 4.54, N = 6 SE +/- 0.42, N = 3 SE +/- 0.04, N = 3 27.91 62.51 71.97 77.36 1. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl
Phoronix Test Suite v10.8.4