Linux 3.10 Kernel File System - F2FS, EXT4, Btrfs, XFS Btrfs, XFS, EXT4, and F2FS file-system benchmarks from an SSD with the Linux 3.10-rc1 kernel and running Ubuntu Linux distribution. Benchmarking by Michael Larabel for a future article on Phoronix.com.
HTML result view exported from: https://openbenchmarking.org/result/1305166-UT-FILESYSTE20&sor&grt .
Processor Motherboard Chipset Memory Disk Graphics Audio Network OS Kernel Desktop Display Server Display Driver OpenGL Compiler File-System Screen Resolution F2FS EXT4 Btrfs XFS Linux 3.8 Linux 3.9 Linux 3.10-rc1 Linux 3.8 Linux 3.9 Linux 3.10-rc1 Linux 3.8 Linux 3.9 Linux 3.10-rc1 Linux 3.8 Linux 3.9 Linux 3.10-rc1 Intel Core i7 720Q @ 1.60GHz (8 Cores) LENOVO 4318CTO Intel Core DMI 4096MB 160GB INTEL SSDSA2M160 NVIDIA Quadro FX 880M 1024MB (405/324MHz) Conexant CX20585 Intel 82577LM Gigabit Connection + Intel Centrino Ultimate-N 6300 Ubuntu 13.04 3.8.0-030800-generic (x86_64) Unity 7.0.0 X Server 1.13.3 nouveau 1.0.7 3.0 Mesa 9.1.1 Gallium 0.4 GCC 4.7 F2FS 1600x900 3.9.0-030900-generic (x86_64) 3.10.0-031000rc1-generic (x86_64) 3.8.0-030800-generic (x86_64) ext4 3.9.0-030900-generic (x86_64) 3.10.0-031000rc1-generic (x86_64) 3.8.0-030800-generic (x86_64) btrfs 3.9.0-030900-generic (x86_64) 3.10.0-031000rc1-generic (x86_64) 3.8.0-030800-generic (x86_64) xfs 3.9.0-030900-generic (x86_64) 3.10.0-031000rc1-generic (x86_64) OpenBenchmarking.org Compiler Details - --build=x86_64-linux-gnu --disable-cloog-version-check --disable-ppl-version-check --disable-werror --enable-checking=release --enable-clocale=gnu --enable-cloog-backend=ppl --enable-gnu-unique-object --enable-languages=c,c++,go,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-cloog --with-multilib-list=m32,m64,mx32 --with-tune=generic -v Disk Details - F2FS: Linux 3.8: DEADLINE / acl,active_logs=6,background_gc_on,relatime,rw,user_xattr - F2FS: Linux 3.9: DEADLINE / acl,active_logs=6,background_gc_on,relatime,rw,user_xattr - F2FS: Linux 3.10-rc1: DEADLINE / acl,active_logs=6,background_gc_on,relatime,rw,user_xattr - EXT4: Linux 3.8: DEADLINE / data=ordered,relatime,rw - EXT4: Linux 3.9: DEADLINE / data=ordered,relatime,rw - EXT4: Linux 3.10-rc1: DEADLINE / data=ordered,relatime,rw - Btrfs: Linux 3.8: DEADLINE / relatime,rw,space_cache,ssd - Btrfs: Linux 3.9: DEADLINE / relatime,rw,space_cache,ssd - Btrfs: Linux 3.10-rc1: DEADLINE / relatime,rw,space_cache,ssd - XFS: Linux 3.8: DEADLINE / attr2,inode64,noquota,relatime,rw - XFS: Linux 3.9: DEADLINE / attr2,inode64,noquota,relatime,rw - XFS: Linux 3.10-rc1: DEADLINE / attr2,inode64,noquota,relatime,rw Processor Details - Scaling Governor: ondemand System Details - Disk Scheduler: DEADLINE. Python 2.7.4.
compilebench: Initial Create dbench: 1 fio: Intel IOMeter File Server Access Pattern fs-mark: 1000 Files, 1MB Size fs-mark: 5000 Files, 1MB Size, 4 Threads fs-mark: 4000 Files, 32 Sub Dirs, 1MB Size iozone: 64Kb - 8GB - Read Performance iozone: 64Kb - 8GB - Write Performance pgbench: TPC-B Transactions Per Second F2FS EXT4 Btrfs XFS Linux 3.8 Linux 3.9 Linux 3.10-rc1 Linux 3.8 Linux 3.9 Linux 3.10-rc1 Linux 3.8 Linux 3.9 Linux 3.10-rc1 Linux 3.8 Linux 3.9 Linux 3.10-rc1 55.50 590.82 364.20 94.53 100.00 95.20 226.08 104.12 2920.03 54.83 621.57 362.40 96.03 100.13 94.77 223.77 103.88 3032.89 58.04 446.16 391.60 93.63 89.15 92.43 229.19 103.32 832.20 120.55 198.37 103.56 81.90 98.13 80.97 231.53 101.06 3056.51 109.04 207.00 103.90 79.17 97.33 78.90 233.09 101.87 3146.43 112.38 204.19 105.01 79.57 97.20 79.37 232.96 101.15 3202.89 170.77 668.71 69.67 94.40 69.47 230.55 90.55 1163.34 55.45 275.40 665.85 83.07 97.77 81.20 199.94 103.04 715.27 58.59 233.64 675.69 82.53 97.33 81.10 201.34 102.86 681.96 94.88 164.81 226.44 82.10 94.93 80.50 225.40 102.24 1803.83 89.46 168.49 227.13 83.63 95.10 81.90 226.34 102.46 1811.71 90.28 171.90 226.41 82.23 96.13 81.00 222.26 102.73 1816.04 OpenBenchmarking.org
Compile Bench Test: Initial Create EXT4 XFS Btrfs F2FS OpenBenchmarking.org MB/s, More Is Better Compile Bench 0.6 Test: Initial Create Linux 3.8 Linux 3.10-rc1 Linux 3.9 30 60 90 120 150 SE +/- 2.19, N = 3 SE +/- 3.16, N = 6 SE +/- 1.99, N = 6 SE +/- 1.92, N = 6 SE +/- 1.38, N = 4 SE +/- 1.44, N = 4 SE +/- 0.71, N = 3 SE +/- 0.50, N = 3 SE +/- 1.04, N = 6 SE +/- 0.60, N = 3 SE +/- 0.40, N = 3 120.55 112.38 109.04 94.88 90.28 89.46 58.59 55.45 58.04 55.50 54.83
Dbench Client Count: 1 F2FS Btrfs EXT4 XFS OpenBenchmarking.org MB/s, More Is Better Dbench 4.0 Client Count: 1 Linux 3.9 Linux 3.8 Linux 3.10-rc1 130 260 390 520 650 SE +/- 2.63, N = 3 SE +/- 2.82, N = 3 SE +/- 2.68, N = 3 SE +/- 0.45, N = 3 SE +/- 0.37, N = 3 SE +/- 1.14, N = 3 SE +/- 0.19, N = 3 SE +/- 0.26, N = 3 SE +/- 0.36, N = 3 SE +/- 0.11, N = 3 SE +/- 0.15, N = 3 SE +/- 0.19, N = 3 621.57 590.82 446.16 275.40 233.64 170.77 207.00 204.19 198.37 171.90 168.49 164.81 1. (CC) gcc options: -lpopt -O2
Flexible IO Tester Test: Intel IOMeter File Server Access Pattern EXT4 XFS F2FS Btrfs OpenBenchmarking.org Seconds (Run Time), Fewer Is Better Flexible IO Tester 1.57 Test: Intel IOMeter File Server Access Pattern Linux 3.8 Linux 3.9 Linux 3.10-rc1 150 300 450 600 750 SE +/- 0.08, N = 3 SE +/- 0.13, N = 3 SE +/- 0.55, N = 3 SE +/- 0.78, N = 3 SE +/- 0.58, N = 3 SE +/- 0.53, N = 3 SE +/- 1.45, N = 3 SE +/- 0.99, N = 3 SE +/- 11.41, N = 6 SE +/- 3.19, N = 3 SE +/- 2.99, N = 3 SE +/- 1.64, N = 3 103.56 103.90 105.01 226.41 226.44 227.13 362.40 364.20 391.60 665.85 668.71 675.69 1. (CC) gcc options: -std=gnu99 -O2 -rdynamic -lm -lpthread -ldl -lrt -laio
FS-Mark Test: 1000 Files, 1MB Size F2FS XFS Btrfs EXT4 OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 1000 Files, 1MB Size Linux 3.9 Linux 3.8 Linux 3.10-rc1 20 40 60 80 100 SE +/- 1.41, N = 3 SE +/- 1.60, N = 3 SE +/- 1.15, N = 3 SE +/- 0.97, N = 3 SE +/- 0.60, N = 3 SE +/- 0.75, N = 3 SE +/- 1.22, N = 3 SE +/- 0.56, N = 3 SE +/- 1.26, N = 3 SE +/- 0.65, N = 3 SE +/- 0.73, N = 3 SE +/- 0.70, N = 3 96.03 94.53 93.63 83.63 82.23 82.10 83.07 82.53 69.67 81.90 79.57 79.17 1. (CC) gcc options: -static
FS-Mark Test: 5000 Files, 1MB Size, 4 Threads F2FS EXT4 Btrfs XFS OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 5000 Files, 1MB Size, 4 Threads Linux 3.9 Linux 3.8 Linux 3.10-rc1 20 40 60 80 100 SE +/- 0.23, N = 3 SE +/- 0.44, N = 3 SE +/- 7.25, N = 6 SE +/- 0.13, N = 3 SE +/- 0.13, N = 3 SE +/- 0.00, N = 3 SE +/- 0.20, N = 3 SE +/- 0.13, N = 3 SE +/- 0.48, N = 3 SE +/- 0.70, N = 3 SE +/- 0.74, N = 3 100.13 100.00 89.15 98.13 97.33 97.20 97.77 97.33 94.40 96.13 95.10 94.93 1. (CC) gcc options: -static
FS-Mark Test: 4000 Files, 32 Sub Dirs, 1MB Size F2FS XFS Btrfs EXT4 OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 4000 Files, 32 Sub Dirs, 1MB Size Linux 3.8 Linux 3.9 Linux 3.10-rc1 20 40 60 80 100 SE +/- 0.83, N = 3 SE +/- 0.66, N = 3 SE +/- 1.32, N = 3 SE +/- 0.85, N = 3 SE +/- 0.57, N = 3 SE +/- 0.72, N = 3 SE +/- 0.71, N = 3 SE +/- 0.95, N = 3 SE +/- 0.50, N = 3 SE +/- 0.24, N = 3 SE +/- 0.12, N = 3 SE +/- 0.12, N = 3 95.20 94.77 92.43 81.90 81.00 80.50 81.20 81.10 69.47 80.97 79.37 78.90 1. (CC) gcc options: -static
IOzone Record Size: 64Kb - File Size: 8GB - Disk Test: Read Performance EXT4 Btrfs F2FS XFS OpenBenchmarking.org MB/s, More Is Better IOzone 3.405 Record Size: 64Kb - File Size: 8GB - Disk Test: Read Performance Linux 3.9 Linux 3.10-rc1 Linux 3.8 50 100 150 200 250 SE +/- 1.09, N = 3 SE +/- 1.94, N = 3 SE +/- 4.74, N = 6 SE +/- 3.08, N = 3 SE +/- 1.11, N = 3 SE +/- 0.35, N = 3 SE +/- 3.62, N = 3 SE +/- 2.08, N = 3 SE +/- 0.24, N = 3 SE +/- 3.35, N = 3 SE +/- 2.96, N = 3 SE +/- 3.70, N = 4 233.09 232.96 231.53 230.55 201.34 199.94 229.19 226.08 223.77 226.34 225.40 222.26 1. (CC) gcc options: -O3
IOzone Record Size: 64Kb - File Size: 8GB - Disk Test: Write Performance F2FS Btrfs XFS EXT4 OpenBenchmarking.org MB/s, More Is Better IOzone 3.405 Record Size: 64Kb - File Size: 8GB - Disk Test: Write Performance Linux 3.8 Linux 3.9 Linux 3.10-rc1 20 40 60 80 100 SE +/- 0.07, N = 3 SE +/- 0.29, N = 3 SE +/- 0.15, N = 3 SE +/- 0.03, N = 3 SE +/- 0.20, N = 3 SE +/- 1.14, N = 3 SE +/- 0.16, N = 3 SE +/- 0.39, N = 3 SE +/- 0.25, N = 3 SE +/- 0.12, N = 3 SE +/- 0.22, N = 3 SE +/- 0.25, N = 3 104.12 103.88 103.32 103.04 102.86 90.55 102.73 102.46 102.24 101.87 101.15 101.06 1. (CC) gcc options: -O3
PostgreSQL pgbench TPC-B Transactions Per Second EXT4 F2FS XFS Btrfs OpenBenchmarking.org TPS, More Is Better PostgreSQL pgbench 8.4.11 TPC-B Transactions Per Second Linux 3.10-rc1 Linux 3.9 Linux 3.8 700 1400 2100 2800 3500 SE +/- 66.13, N = 6 SE +/- 42.64, N = 6 SE +/- 42.39, N = 6 SE +/- 49.67, N = 6 SE +/- 68.17, N = 6 SE +/- 115.50, N = 6 SE +/- 25.59, N = 6 SE +/- 34.71, N = 3 SE +/- 5.16, N = 3 SE +/- 11.04, N = 3 SE +/- 35.05, N = 6 SE +/- 39.56, N = 6 3202.89 3146.43 3056.51 3032.89 2920.03 832.20 1816.04 1811.71 1803.83 1163.34 715.27 681.96 1. (CC) gcc options: -O2 -fno-strict-aliasing -fwrapv -lpgport -lpq -lcrypt -ldl -lm
Phoronix Test Suite v10.8.5