F2FS Linux File-System Benchmarks Benchmarks of the new F2FS (Flash Friendly File-System) being introduced in the mainline Linux 3.8 kernel. Benchmarks by Michael Larabel for a future article on Phoronix.com looking initially at F2FS performance compared to Btrfs, EXT4, and other Linux file-systems.
HTML result view exported from: https://openbenchmarking.org/result/1302181-FO-F2FSFILES24&sor&grs .
F2FS Linux File-System Benchmarks Processor Motherboard Chipset Memory Disk Graphics Audio Network OS Kernel Desktop Display Server Display Driver OpenGL Compiler File-System Screen Resolution F2FS Btrfs EXT3 EXT4 XFS JFS ReiserFS Intel Core i5-2520M @ 2.50GHz (4 Cores) HP 161C Intel 2nd Generation Core Family DRAM 1 x 4096 MB DDR3-1333MHz 160GB INTEL SSDSA2M160 Intel Gen6 Mobile (1300MHz) IDT 92HD81B1X5 Intel 82579LM Gigabit Connection + Intel Centrino Advanced-N 6205 Ubuntu 13.04 3.8.0-999-generic (x86_64) Unity 6.6.0 X Server 1.13.2 intel 2.21.2 3.0 Mesa 9.0.2 GCC 4.7 F2FS 1600x900 btrfs ext4 xfs jfs reiserfs 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: DEADLINE / acl,active_logs=6,background_gc_on,relatime,rw,user_xattr - Btrfs: DEADLINE / relatime,rw,space_cache,ssd - EXT3: DEADLINE / acl,barrier=1,data=ordered,errors=continue,relatime,rw,user_xattr - EXT4: DEADLINE / data=ordered,relatime,rw - XFS: DEADLINE / attr2,inode64,noquota,relatime,rw - JFS: DEADLINE / relatime,rw - ReiserFS: DEADLINE / relatime,rw Processor Details - Scaling Governor: ondemand System Details - Disk Scheduler: DEADLINE. Python 2.7.3.
F2FS Linux File-System Benchmarks fio: Intel IOMeter File Server Access Pattern dbench: 1 compilebench: Initial Create fs-mark: 1000 Files, 1MB Size fs-mark: 4000 Files, 32 Sub Dirs, 1MB Size postmark: Disk Transaction Performance compilebench: Compile fs-mark: 5000 Files, 1MB Size, 4 Threads iozone: 4Kb - 8GB - Read Performance iozone: 64Kb - 8GB - Read Performance iozone: 1MB - 8GB - Read Performance iozone: 64Kb - 8GB - Write Performance iozone: 1MB - 8GB - Write Performance iozone: 4Kb - 8GB - Write Performance F2FS Btrfs EXT3 EXT4 XFS JFS ReiserFS 364.55 569.01 58.36 95.90 93.67 1716 95.68 100.90 242.13 227.28 237.89 101.76 103.01 103.17 592.07 165.37 73.40 66.37 65.17 1154 106.96 94.63 213.66 213.98 211.11 101.05 101.29 100.97 143.39 124.76 98.60 68.73 67.57 1229 101.00 94.53 206.29 206.22 207.70 101.17 101.02 101.45 101.86 195.24 109.52 78.67 78.80 1674 107.13 99.60 235.35 236.29 239.71 101.66 101.89 101.93 228.27 157.83 110.90 81.07 79.80 1704 101.73 95.57 233.45 228.79 230.34 102.60 103.00 102.69 143.62 302.34 55.68 91.53 90.40 1573 92.47 100.23 241.48 241.77 241.34 91.50 93.48 94.12 155.06 109.96 46.67 51.08 50.18 1041 75.85 77.00 221.93 224.26 218.47 95.02 98.38 96.01 OpenBenchmarking.org
Flexible IO Tester Test: Intel IOMeter File Server Access Pattern OpenBenchmarking.org Seconds (Run Time), Fewer Is Better Flexible IO Tester 1.57 Test: Intel IOMeter File Server Access Pattern EXT4 EXT3 JFS ReiserFS XFS F2FS Btrfs 130 260 390 520 650 SE +/- 0.12, N = 3 SE +/- 0.52, N = 3 SE +/- 0.33, N = 3 SE +/- 0.47, N = 3 SE +/- 0.52, N = 3 SE +/- 0.69, N = 3 SE +/- 4.82, N = 3 101.86 143.39 143.62 155.06 228.27 364.55 592.07
Dbench Client Count: 1 OpenBenchmarking.org MB/s, More Is Better Dbench 4.0 Client Count: 1 F2FS JFS EXT4 Btrfs XFS EXT3 ReiserFS 120 240 360 480 600 SE +/- 1.61, N = 3 SE +/- 0.24, N = 3 SE +/- 1.14, N = 3 SE +/- 0.34, N = 3 SE +/- 0.54, N = 3 SE +/- 0.09, N = 3 SE +/- 0.20, N = 3 569.01 302.34 195.24 165.37 157.83 124.76 109.96 1. (CC) gcc options: -lpopt
Compile Bench Test: Initial Create OpenBenchmarking.org MB/s, More Is Better Compile Bench 0.6 Test: Initial Create XFS EXT4 EXT3 Btrfs F2FS JFS ReiserFS 20 40 60 80 100 SE +/- 3.33, N = 3 SE +/- 0.91, N = 3 SE +/- 3.00, N = 3 SE +/- 0.91, N = 3 SE +/- 0.23, N = 3 SE +/- 0.12, N = 3 SE +/- 3.60, N = 3 110.90 109.52 98.60 73.40 58.36 55.68 46.67
FS-Mark Test: 1000 Files, 1MB Size OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 1000 Files, 1MB Size F2FS JFS XFS EXT4 EXT3 Btrfs ReiserFS 20 40 60 80 100 SE +/- 0.96, N = 3 SE +/- 0.62, N = 3 SE +/- 0.73, N = 3 SE +/- 0.58, N = 3 SE +/- 0.99, N = 3 SE +/- 0.47, N = 3 SE +/- 0.82, N = 4 95.90 91.53 81.07 78.67 68.73 66.37 51.08 1. (CC) gcc options: -static
FS-Mark Test: 4000 Files, 32 Sub Dirs, 1MB Size OpenBenchmarking.org Files/s, More Is Better FS-Mark 3.3 Test: 4000 Files, 32 Sub Dirs, 1MB Size F2FS JFS XFS EXT4 EXT3 Btrfs ReiserFS 20 40 60 80 100 SE +/- 0.67, N = 3 SE +/- 0.12, N = 3 SE +/- 0.31, N = 3 SE +/- 0.10, N = 3 SE +/- 0.29, N = 3 SE +/- 0.07, N = 3 SE +/- 0.66, N = 6 93.67 90.40 79.80 78.80 67.57 65.17 50.18 1. (CC) gcc options: -static
PostMark Disk Transaction Performance OpenBenchmarking.org TPS, More Is Better PostMark 1.51 Disk Transaction Performance F2FS XFS EXT4 JFS EXT3 Btrfs ReiserFS 400 800 1200 1600 2000 SE +/- 4.00, N = 3 SE +/- 10.33, N = 3 SE +/- 9.96, N = 3 SE +/- 55.59, N = 6 SE +/- 10.33, N = 3 SE +/- 1.67, N = 3 SE +/- 8.97, N = 3 1716 1704 1674 1573 1229 1154 1041 1. (CC) gcc options: -O3
Compile Bench Test: Compile OpenBenchmarking.org MB/s, More Is Better Compile Bench 0.6 Test: Compile EXT4 Btrfs XFS EXT3 F2FS JFS ReiserFS 20 40 60 80 100 SE +/- 1.34, N = 3 SE +/- 0.91, N = 3 SE +/- 0.72, N = 3 SE +/- 0.53, N = 3 SE +/- 0.51, N = 3 SE +/- 0.07, N = 3 SE +/- 1.35, N = 3 107.13 106.96 101.73 101.00 95.68 92.47 75.85
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 F2FS JFS EXT4 XFS Btrfs EXT3 ReiserFS 20 40 60 80 100 SE +/- 0.26, N = 3 SE +/- 0.42, N = 3 SE +/- 0.23, N = 3 SE +/- 0.82, N = 3 SE +/- 0.35, N = 3 SE +/- 0.27, N = 3 SE +/- 1.64, N = 6 100.90 100.23 99.60 95.57 94.63 94.53 77.00 1. (CC) gcc options: -static
IOzone Record Size: 4Kb - File Size: 8GB - Disk Test: Read Performance OpenBenchmarking.org MB/s, More Is Better IOzone 3.405 Record Size: 4Kb - File Size: 8GB - Disk Test: Read Performance F2FS JFS EXT4 XFS ReiserFS Btrfs EXT3 50 100 150 200 250 SE +/- 0.83, N = 3 SE +/- 0.14, N = 3 SE +/- 1.74, N = 3 SE +/- 1.68, N = 3 SE +/- 0.48, N = 3 SE +/- 2.96, N = 3 SE +/- 0.47, N = 3 242.13 241.48 235.35 233.45 221.93 213.66 206.29 1. (CC) gcc options: -O3
IOzone Record Size: 64Kb - File Size: 8GB - Disk Test: Read Performance OpenBenchmarking.org MB/s, More Is Better IOzone 3.405 Record Size: 64Kb - File Size: 8GB - Disk Test: Read Performance JFS EXT4 XFS F2FS ReiserFS Btrfs EXT3 50 100 150 200 250 SE +/- 0.31, N = 3 SE +/- 0.41, N = 3 SE +/- 1.74, N = 3 SE +/- 3.28, N = 6 SE +/- 0.39, N = 3 SE +/- 1.86, N = 3 SE +/- 0.12, N = 3 241.77 236.29 228.79 227.28 224.26 213.98 206.22 1. (CC) gcc options: -O3
IOzone Record Size: 1MB - File Size: 8GB - Disk Test: Read Performance OpenBenchmarking.org MB/s, More Is Better IOzone 3.405 Record Size: 1MB - File Size: 8GB - Disk Test: Read Performance JFS EXT4 F2FS XFS ReiserFS Btrfs EXT3 50 100 150 200 250 SE +/- 0.53, N = 3 SE +/- 2.17, N = 3 SE +/- 1.42, N = 3 SE +/- 1.68, N = 3 SE +/- 1.40, N = 3 SE +/- 1.23, N = 3 SE +/- 0.95, N = 3 241.34 239.71 237.89 230.34 218.47 211.11 207.70 1. (CC) gcc options: -O3
IOzone Record Size: 64Kb - File Size: 8GB - Disk Test: Write Performance OpenBenchmarking.org MB/s, More Is Better IOzone 3.405 Record Size: 64Kb - File Size: 8GB - Disk Test: Write Performance XFS F2FS EXT4 EXT3 Btrfs ReiserFS JFS 20 40 60 80 100 SE +/- 0.37, N = 3 SE +/- 0.25, N = 3 SE +/- 0.23, N = 3 SE +/- 0.08, N = 3 SE +/- 0.44, N = 3 SE +/- 0.19, N = 3 SE +/- 1.36, N = 3 102.60 101.76 101.66 101.17 101.05 95.02 91.50 1. (CC) gcc options: -O3
IOzone Record Size: 1MB - File Size: 8GB - Disk Test: Write Performance OpenBenchmarking.org MB/s, More Is Better IOzone 3.405 Record Size: 1MB - File Size: 8GB - Disk Test: Write Performance F2FS XFS EXT4 Btrfs EXT3 ReiserFS JFS 20 40 60 80 100 SE +/- 0.15, N = 3 SE +/- 0.12, N = 3 SE +/- 0.10, N = 3 SE +/- 0.32, N = 3 SE +/- 0.15, N = 3 SE +/- 1.11, N = 3 SE +/- 0.52, N = 3 103.01 103.00 101.89 101.29 101.02 98.38 93.48 1. (CC) gcc options: -O3
IOzone Record Size: 4Kb - File Size: 8GB - Disk Test: Write Performance OpenBenchmarking.org MB/s, More Is Better IOzone 3.405 Record Size: 4Kb - File Size: 8GB - Disk Test: Write Performance F2FS XFS EXT4 EXT3 Btrfs ReiserFS JFS 20 40 60 80 100 SE +/- 0.06, N = 3 SE +/- 0.15, N = 3 SE +/- 0.02, N = 3 SE +/- 0.09, N = 3 SE +/- 0.49, N = 3 SE +/- 0.55, N = 3 SE +/- 0.66, N = 3 103.17 102.69 101.93 101.45 100.97 96.01 94.12 1. (CC) gcc options: -O3
Phoronix Test Suite v10.8.5