Btrfs RAID Testing Btrfs HDD RAID 0 file-system benchmarking on Ubuntu 14.10 using two Samsung hard drives. Benchmarks by Michael Larabel for a future article on Phoronix.com with benchmarking from Linux 3.10 kernel through Linux 3.18 kernel. Linux 3.10: Processor: Intel Core i7-5960X @ 3.00GHz (16 Cores), Motherboard: Gigabyte X99-UD4-CF, Chipset: Intel Xeon E5 v3/Core, Memory: 16384MB, Disk: 128GB Crucial_CT128MX1 + 2 x 250GB SAMSUNG HD253GJ, Graphics: NVIDIA GeForce GTX 760 2048MB, Audio: Realtek ALC1150, Monitor: SyncMaster, Network: Intel Connection OS: Ubuntu 14.10, Kernel: 3.10.0-031000-generic (x86_64), Desktop: Unity 7.3.1, Display Server: X Server 1.16.0, Display Driver: nouveau 1.0.11, OpenGL: 3.3 Mesa 10.3.0 Gallium 0.4, Compiler: GCC 4.9.1, File-System: btrfs, Screen Resolution: 2560x1600 Linux 3.11: Processor: Intel Core i7-5960X @ 3.00GHz (16 Cores), Motherboard: Gigabyte X99-UD4-CF, Chipset: Intel Xeon E5 v3/Core, Memory: 16384MB, Disk: 128GB Crucial_CT128MX1 + 2 x 250GB SAMSUNG HD253GJ, Graphics: NVIDIA GeForce GTX 760 2048MB, Audio: Realtek ALC1150, Monitor: SyncMaster, Network: Intel Connection OS: Ubuntu 14.10, Kernel: 3.11.0-031100-generic (x86_64), Desktop: Unity 7.3.1, Display Server: X Server 1.16.0, Display Driver: nouveau 1.0.11, OpenGL: 3.3 Mesa 10.3.0 Gallium 0.4, Compiler: GCC 4.9.1, File-System: btrfs, Screen Resolution: 2560x1600 Linux 3.12: Processor: Intel Core i7-5960X @ 3.50GHz (16 Cores), Motherboard: Gigabyte X99-UD4-CF, Chipset: Intel Xeon E5 v3/Core, Memory: 16384MB, Disk: 128GB Crucial_CT128MX1 + 2 x 250GB SAMSUNG HD253GJ, Graphics: NVIDIA GeForce GTX 760 2048MB, Audio: Realtek ALC1150, Monitor: SyncMaster, Network: Intel Connection OS: Ubuntu 14.10, Kernel: 3.12.0-031200-generic (x86_64), Desktop: Unity 7.3.1, Display Server: X Server 1.16.0, Display Driver: nouveau 1.0.11, OpenGL: 3.3 Mesa 10.3.0 Gallium 0.4, Compiler: GCC 4.9.1, File-System: btrfs, Screen Resolution: 2560x1600 Linux 3.13: Processor: Intel Core i7-5960X @ 3.50GHz (16 Cores), Motherboard: Gigabyte X99-UD4-CF, Chipset: Intel Xeon E5 v3/Core, Memory: 16384MB, Disk: 128GB Crucial_CT128MX1 + 2 x 250GB SAMSUNG HD253GJ, Graphics: NVIDIA GeForce GTX 760 2048MB (405/324MHz), Audio: Realtek ALC1150, Monitor: SyncMaster, Network: Intel Connection OS: Ubuntu 14.10, Kernel: 3.13.0-031300-generic (x86_64), Desktop: Unity 7.3.1, Display Server: X Server 1.16.0, Display Driver: nouveau 1.0.11, OpenGL: 3.3 Mesa 10.3.0 Gallium 0.4, Compiler: GCC 4.9.1, File-System: btrfs, Screen Resolution: 2560x1600 Linux 3.14: Processor: Intel Core i7-5960X @ 3.50GHz (16 Cores), Motherboard: Gigabyte X99-UD4-CF, Chipset: Intel Xeon E5 v3/Core, Memory: 16384MB, Disk: 128GB Crucial_CT128MX1 + 2 x 250GB SAMSUNG HD253GJ, Graphics: NVIDIA GeForce GTX 760 2048MB (405/648MHz), Audio: Realtek ALC1150, Monitor: SyncMaster, Network: Intel Connection OS: Ubuntu 14.10, Kernel: 3.14.0-031400-generic (x86_64), Desktop: Unity 7.3.1, Display Server: X Server 1.16.0, Display Driver: nouveau 1.0.11, OpenGL: 3.3 Mesa 10.3.0 Gallium 0.4, Compiler: GCC 4.9.1, File-System: btrfs, Screen Resolution: 2560x1600 Linux 3.15.0: Processor: Intel Core i7-5960X @ 3.50GHz (16 Cores), Motherboard: Gigabyte X99-UD4-CF, Chipset: Intel Xeon E5 v3/Core, Memory: 16384MB, Disk: 128GB Crucial_CT128MX1 + 2 x 250GB SAMSUNG HD253GJ, Graphics: NVIDIA GeForce GTX 760 2048MB (405/648MHz), Audio: Intel C610/X99, Monitor: SyncMaster, Network: Intel Connection OS: Ubuntu 14.10, Kernel: 3.15.0-031500-generic (x86_64), Desktop: Unity 7.3.1, Display Server: X Server 1.16.0, Display Driver: nouveau 1.0.11, OpenGL: 3.3 Mesa 10.3.0 Gallium 0.4, Compiler: GCC 4.9.1, File-System: btrfs, Screen Resolution: 2560x1600 Linux 3.16.0: Processor: Intel Core i7-5960X @ 3.50GHz (16 Cores), Motherboard: Gigabyte X99-UD4-CF, Chipset: Intel Xeon E5 v3/Core, Memory: 16384MB, Disk: 128GB Crucial_CT128MX1 + 2 x 250GB SAMSUNG HD253GJ, Graphics: NVIDIA GeForce GTX 760 2048MB (405/648MHz), Audio: Intel C610/X99, Monitor: SyncMaster, Network: Intel Connection OS: Ubuntu 14.10, Kernel: 3.16.0-031600-generic (x86_64), Desktop: Unity 7.3.1, Display Server: X Server 1.16.0, Display Driver: nouveau 1.0.11, OpenGL: 3.3 Mesa 10.3.0 Gallium 0.4, Compiler: GCC 4.9.1, File-System: btrfs, Screen Resolution: 2560x1600 Linux 3.17.0: Processor: Intel Core i7-5960X @ 3.50GHz (16 Cores), Motherboard: Gigabyte X99-UD4-CF, Chipset: Intel Xeon E5 v3/Core, Memory: 16384MB, Disk: 128GB Crucial_CT128MX1 + 2 x 250GB SAMSUNG HD253GJ, Graphics: NVIDIA GeForce GTX 760 2048MB, Audio: Intel C610/X99, Monitor: SyncMaster, Network: Intel Connection OS: Ubuntu 14.10, Kernel: 3.17.0-031700-generic (x86_64), Desktop: Unity 7.3.1, Display Server: X Server 1.16.0, Display Driver: nouveau 1.0.11, OpenGL: 3.3 Mesa 10.3.0 Gallium 0.4, Compiler: GCC 4.9.1, File-System: btrfs, Screen Resolution: 2560x1600 Linux 3.18-rc1: Processor: Intel Core i7-5960X @ 3.50GHz (16 Cores), Motherboard: Gigabyte X99-UD4-CF, Chipset: Intel Xeon E5 v3/Core, Memory: 16384MB, Disk: 128GB Crucial_CT128MX1 + 2 x 250GB SAMSUNG HD253GJ, Graphics: NVIDIA GeForce GTX 760 2048MB, Audio: Intel C610/X99, Monitor: SyncMaster, Network: Intel Connection OS: Ubuntu 14.10, Kernel: 3.18.0-031800rc1-generic (x86_64), Desktop: Unity 7.3.1, Display Server: X Server 1.16.0, Display Driver: nouveau 1.0.11, OpenGL: 3.3 Mesa 10.3.0 Gallium 0.4, Compiler: GCC 4.9.1, File-System: btrfs, Screen Resolution: 2560x1600 Flexible IO Tester 2.1.11 Type: Random Read - IO Engine: Libaio - Buffered: No - Block Size: 16KB - Disk Target: Default Test Directory - Result: IOPS IOPS > Higher Is Better Linux 3.10 ..... 640 |========================================================= Linux 3.11 ..... 430 |====================================== Linux 3.12 ..... 444 |======================================== Linux 3.13 ..... 528 |=============================================== Linux 3.14 ..... 368 |================================= Linux 3.15.0 ... 398 |=================================== Linux 3.16.0 ... 477 |========================================== Linux 3.17.0 ... 505 |============================================= Linux 3.18-rc1 . 621 |======================================================= Flexible IO Tester 2.1.11 Type: Random Read - IO Engine: Libaio - Buffered: No - Block Size: 16KB - Disk Target: Default Test Directory - Result: MB/s MB/s > Higher Is Better Linux 3.10 ..... 10.32 |==================================================== Linux 3.11 ..... 8.67 |=========================================== Linux 3.12 ..... 7.15 |==================================== Linux 3.13 ..... 9.26 |============================================== Linux 3.14 ..... 5.90 |============================== Linux 3.15.0 ... 6.42 |================================ Linux 3.16.0 ... 9.43 |=============================================== Linux 3.17.0 ... 8.13 |========================================= Linux 3.18-rc1 . 11.00 |======================================================= Flexible IO Tester 2.1.11 Type: Random Write - IO Engine: Libaio - Buffered: No - Block Size: 16KB - Disk Target: Default Test Directory - Result: IOPS IOPS > Higher Is Better Linux 3.10 ..... 15563 |================================================= Linux 3.11 ..... 16407 |==================================================== Linux 3.12 ..... 17048 |====================================================== Linux 3.13 ..... 15638 |================================================== Linux 3.14 ..... 17125 |====================================================== Linux 3.15.0 ... 16479 |==================================================== Linux 3.16.0 ... 15304 |================================================ Linux 3.17.0 ... 17374 |======================================================= Linux 3.18-rc1 . 17049 |====================================================== Flexible IO Tester 2.1.11 Type: Random Write - IO Engine: Libaio - Buffered: No - Block Size: 16KB - Disk Target: Default Test Directory - Result: MB/s MB/s > Higher Is Better Linux 3.10 ..... 241.91 |============================================== Linux 3.11 ..... 263.79 |================================================== Linux 3.12 ..... 277.87 |===================================================== Linux 3.13 ..... 256.12 |================================================= Linux 3.14 ..... 279.34 |===================================================== Linux 3.15.0 ... 272.43 |==================================================== Linux 3.16.0 ... 239.11 |============================================= Linux 3.17.0 ... 283.91 |====================================================== Linux 3.18-rc1 . 281.32 |====================================================== Flexible IO Tester 2.1.11 Type: Sequential Read - IO Engine: Libaio - Buffered: No - Block Size: 16KB - Disk Target: Default Test Directory - Result: IOPS IOPS > Higher Is Better Linux 3.10 ..... 486 |=================================================== Linux 3.11 ..... 432 |============================================== Linux 3.12 ..... 469 |================================================== Linux 3.13 ..... 457 |================================================ Linux 3.14 ..... 450 |================================================ Linux 3.15.0 ... 463 |================================================= Linux 3.16.0 ... 400 |========================================== Linux 3.17.0 ... 466 |================================================= Linux 3.18-rc1 . 538 |========================================================= Flexible IO Tester 2.1.11 Type: Sequential Read - IO Engine: Libaio - Buffered: No - Block Size: 16KB - Disk Target: Default Test Directory - Result: MB/s MB/s > Higher Is Better Linux 3.10 ..... 8.27 |================================================= Linux 3.11 ..... 8.41 |================================================== Linux 3.12 ..... 7.80 |=============================================== Linux 3.13 ..... 9.10 |====================================================== Linux 3.14 ..... 8.62 |==================================================== Linux 3.15.0 ... 7.45 |============================================= Linux 3.16.0 ... 8.05 |================================================ Linux 3.17.0 ... 7.61 |============================================== Linux 3.18-rc1 . 9.36 |======================================================== Flexible IO Tester 2.1.11 Type: Sequential Write - IO Engine: Libaio - Buffered: No - Block Size: 16KB - Disk Target: Default Test Directory - Result: IOPS IOPS > Higher Is Better Linux 3.10 ..... 9542 |============================== Linux 3.11 ..... 4224 |============= Linux 3.12 ..... 4491 |============== Linux 3.13 ..... 16091 |================================================== Linux 3.14 ..... 15166 |================================================ Linux 3.15.0 ... 16991 |===================================================== Linux 3.16.0 ... 14318 |============================================= Linux 3.17.0 ... 17542 |======================================================= Linux 3.18-rc1 . 17198 |====================================================== Flexible IO Tester 2.1.11 Type: Sequential Write - IO Engine: Libaio - Buffered: No - Block Size: 16KB - Disk Target: Default Test Directory - Result: MB/s MB/s > Higher Is Better Linux 3.10 ..... 163.15 |=============================== Linux 3.11 ..... 67.98 |============= Linux 3.12 ..... 72.06 |============== Linux 3.13 ..... 277.34 |===================================================== Linux 3.14 ..... 272.26 |==================================================== Linux 3.15.0 ... 282.51 |====================================================== Linux 3.16.0 ... 278.42 |===================================================== Linux 3.17.0 ... 278.44 |===================================================== Linux 3.18-rc1 . 284.61 |====================================================== FS-Mark 3.3 Test: 1000 Files, 1MB Size Files/s > Higher Is Better Linux 3.10 ..... 23.77 |======================================================= Linux 3.11 ..... 22.53 |==================================================== Linux 3.12 ..... 22.90 |===================================================== Linux 3.13 ..... 23.27 |====================================================== Linux 3.14 ..... 23.47 |====================================================== Linux 3.15.0 ... 23.20 |====================================================== Linux 3.16.0 ... 23.13 |====================================================== Linux 3.17.0 ... 22.03 |=================================================== Linux 3.18-rc1 . 22.90 |===================================================== FS-Mark 3.3 Test: 5000 Files, 1MB Size, 4 Threads Files/s > Higher Is Better Linux 3.10 ..... 44.67 |====================================================== Linux 3.11 ..... 44.40 |===================================================== Linux 3.12 ..... 43.43 |==================================================== Linux 3.13 ..... 44.37 |===================================================== Linux 3.14 ..... 44.57 |====================================================== Linux 3.15.0 ... 45.70 |======================================================= Linux 3.16.0 ... 45.43 |======================================================= Linux 3.17.0 ... 43.90 |===================================================== Linux 3.18-rc1 . 44.87 |====================================================== FS-Mark 3.3 Test: 4000 Files, 32 Sub Dirs, 1MB Size Files/s > Higher Is Better Linux 3.10 ..... 23.77 |====================================================== Linux 3.11 ..... 24.00 |====================================================== Linux 3.12 ..... 24.40 |======================================================= Linux 3.13 ..... 24.07 |====================================================== Linux 3.14 ..... 22.93 |==================================================== Linux 3.15.0 ... 23.57 |===================================================== Linux 3.16.0 ... 23.37 |===================================================== Linux 3.17.0 ... 22.87 |==================================================== Linux 3.18-rc1 . 23.63 |===================================================== Dbench 4.0 Client Count: 6 MB/s > Higher Is Better Linux 3.10 ..... 54.16 |==================================================== Linux 3.11 ..... 55.22 |===================================================== Linux 3.12 ..... 56.94 |======================================================= Linux 3.13 ..... 56.63 |======================================================= Linux 3.14 ..... 55.63 |====================================================== Linux 3.15.0 ... 54.05 |==================================================== Linux 3.16.0 ... 56.01 |====================================================== Linux 3.17.0 ... 56.08 |====================================================== Linux 3.18-rc1 . 54.21 |==================================================== IOzone 3.405 Record Size: 4Kb - File Size: 8GB - Disk Test: Write Performance MB/s > Higher Is Better Linux 3.10 ..... 271.72 |====================================================== Linux 3.11 ..... 272.19 |====================================================== Linux 3.12 ..... 271.64 |====================================================== Linux 3.13 ..... 270.53 |====================================================== Linux 3.14 ..... 270.83 |====================================================== Linux 3.15.0 ... 271.53 |====================================================== Linux 3.16.0 ... 272.66 |====================================================== Linux 3.17.0 ... 272.55 |====================================================== Linux 3.18-rc1 . 271.29 |====================================================== Compile Bench 0.6 Test: Initial Create MB/s > Higher Is Better Linux 3.10 ..... 150.06 |=================================== Linux 3.11 ..... 148.00 |================================== Linux 3.12 ..... 233.12 |====================================================== Linux 3.13 ..... 214.49 |================================================== Linux 3.14 ..... 178.60 |========================================= Linux 3.15.0 ... 170.09 |======================================= Linux 3.16.0 ... 164.88 |====================================== Linux 3.17.0 ... 171.46 |======================================== Linux 3.18-rc1 . 176.63 |========================================= PostMark 1.51 Disk Transaction Performance TPS > Higher Is Better Linux 3.10 ..... 3849 |========================================== Linux 3.11 ..... 4099 |============================================= Linux 3.12 ..... 4413 |================================================ Linux 3.13 ..... 3832 |========================================== Linux 3.14 ..... 4630 |================================================== Linux 3.15.0 ... 4033 |============================================ Linux 3.16.0 ... 4870 |===================================================== Linux 3.17.0 ... 5028 |======================================================= Linux 3.18-rc1 . 5137 |========================================================