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&sor&grr.

ProcessorMotherboardChipsetMemoryDiskGraphicsAudioNetworkOSKernelDesktopDisplay ServerDisplay DriverOpenGLCompilerFile-SystemScreen ResolutionLinux 3.9Linux 3.10Linux 3.11Linux 3.9Linux 3.10Linux 3.11Linux 3.9Linux 3.10Linux 3.11Linux 3.9Linux 3.10Linux 3.11 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 DesktopIntel Haswell HDMIIntel Connection I217-VUbuntu 13.103.9.0-030900-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.3btrfs1920x10803.10.0-031000-generic (x86_64)Realtek ALC8923.11.0-999-generic (x86_64)Intel Haswell HDMI3.9.0-030900-generic (x86_64)ext43.10.0-031000-generic (x86_64)Realtek ALC8923.11.0-999-generic (x86_64)Intel Haswell HDMI3.9.0-030900-generic (x86_64)F2FS3.10.0-031000-generic (x86_64)Realtek ALC8923.11.0-999-generic (x86_64)Intel Haswell HDMI3.9.0-030900-generic (x86_64)xfs3.10.0-031000-generic (x86_64)Realtek ALC8923.11.0-999-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.9: Btrfs: DEADLINE / relatime,rw,space_cache,ssd- Linux 3.10: Btrfs: DEADLINE / relatime,rw,space_cache,ssd- Linux 3.11: Btrfs: DEADLINE / relatime,rw,space_cache,ssd- Linux 3.9: EXT4: DEADLINE / data=ordered,relatime,rw- Linux 3.10: EXT4: DEADLINE / data=ordered,relatime,rw- Linux 3.11: EXT4: DEADLINE / data=ordered,relatime,rw- Linux 3.9: 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.11: F2FS: DEADLINE / acl,active_logs=6,background_gc=on,relatime,rw,user_xattr- Linux 3.9: XFS: DEADLINE / attr2,inode64,noquota,relatime,rw- Linux 3.10: XFS: DEADLINE / attr2,inode64,noquota,relatime,rw- Linux 3.11: XFS: DEADLINE / attr2,inode64,noquota,relatime,rwSystem Details- Disk Scheduler: DEADLINE. Python 2.7.5+.Processor Details- Linux 3.11: Btrfs: Scaling Governor: acpi-cpufreq ondemand

compilebench: Initial Createcompilebench: Compileiozone: 64Kb - 8GB - Write Performanceiozone: 64Kb - 8GB - Read Performancedbench: 1fs-mark: 4000 Files, 32 Sub Dirs, 1MB Sizefs-mark: 5000 Files, 1MB Size, 4 Threadsfs-mark: 1000 Files, 1MB Sizefio: Intel IOMeter File Server Access PatternLinux 3.9Linux 3.10Linux 3.11Linux 3.9Linux 3.10Linux 3.11Linux 3.9Linux 3.10Linux 3.11Linux 3.9Linux 3.10Linux 3.11 Btrfs Btrfs Btrfs EXT4 EXT4 EXT4 F2FS F2FS F2FS XFS XFS XFS151.62411.55494.316159.77318.38290.23387.57296.50164.85137.66415.97494.626077.06295.06234.10389.93212.43166.26144.69406.92494.585998.34292.19229.47391.57247.52163.33241.09709.87488.176071.42373.72280.73390.53287.4048.51223.40692.21490.666080.80329.34275.40393.07282.4048.82203.30670.35489.415976.68310.62263.00395.73272.2048.43211.68713.15490.893362.911140.46386.20438.13388.67108.32209.77637.49490.684831.67551.24363.97336.37365.03116.33173.92612.93487.85383.27590.18358.53412.13361.13115.65176.50655.91490.996234.61379.43214.10379.27219.37112.58163.69652.25490.806166.15358.61195.83371.17209.00112.79153.76638.73490.305982.74354.37194.43374.53197.83112.93OpenBenchmarking.org

Compile Bench

Test: Initial Create

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

Compile Bench

Test: Compile

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

IOzone

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

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

IOzone

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

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

Dbench

Client Count: 1

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

FS-Mark

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

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

FS-Mark

Test: 5000 Files, 1MB Size, 4 Threads

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

FS-Mark

Test: 1000 Files, 1MB Size

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

Flexible IO Tester

Test: Intel IOMeter File Server Access Pattern

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


Phoronix Test Suite v10.8.5