Btrfs vs. Linux Soft RAID Linux 4.7

Btrfs RAID tests on Linux 4.7 kernel. Benchmarks by Michael Larabel for a future article on Phoronix.com.

HTML result view exported from: https://openbenchmarking.org/result/1608073-LO-SOFTRAID920&sor&gru.

ProcessorMotherboardChipsetMemoryDiskGraphicsAudioNetworkOSKernelDesktopDisplay ServerDisplay DriverOpenGLCompilerFile-SystemScreen ResolutionBtrfsMDADM RAID0 2-Disk RAID1 2-Disk RAID0 4-Disk RAID1 4-Disk RAID10 4-Disk RAID0 2-Disk RAID1 2-Disk RAID0 4-Disk RAID1 4-Disk RAID10 4-DiskIntel Xeon E3-1280 v5 @ 4.00GHz (8 Cores)MSI C236A WORKSTATION (MS-7998) v1.0Intel Skylake16384MB4 x 120GB TOSHIBA-TR150 + Samsung SSD 950 PRO 256GBLLVMpipeRealtek ALC1150Intel ConnectionUbuntu 16.104.7.0-040700-generic (x86_64)Unity 7.5.0X Server 1.18.4nouveau 1.0.123.3 Mesa 12.0.1 Gallium 0.4GCC 6.1.1 20160724btrfs1024x768OpenBenchmarking.orgEnvironment Details- LIBGL_ALWAYS_SOFTWARE=1Compiler Details- --build=x86_64-linux-gnu --disable-browser-plugin --disable-vtable-verify --disable-werror --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-gnu-unique-object --enable-gtk-cairo --enable-java-awt=gtk --enable-java-home --enable-languages=c,ada,c++,java,go,d,fortran,objc,obj-c++ --enable-libmpx --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-default-libstdcxx-abi=new --with-multilib-list=m32,m64,mx32 --with-tune=generic -v Disk Details- Btrfs: RAID0 2-Disk: CFQ / relatime,rw,space_cache,ssd,subvol=/,subvolid=5 / RAID0- Btrfs: RAID1 2-Disk: CFQ / relatime,rw,space_cache,ssd,subvol=/,subvolid=5 / RAID1- Btrfs: RAID0 4-Disk: CFQ / relatime,rw,space_cache,ssd,subvol=/,subvolid=5 / RAID0- Btrfs: RAID1 4-Disk: CFQ / relatime,rw,space_cache,ssd,subvol=/,subvolid=5 / RAID1- Btrfs: RAID10 4-Disk: CFQ / relatime,rw,space_cache,ssd,subvol=/,subvolid=5 / RAID10- MDADM: RAID0 2-Disk: CFQ / relatime,rw,space_cache,subvol=/,subvolid=5 / raid0 sdb[1] sda[0]- MDADM: RAID1 2-Disk: CFQ / relatime,rw,space_cache,subvol=/,subvolid=5 / raid1 sdb[1] sda[0]- MDADM: RAID0 4-Disk: CFQ / relatime,rw,space_cache,subvol=/,subvolid=5 / raid0 sdd[3] sdc[2] sdb[1] sda[0]- MDADM: RAID1 4-Disk: CFQ / relatime,rw,space_cache,subvol=/,subvolid=5 / raid1 sdd[3] sdc[2] sdb[1] sda[0]- MDADM: RAID10 4-Disk: CFQ / relatime,rw,space_cache,subvol=/,subvolid=5 / raid10 sdd[3] sdc[2] sdb[1] sda[0]Processor Details- Scaling Governor: intel_pstate performance

fs-mark: 1000 Files, 1MB Sizefs-mark: 5000 Files, 1MB Size, 4 Threadsblogbench: Writefio: Rand Read - Libaio - No - Yes - 4KB - Default Test Directory - IOPSfio: Rand Write - Libaio - No - Yes - 4KB - Default Test Directory - IOPSfio: Seq Read - Libaio - No - Yes - 4KB - Default Test Directory - IOPSfio: Seq Write - Libaio - No - Yes - 4KB - Default Test Directory - IOPSfio: Rand Read - Libaio - No - Yes - 4KB - Default Test Directory - MB/sfio: Rand Write - Libaio - No - Yes - 4KB - Default Test Directory - MB/sfio: Seq Read - Libaio - No - Yes - 4KB - Default Test Directory - MB/sfio: Seq Write - Libaio - No - Yes - 4KB - Default Test Directory - MB/spgbench: On-Disk - Normal Load - Read WriteBtrfsMDADM RAID0 2-Disk RAID1 2-Disk RAID0 4-Disk RAID1 4-Disk RAID10 4-Disk RAID0 2-Disk RAID1 2-Disk RAID0 4-Disk RAID1 4-Disk RAID10 4-Disk87.0382.0062771082963238410534630492432.83152.20483.27139.221389.5261.9543.13422754299193528702618971214.7881.11349.7473.65983.28128.63141.7378471642403729118149538625667.68149.87738.69162.021781.1787.9760.875521719022664511438026303283.99101.34464.23116.011186.6539.5067.6059741080582569816284724596431.17100.51655.8290.711494.3785.5571.7051031078303432813696933849430.03165.71545.57152.111415.4213.1726.28235010872386891351449890435.5333.62528.9627.44126.80113.0263001636974922218556544141668.47192.13722.24174.471496.8310.8512.53192911992574671521666510665.1732.23596.0527.75310.1489.6264.154352831312002165781204259.1337.9871.2192.741457.99OpenBenchmarking.org

FS-Mark

Test: 1000 Files, 1MB Size

MinAvgMaxBtrfs39.581.0128.6MDADM10.965.2126.8OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 1000 Files, 1MB SizeRAID0 4-DiskRAID10 4-DiskRAID1 4-DiskRAID0 2-DiskRAID1 2-Disk4080120160200

FS-Mark

Test: 5000 Files, 1MB Size, 4 Threads

MinAvgMaxBtrfs43.179.1141.7MDADM12.557.5113.0OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 5000 Files, 1MB Size, 4 ThreadsRAID0 4-DiskRAID0 2-DiskRAID10 4-DiskRAID1 4-DiskRAID1 2-Disk4080120160200

BlogBench

Test: Write

MinAvgMaxBtrfs422759697847MDADM192940076300OpenBenchmarking.orgFinal Score, More Is BetterBlogBench 1.0Test: WriteRAID0 4-DiskRAID0 2-DiskRAID10 4-DiskRAID1 4-DiskRAID1 2-Disk2K4K6K8K10K

Flexible IO Tester

Type: Random Read - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: IOPS

MinAvgMaxBtrfs54299101359164240MDADM8313101698163697OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 2.1.13Type: Random Read - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: IOPSRAID0 4-DiskRAID1 4-DiskRAID1 2-DiskRAID0 2-DiskRAID10 4-Disk50K100K150K200K250K

Flexible IO Tester

Type: Random Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: IOPS

MinAvgMaxMDADM74672234249222Btrfs193522827437291OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 2.1.13Type: Random Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: IOPSRAID0 4-DiskRAID0 2-DiskRAID1 4-DiskRAID10 4-DiskRAID1 2-Disk13K26K39K52K65K

Flexible IO Tester

Type: Sequential Read - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: IOPS

MinAvgMaxMDADM16578125284185565Btrfs87026130219181495OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 2.1.13Type: Sequential Read - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: IOPSRAID0 4-DiskRAID10 4-DiskRAID1 4-DiskRAID0 2-DiskRAID1 2-Disk50K100K150K200K250K

Flexible IO Tester

Type: Sequential Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: IOPS

MinAvgMaxMDADM65102128644141Btrfs189712779738625OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 2.1.13Type: Sequential Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: IOPSRAID0 4-DiskRAID0 2-DiskRAID1 4-DiskRAID10 4-DiskRAID1 2-Disk11K22K33K44K55K

Flexible IO Tester

Type: Random Read - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/s

MinAvgMaxMDADM59452668Btrfs215406668OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Random Read - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/sRAID0 4-DiskRAID1 4-DiskRAID1 2-DiskRAID0 2-DiskRAID10 4-Disk2004006008001000

Flexible IO Tester

Type: Random Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/s

MinAvgMaxMDADM32.292.3192.1Btrfs81.1117.0152.2OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Random Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/sRAID0 4-DiskRAID0 2-DiskRAID1 4-DiskRAID10 4-DiskRAID1 2-Disk50100150200250

Flexible IO Tester

Type: Sequential Read - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/s

MinAvgMaxBtrfs350538739MDADM71493722OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Sequential Read - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/sRAID0 4-DiskRAID10 4-DiskRAID1 4-DiskRAID0 2-DiskRAID1 2-Disk2004006008001000

Flexible IO Tester

Type: Sequential Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/s

MinAvgMaxMDADM27.494.9174.5Btrfs73.7116.3162.0OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 2.1.13Type: Sequential Write - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory - Result: MB/sRAID0 4-DiskRAID0 2-DiskRAID1 4-DiskRAID10 4-DiskRAID1 2-Disk50100150200250

PostgreSQL pgbench

Scaling: On-Disk - Test: Normal Load - Mode: Read Write

MinAvgMaxBtrfs98313671781MDADM31011701497OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 9.4.3Scaling: On-Disk - Test: Normal Load - Mode: Read WriteRAID0 4-DiskRAID10 4-DiskRAID0 2-DiskRAID1 4-DiskRAID1 2-Disk5001000150020002500


Phoronix Test Suite v10.8.4