Linux 3.11 Kernel File-System Benchmarks

Intel Core i7-4770K Haswell desktop benchmarks of the Linux 3.11 kernel with different file-systems. Linux performance file-system comparison of Btrfs, EXT4, XFS, and F2FS on an OCZ Vertex 3 SSD. Benchmarks for a future article on Phoronix.com.

HTML result view exported from: https://openbenchmarking.org/result/1307199-SO-LINUX311K82&rdt.

ProcessorMotherboardChipsetMemoryDiskGraphicsAudioNetworkOSKernelDesktopDisplay ServerDisplay DriverOpenGLCompilerFile-SystemScreen ResolutionLinux 3.11Linux 3.10Linux 3.9Linux 3.11Linux 3.10Linux 3.9Linux 3.11Linux 3.10Linux 3.9Linux 3.11Linux 3.10Linux 3.9 Btrfs Btrfs Btrfs EXT4 EXT4 EXT4 F2FS F2FS F2FS XFS XFS XFSIntel Core i7-4770K @ 3.50GHz (8 Cores)Intel DH87RLIntel 4th Gen Core DRAM15360MB240GB OCZ VERTEX3Intel Haswell DesktopRealtek ALC892Intel Connection I217-VUbuntu 13.103.11.0-999-generic (x86_64)Unity 7.0.2X Server 1.14.2intel 2.21.123.1 Mesa 9.2.0-devel (git-7fd30a8)GCC 4.8 + LLVM 3.3btrfs1920x1080Intel Haswell HDMI3.10.0-031000-generic (x86_64)3.9.0-030900-generic (x86_64)Realtek ALC8923.11.0-999-generic (x86_64)ext4Intel Haswell HDMI3.10.0-031000-generic (x86_64)3.9.0-030900-generic (x86_64)Realtek ALC8923.11.0-999-generic (x86_64)F2FSIntel Haswell HDMI3.10.0-031000-generic (x86_64)3.9.0-030900-generic (x86_64)Realtek ALC8923.11.0-999-generic (x86_64)xfsIntel Haswell HDMI3.10.0-031000-generic (x86_64)3.9.0-030900-generic (x86_64)OpenBenchmarking.orgCompiler 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-ecj-jar=/usr/share/java/eclipse-ecj.jar --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64/jre --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.8-amd64 --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64 --with-multilib-list=m32,m64,mx32 --with-tune=generic -v Disk Details- Linux 3.11: Btrfs: DEADLINE / relatime,rw,space_cache,ssd- Linux 3.10: Btrfs: DEADLINE / relatime,rw,space_cache,ssd- Linux 3.9: Btrfs: DEADLINE / relatime,rw,space_cache,ssd- Linux 3.11: EXT4: DEADLINE / data=ordered,relatime,rw- Linux 3.10: EXT4: DEADLINE / data=ordered,relatime,rw- Linux 3.9: EXT4: DEADLINE / data=ordered,relatime,rw- Linux 3.11: F2FS: DEADLINE / acl,active_logs=6,background_gc=on,relatime,rw,user_xattr- Linux 3.10: F2FS: DEADLINE / acl,active_logs=6,background_gc_on,relatime,rw,user_xattr- Linux 3.9: F2FS: DEADLINE / acl,active_logs=6,background_gc_on,relatime,rw,user_xattr- Linux 3.11: XFS: DEADLINE / attr2,inode64,noquota,relatime,rw- Linux 3.10: XFS: DEADLINE / attr2,inode64,noquota,relatime,rw- Linux 3.9: XFS: DEADLINE / attr2,inode64,noquota,relatime,rwProcessor Details- Linux 3.11: Btrfs: Scaling Governor: acpi-cpufreq ondemandSystem Details- Disk Scheduler: DEADLINE. Python 2.7.5+.

fio: Intel IOMeter File Server Access Patternfs-mark: 1000 Files, 1MB Sizefs-mark: 5000 Files, 1MB Size, 4 Threadsfs-mark: 4000 Files, 32 Sub Dirs, 1MB Sizedbench: 1iozone: 64Kb - 8GB - Read Performanceiozone: 64Kb - 8GB - Write Performancecompilebench: Compilecompilebench: Initial CreateLinux 3.11Linux 3.10Linux 3.9Linux 3.11Linux 3.10Linux 3.9Linux 3.11Linux 3.10Linux 3.9Linux 3.11Linux 3.10Linux 3.9 Btrfs Btrfs Btrfs EXT4 EXT4 EXT4 F2FS F2FS F2FS XFS XFS XFS163.33247.52391.57229.47292.195998.34494.58406.92144.69166.26212.43389.93234.10295.066077.06494.62415.97137.66164.85296.50387.57290.23318.386159.77494.31411.55151.6248.43272.20395.73263.00310.625976.68489.41670.35203.3048.82282.40393.07275.40329.346080.80490.66692.21223.4048.51287.40390.53280.73373.726071.42488.17709.87241.09115.65361.13412.13358.53590.18383.27487.85612.93173.92116.33365.03336.37363.97551.244831.67490.68637.49209.77108.32388.67438.13386.201140.463362.91490.89713.15211.68112.93197.83374.53194.43354.375982.74490.30638.73153.76112.79209.00371.17195.83358.616166.15490.80652.25163.69112.58219.37379.27214.10379.436234.61490.99655.91176.50OpenBenchmarking.org

Flexible IO Tester

Test: Intel IOMeter File Server Access Pattern

Linux 3.11Linux 3.10Linux 3.9OpenBenchmarking.orgSeconds (Run Time), Fewer Is BetterFlexible IO Tester 1.57Test: Intel IOMeter File Server Access PatternBtrfsEXT4F2FSXFS4080120160200SE +/- 1.40, N = 3SE +/- 0.43, N = 3SE +/- 2.09, N = 6SE +/- 1.72, N = 3SE +/- 0.97, N = 3SE +/- 0.47, N = 3SE +/- 2.92, N = 6SE +/- 1.50, N = 3SE +/- 1.02, N = 3SE +/- 0.54, N = 3SE +/- 0.21, N = 3SE +/- 0.87, N = 3163.3348.43115.65112.93166.2648.82116.33112.79164.8548.51108.32112.581. (CC) gcc options: -std=gnu99 -O2 -rdynamic -lm -lpthread -ldl -lrt -laio

FS-Mark

Test: 1000 Files, 1MB Size

Linux 3.11Linux 3.10Linux 3.9OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 1000 Files, 1MB SizeBtrfsEXT4F2FSXFS80160240320400SE +/- 14.07, N = 6SE +/- 0.85, N = 3SE +/- 0.75, N = 3SE +/- 5.22, N = 6SE +/- 8.49, N = 6SE +/- 2.78, N = 3SE +/- 0.89, N = 3SE +/- 7.36, N = 6SE +/- 2.78, N = 3SE +/- 1.97, N = 3SE +/- 3.68, N = 3SE +/- 14.24, N = 6247.52272.20361.13197.83212.43282.40365.03209.00296.50287.40388.67219.371. (CC) gcc options: -static

FS-Mark

Test: 5000 Files, 1MB Size, 4 Threads

Linux 3.11Linux 3.10Linux 3.9OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 5000 Files, 1MB Size, 4 ThreadsBtrfsEXT4F2FSXFS90180270360450SE +/- 0.93, N = 3SE +/- 0.35, N = 3SE +/- 1.88, N = 3SE +/- 0.33, N = 3SE +/- 0.64, N = 3SE +/- 0.48, N = 3SE +/- 32.70, N = 6SE +/- 4.33, N = 3SE +/- 1.24, N = 3SE +/- 1.39, N = 3SE +/- 0.62, N = 3SE +/- 0.91, N = 3391.57395.73412.13374.53389.93393.07336.37371.17387.57390.53438.13379.271. (CC) gcc options: -static

FS-Mark

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

Linux 3.11Linux 3.10Linux 3.9OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 4000 Files, 32 Sub Dirs, 1MB SizeBtrfsEXT4F2FSXFS80160240320400SE +/- 5.25, N = 6SE +/- 4.99, N = 3SE +/- 0.23, N = 3SE +/- 0.99, N = 3SE +/- 11.16, N = 6SE +/- 4.32, N = 3SE +/- 2.09, N = 3SE +/- 0.85, N = 3SE +/- 2.37, N = 3SE +/- 2.55, N = 3SE +/- 1.10, N = 3SE +/- 1.06, N = 3229.47263.00358.53194.43234.10275.40363.97195.83290.23280.73386.20214.101. (CC) gcc options: -static

Dbench

Client Count: 1

Linux 3.11Linux 3.10Linux 3.9OpenBenchmarking.orgMB/s, More Is BetterDbench 4.0Client Count: 1BtrfsEXT4F2FSXFS2004006008001000SE +/- 0.42, N = 3SE +/- 0.29, N = 3SE +/- 0.71, N = 3SE +/- 1.92, N = 3SE +/- 0.69, N = 3SE +/- 0.52, N = 3SE +/- 2.57, N = 3SE +/- 0.17, N = 3SE +/- 0.55, N = 3SE +/- 0.42, N = 3SE +/- 3.72, N = 3SE +/- 1.21, N = 3292.19310.62590.18354.37295.06329.34551.24358.61318.38373.721140.46379.431. (CC) gcc options: -lpopt -O2

IOzone

Record Size: 64Kb - File Size: 8GB - Disk Test: Read Performance

Linux 3.11Linux 3.10Linux 3.9OpenBenchmarking.orgMB/s, More Is BetterIOzone 3.405Record Size: 64Kb - File Size: 8GB - Disk Test: Read PerformanceBtrfsEXT4F2FSXFS13002600390052006500SE +/- 23.16, N = 3SE +/- 12.13, N = 3SE +/- 2.21, N = 3SE +/- 14.81, N = 3SE +/- 47.83, N = 3SE +/- 97.23, N = 3SE +/- 875.88, N = 6SE +/- 20.85, N = 3SE +/- 68.06, N = 3SE +/- 47.52, N = 3SE +/- 583.25, N = 6SE +/- 81.90, N = 35998.345976.68383.275982.746077.066080.804831.676166.156159.776071.423362.916234.611. (CC) gcc options: -O3

IOzone

Record Size: 64Kb - File Size: 8GB - Disk Test: Write Performance

Linux 3.11Linux 3.10Linux 3.9OpenBenchmarking.orgMB/s, More Is BetterIOzone 3.405Record Size: 64Kb - File Size: 8GB - Disk Test: Write PerformanceBtrfsEXT4F2FSXFS110220330440550SE +/- 0.24, N = 3SE +/- 1.71, N = 3SE +/- 2.91, N = 3SE +/- 0.49, N = 3SE +/- 0.35, N = 3SE +/- 1.54, N = 3SE +/- 0.62, N = 3SE +/- 0.45, N = 3SE +/- 0.49, N = 3SE +/- 2.56, N = 3SE +/- 0.59, N = 3SE +/- 0.61, N = 3494.58489.41487.85490.30494.62490.66490.68490.80494.31488.17490.89490.991. (CC) gcc options: -O3

Compile Bench

Test: Compile

Linux 3.11Linux 3.10Linux 3.9OpenBenchmarking.orgMB/s, More Is BetterCompile Bench 0.6Test: CompileBtrfsEXT4F2FSXFS150300450600750SE +/- 0.23, N = 3SE +/- 5.30, N = 3SE +/- 7.79, N = 3SE +/- 4.58, N = 3SE +/- 2.67, N = 3SE +/- 12.95, N = 3SE +/- 8.35, N = 3SE +/- 1.87, N = 3SE +/- 1.86, N = 3SE +/- 11.67, N = 6SE +/- 16.52, N = 6SE +/- 1.80, N = 3406.92670.35612.93638.73415.97692.21637.49652.25411.55709.87713.15655.91

Compile Bench

Test: Initial Create

Linux 3.11Linux 3.10Linux 3.9OpenBenchmarking.orgMB/s, More Is BetterCompile Bench 0.6Test: Initial CreateBtrfsEXT4F2FSXFS50100150200250SE +/- 0.50, N = 3SE +/- 2.68, N = 3SE +/- 1.62, N = 3SE +/- 1.06, N = 3SE +/- 0.27, N = 3SE +/- 4.48, N = 3SE +/- 0.64, N = 3SE +/- 4.18, N = 3SE +/- 0.76, N = 3SE +/- 2.93, N = 3SE +/- 3.08, N = 3SE +/- 1.75, N = 3144.69203.30173.92153.76137.66223.40209.77163.69151.62241.09211.68176.50


Phoronix Test Suite v10.8.4