Linux 3.18 Kernel File-System Testing

EXT4, F2FS, XFS, and Btrfs file-system benchmarks on Linux 3.17 and Linux 3.18 Git kernels. Benchmarks by Michael Larabel for a future article on Phoronix.com.

HTML result view exported from: https://openbenchmarking.org/result/1411072-LI-LINUX318F45&sro&grs.

ProcessorMotherboardChipsetMemoryDiskGraphicsAudioMonitorNetworkOSKernelDesktopDisplay ServerDisplay DriverOpenGLCompilerFile-SystemScreen ResolutionLinux 3.17Linux 3.18 Git EXT4 Btrfs XFS F2FS EXT4 Btrfs XFS F2FSIntel Core i7-5960X @ 4.00GHz (16 Cores)Gigabyte X99-UD4-CFIntel Xeon E5 v3/Core16384MB128GB Crucial_CT128MX1 + 240GB OCZ VERTEX3XFX AMD Radeon HD 7950/8950 OEM / R9 280 3072MBIntel C610/X99SyncMasterIntel ConnectionUbuntu 14.103.17.0-031700-generic (x86_64)Unity 7.3.1X Server 1.16.0radeon 7.4.03.3 Mesa 10.3.0 Gallium 0.4GCC 4.9.1ext42560x1600btrfsxfsf2fs3.18.0-999-generic (x86_64)ext4btrfsxfsf2fsOpenBenchmarking.orgCompiler 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,c++,java,go,d,fortran,objc,obj-c++ --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-multilib-list=m32,m64,mx32 --with-tune=generic -v Disk Details- Linux 3.17: EXT4: DEADLINE / data=ordered,relatime,rw- Linux 3.17: Btrfs: DEADLINE / relatime,rw,space_cache,ssd- Linux 3.17: XFS: DEADLINE / attr2,inode64,noquota,relatime,rw- Linux 3.17: F2FS: DEADLINE / acl,active_logs=6,background_gc=on,relatime,rw,user_xattrProcessor Details- Scaling Governor: intel_pstate powersaveSystem Details- Linux 3.17: EXT4: Disk Scheduler: DEADLINE. Python 2.7.8.- Linux 3.17: Btrfs: Disk Scheduler: DEADLINE. Python 2.7.8.- Linux 3.17: XFS: Disk Scheduler: DEADLINE. Python 2.7.8.- Linux 3.17: F2FS: Disk Scheduler: DEADLINE. Python 2.7.8.- Linux 3.18 Git: EXT4: Python 2.7.8.- Linux 3.18 Git: Btrfs: Python 2.7.8.- Linux 3.18 Git: XFS: Python 2.7.8.- Linux 3.18 Git: F2FS: Python 2.7.8.Disk Mount Options Details- Linux 3.18 Git: EXT4: data=ordered,relatime,rw- Linux 3.18 Git: Btrfs: relatime,rw,space_cache,ssd- Linux 3.18 Git: XFS: attr2,inode64,noquota,relatime,rw- Linux 3.18 Git: F2FS: acl,active_logs=6,background_gc=on,relatime,rw,user_xattr

compilebench: Initial Createfio: Rand Read - POSIX AIO - No - 16KB - Default Test Directory - MB/sfio: Seq Read - POSIX AIO - No - 16KB - Default Test Directory - MB/sfs-mark: 4000 Files, 32 Sub Dirs, 1MB Sizefs-mark: 1000 Files, 1MB Sizepostmark: Disk Transaction Performancefs-mark: 5000 Files, 1MB Size, 4 Threadsfio: Seq Write - POSIX AIO - No - 16KB - Default Test Directory - MB/sfio: Rand Write - POSIX AIO - No - 16KB - Default Test Directory - MB/sLinux 3.17Linux 3.18 Git EXT4 Btrfs XFS F2FS EXT4 Btrfs XFS F2FS317.64105.14103.35209.30210.104968358.83193.62160.45173.6481.3080.10214.83219.535173392.87188.39160.56248.69100.60102.51210.37211.875176355.37216.22161.16357.93101.63103.75257.77255.876049408.13200.82156.19308.4798.6598.94209.63209.575176359.33164.04157.25173.7666.8978.31215.90217.655210391.57181.29162.94268.2495.9296.94210.23212.035478354.00195.66153.58366.7695.5598.71254.90250.576049409.37179.21156.54OpenBenchmarking.org

Compile Bench

Test: Initial Create

Linux 3.17Linux 3.18 GitOpenBenchmarking.orgMB/s, More Is BetterCompile Bench 0.6Test: Initial CreateBtrfsEXT4F2FSXFS80160240320400SE +/- 2.62, N = 3SE +/- 4.74, N = 5SE +/- 16.39, N = 6SE +/- 0.46, N = 3SE +/- 1.00, N = 3SE +/- 6.17, N = 3SE +/- 7.62, N = 6SE +/- 3.93, N = 3173.64317.64357.93248.69173.76308.47366.76268.24

Flexible IO Tester

Type: Random Read - IO Engine: POSIX AIO - Buffered: No - Block Size: 16KB - Disk Target: Default Test Directory - Result: MB/s

Linux 3.17Linux 3.18 GitOpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Random Read - IO Engine: POSIX AIO - Buffered: No - Block Size: 16KB - Disk Target: Default Test Directory - Result: MB/sBtrfsEXT4F2FSXFS20406080100SE +/- 0.11, N = 3SE +/- 0.10, N = 3SE +/- 0.03, N = 3SE +/- 0.80, N = 3SE +/- 1.41, N = 6SE +/- 0.05, N = 3SE +/- 0.19, N = 3SE +/- 0.16, N = 381.30105.14101.63100.6066.8998.6595.5595.921. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl

Flexible IO Tester

Type: Sequential Read - IO Engine: POSIX AIO - Buffered: No - Block Size: 16KB - Disk Target: Default Test Directory - Result: MB/s

Linux 3.17Linux 3.18 GitOpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Sequential Read - IO Engine: POSIX AIO - Buffered: No - Block Size: 16KB - Disk Target: Default Test Directory - Result: MB/sBtrfsEXT4F2FSXFS20406080100SE +/- 0.81, N = 3SE +/- 0.09, N = 3SE +/- 0.04, N = 3SE +/- 0.49, N = 3SE +/- 0.20, N = 3SE +/- 0.09, N = 3SE +/- 0.14, N = 3SE +/- 0.23, N = 380.10103.35103.75102.5178.3198.9498.7196.941. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl

FS-Mark

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

Linux 3.17Linux 3.18 GitOpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 4000 Files, 32 Sub Dirs, 1MB SizeBtrfsEXT4F2FSXFS60120180240300SE +/- 1.11, N = 3SE +/- 0.71, N = 3SE +/- 0.44, N = 3SE +/- 0.34, N = 3SE +/- 0.47, N = 3SE +/- 0.48, N = 3SE +/- 0.51, N = 3SE +/- 0.26, N = 3214.83209.30257.77210.37215.90209.63254.90210.231. (CC) gcc options: -static

FS-Mark

Test: 1000 Files, 1MB Size

Linux 3.17Linux 3.18 GitOpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 1000 Files, 1MB SizeBtrfsEXT4F2FSXFS60120180240300SE +/- 0.74, N = 3SE +/- 0.59, N = 3SE +/- 0.12, N = 3SE +/- 0.35, N = 3SE +/- 3.44, N = 4SE +/- 0.28, N = 3SE +/- 0.52, N = 3SE +/- 0.41, N = 3219.53210.10255.87211.87217.65209.57250.57212.031. (CC) gcc options: -static

PostMark

Disk Transaction Performance

Linux 3.17Linux 3.18 GitOpenBenchmarking.orgTPS, More Is BetterPostMark 1.51Disk Transaction PerformanceBtrfsEXT4F2FSXFS13002600390052006500SE +/- 35.33, N = 3SE +/- 67.00, N = 3SE +/- 48.33, N = 3SE +/- 93.50, N = 3SE +/- 62.65, N = 3SE +/- 93.50, N = 3SE +/- 48.33, N = 3SE +/- 106.79, N = 3517349686049517652105176604954781. (CC) gcc options: -O3

FS-Mark

Test: 5000 Files, 1MB Size, 4 Threads

Linux 3.17Linux 3.18 GitOpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 5000 Files, 1MB Size, 4 ThreadsBtrfsEXT4F2FSXFS90180270360450SE +/- 0.24, N = 3SE +/- 0.38, N = 3SE +/- 0.48, N = 3SE +/- 0.17, N = 3SE +/- 0.26, N = 3SE +/- 0.27, N = 3SE +/- 0.78, N = 3SE +/- 0.95, N = 3392.87358.83408.13355.37391.57359.33409.37354.001. (CC) gcc options: -static

Flexible IO Tester

Type: Sequential Write - IO Engine: POSIX AIO - Buffered: No - Block Size: 16KB - Disk Target: Default Test Directory - Result: MB/s

Linux 3.17Linux 3.18 GitOpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Sequential Write - IO Engine: POSIX AIO - Buffered: No - Block Size: 16KB - Disk Target: Default Test Directory - Result: MB/sBtrfsEXT4F2FSXFS50100150200250SE +/- 0.19, N = 3SE +/- 8.15, N = 6SE +/- 5.76, N = 6SE +/- 2.10, N = 3SE +/- 0.98, N = 3SE +/- 5.76, N = 6SE +/- 9.73, N = 6SE +/- 10.96, N = 6188.39193.62200.82216.22181.29164.04179.21195.661. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl

Flexible IO Tester

Type: Random Write - IO Engine: POSIX AIO - Buffered: No - Block Size: 16KB - Disk Target: Default Test Directory - Result: MB/s

Linux 3.17Linux 3.18 GitOpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Random Write - IO Engine: POSIX AIO - Buffered: No - Block Size: 16KB - Disk Target: Default Test Directory - Result: MB/sBtrfsEXT4F2FSXFS4080120160200SE +/- 4.26, N = 6SE +/- 10.55, N = 6SE +/- 3.64, N = 6SE +/- 6.60, N = 6SE +/- 5.95, N = 6SE +/- 0.43, N = 3SE +/- 1.43, N = 3SE +/- 9.40, N = 6160.56160.45156.19161.16162.94157.25156.54153.581. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl


Phoronix Test Suite v10.8.4