HDD IO Scheduler Tests Linux 5.0 hard drive I/O scheduler benchmarks for a future article on Phoronix.com. WD5000AZRX: Mq-Deadline: Processor: AMD Ryzen Threadripper 2990WX 32-Core @ 3.00GHz (32 Cores / 64 Threads), Motherboard: ASUS ROG ZENITH EXTREME (1601 BIOS), Chipset: AMD Family 17h, Memory: 4 x 8192 MB DDR4-1600MT/s F4-3200C14-8GFX, Disk: 500GB Western Digital WD5000AZRX-0, Graphics: llvmpipe, Audio: Realtek ALC1220, Network: Intel I211 + Qualcomm Atheros QCA6174 802.11ac + Wilocity Wil6200 802.11ad OS: Ubuntu 18.04, Kernel: 5.0.0-050000rc6-generic (x86_64) 20190210, Desktop: GNOME Shell 3.28.3, Display Server: X Server 1.19.6, Display Driver: modesetting 1.19.6, OpenGL: 3.3 Mesa 18.0.5 (LLVM 6.0 128 bits), Compiler: GCC 7.3.0, File-System: ext4, Screen Resolution: 1280x1024 WD5000AZRX: None: Processor: AMD Ryzen Threadripper 2990WX 32-Core @ 3.00GHz (32 Cores / 64 Threads), Motherboard: ASUS ROG ZENITH EXTREME (1601 BIOS), Chipset: AMD Family 17h, Memory: 4 x 8192 MB DDR4-1600MT/s F4-3200C14-8GFX, Disk: 500GB Western Digital WD5000AZRX-0, Graphics: llvmpipe, Audio: Realtek ALC1220, Network: Intel I211 + Qualcomm Atheros QCA6174 802.11ac + Wilocity Wil6200 802.11ad OS: Ubuntu 18.04, Kernel: 5.0.0-050000rc6-generic (x86_64) 20190210, Desktop: GNOME Shell 3.28.3, Display Server: X Server 1.19.6, Display Driver: modesetting 1.19.6, OpenGL: 3.3 Mesa 18.0.5 (LLVM 6.0 128 bits), Compiler: GCC 7.3.0, File-System: ext4, Screen Resolution: 1280x1024 WD5000AZRX: Kyber: Processor: AMD Ryzen Threadripper 2990WX 32-Core @ 3.00GHz (32 Cores / 64 Threads), Motherboard: ASUS ROG ZENITH EXTREME (1601 BIOS), Chipset: AMD Family 17h, Memory: 4 x 8192 MB DDR4-1600MT/s F4-3200C14-8GFX, Disk: 500GB Western Digital WD5000AZRX-0, Graphics: llvmpipe, Audio: Realtek ALC1220, Network: Intel I211 + Qualcomm Atheros QCA6174 802.11ac + Wilocity Wil6200 802.11ad OS: Ubuntu 18.04, Kernel: 5.0.0-050000rc6-generic (x86_64) 20190210, Desktop: GNOME Shell 3.28.3, Display Server: X Server 1.19.6, Display Driver: modesetting 1.19.6, OpenGL: 3.3 Mesa 18.0.5 (LLVM 6.0 128 bits), Compiler: GCC 7.3.0, File-System: ext4, Screen Resolution: 1280x1024 WD5000AZRX: BFQ low-latency: Processor: AMD Ryzen Threadripper 2990WX 32-Core @ 3.00GHz (32 Cores / 64 Threads), Motherboard: ASUS ROG ZENITH EXTREME (1601 BIOS), Chipset: AMD Family 17h, Memory: 4 x 8192 MB DDR4-1600MT/s F4-3200C14-8GFX, Disk: 500GB Western Digital WD5000AZRX-0, Graphics: llvmpipe, Audio: Realtek ALC1220, Network: Intel I211 + Qualcomm Atheros QCA6174 802.11ac + Wilocity Wil6200 802.11ad OS: Ubuntu 18.04, Kernel: 5.0.0-050000rc6-generic (x86_64) 20190210, Desktop: GNOME Shell 3.28.3, Display Server: X Server 1.19.6, Display Driver: modesetting 1.19.6, OpenGL: 3.3 Mesa 18.0.5 (LLVM 6.0 128 bits), Compiler: GCC 7.3.0, File-System: ext4, Screen Resolution: 1280x1024 WD5000AZRX: BFQ: Processor: AMD Ryzen Threadripper 2990WX 32-Core @ 3.00GHz (32 Cores / 64 Threads), Motherboard: ASUS ROG ZENITH EXTREME (1601 BIOS), Chipset: AMD Family 17h, Memory: 4 x 8192 MB DDR4-1600MT/s F4-3200C14-8GFX, Disk: 500GB Western Digital WD5000AZRX-0, Graphics: llvmpipe, Audio: Realtek ALC1220, Network: Intel I211 + Qualcomm Atheros QCA6174 802.11ac + Wilocity Wil6200 802.11ad OS: Ubuntu 18.04, Kernel: 5.0.0-050000rc6-generic (x86_64) 20190210, Desktop: GNOME Shell 3.28.3, Display Server: X Server 1.19.6, Display Driver: modesetting 1.19.6, OpenGL: 3.3 Mesa 18.0.5 (LLVM 6.0 128 bits), Compiler: GCC 7.3.0, File-System: ext4, Screen Resolution: 1280x1024 WD1500HLHX: Mq-Deadline: Processor: AMD Ryzen Threadripper 2990WX 32-Core @ 3.00GHz (32 Cores / 64 Threads), Motherboard: ASUS ROG ZENITH EXTREME (1601 BIOS), Chipset: AMD Family 17h, Memory: 4 x 8192 MB DDR4-1600MT/s F4-3200C14-8GFX, Disk: 150GB Western Digital WD1500HLHX-0, Graphics: llvmpipe, Audio: Realtek ALC1220, Network: Intel I211 + Qualcomm Atheros QCA6174 802.11ac + Wilocity Wil6200 802.11ad OS: Ubuntu 18.04, Kernel: 5.0.0-050000rc6-generic (x86_64) 20190210, Desktop: GNOME Shell 3.28.3, Display Server: X Server 1.19.6, Display Driver: modesetting 1.19.6, OpenGL: 3.3 Mesa 18.0.5 (LLVM 6.0 128 bits), Compiler: GCC 7.3.0, File-System: ext4, Screen Resolution: 1280x1024 WD1500HLHX: None: Processor: AMD Ryzen Threadripper 2990WX 32-Core @ 3.00GHz (32 Cores / 64 Threads), Motherboard: ASUS ROG ZENITH EXTREME (1601 BIOS), Chipset: AMD Family 17h, Memory: 4 x 8192 MB DDR4-1600MT/s F4-3200C14-8GFX, Disk: 150GB Western Digital WD1500HLHX-0, Graphics: llvmpipe, Audio: Realtek ALC1220, Network: Intel I211 + Qualcomm Atheros QCA6174 802.11ac + Wilocity Wil6200 802.11ad OS: Ubuntu 18.04, Kernel: 5.0.0-050000rc6-generic (x86_64) 20190210, Desktop: GNOME Shell 3.28.3, Display Server: X Server 1.19.6, Display Driver: modesetting 1.19.6, OpenGL: 3.3 Mesa 18.0.5 (LLVM 6.0 128 bits), Compiler: GCC 7.3.0, File-System: ext4, Screen Resolution: 1280x1024 WD1500HLHX: Kyber: Processor: AMD Ryzen Threadripper 2990WX 32-Core @ 3.00GHz (32 Cores / 64 Threads), Motherboard: ASUS ROG ZENITH EXTREME (1601 BIOS), Chipset: AMD Family 17h, Memory: 4 x 8192 MB DDR4-1600MT/s F4-3200C14-8GFX, Disk: 150GB Western Digital WD1500HLHX-0, Graphics: llvmpipe, Audio: Realtek ALC1220, Network: Intel I211 + Qualcomm Atheros QCA6174 802.11ac + Wilocity Wil6200 802.11ad OS: Ubuntu 18.04, Kernel: 5.0.0-050000rc6-generic (x86_64) 20190210, Desktop: GNOME Shell 3.28.3, Display Server: X Server 1.19.6, Display Driver: modesetting 1.19.6, OpenGL: 3.3 Mesa 18.0.5 (LLVM 6.0 128 bits), Compiler: GCC 7.3.0, File-System: ext4, Screen Resolution: 1280x1024 WD1500HLHX: BFQ low-latency: Processor: AMD Ryzen Threadripper 2990WX 32-Core @ 3.00GHz (32 Cores / 64 Threads), Motherboard: ASUS ROG ZENITH EXTREME (1601 BIOS), Chipset: AMD Family 17h, Memory: 4 x 8192 MB DDR4-1600MT/s F4-3200C14-8GFX, Disk: 150GB Western Digital WD1500HLHX-0, Graphics: llvmpipe, Audio: Realtek ALC1220, Network: Intel I211 + Qualcomm Atheros QCA6174 802.11ac + Wilocity Wil6200 802.11ad OS: Ubuntu 18.04, Kernel: 5.0.0-050000rc6-generic (x86_64) 20190210, Desktop: GNOME Shell 3.28.3, Display Server: X Server 1.19.6, Display Driver: modesetting 1.19.6, OpenGL: 3.3 Mesa 18.0.5 (LLVM 6.0 128 bits), Compiler: GCC 7.3.0, File-System: ext4, Screen Resolution: 1280x1024 WD1500HLHX: BFQ: Processor: AMD Ryzen Threadripper 2990WX 32-Core @ 3.00GHz (32 Cores / 64 Threads), Motherboard: ASUS ROG ZENITH EXTREME (1601 BIOS), Chipset: AMD Family 17h, Memory: 4 x 8192 MB DDR4-1600MT/s F4-3200C14-8GFX, Disk: 150GB Western Digital WD1500HLHX-0, Graphics: llvmpipe, Audio: Realtek ALC1220, Network: Intel I211 + Qualcomm Atheros QCA6174 802.11ac + Wilocity Wil6200 802.11ad OS: Ubuntu 18.04, Kernel: 5.0.0-050000rc6-generic (x86_64) 20190210, Desktop: GNOME Shell 3.28.3, Display Server: X Server 1.19.6, Display Driver: modesetting 1.19.6, OpenGL: 3.3 Mesa 18.0.5 (LLVM 6.0 128 bits), Compiler: GCC 7.3.0, File-System: ext4, Screen Resolution: 1280x1024 FS-Mark 3.3 Test: 1000 Files, 1MB Size Files/s > Higher Is Better WD5000AZRX: Mq-Deadline ..... 20.13 |========================== WD5000AZRX: None ............ 20.29 |========================== WD5000AZRX: Kyber ........... 20.28 |========================== WD5000AZRX: BFQ low-latency . 20.41 |========================== WD5000AZRX: BFQ ............. 20.42 |========================== WD1500HLHX: Mq-Deadline ..... 32.60 |========================================== WD1500HLHX: None ............ 32.08 |========================================= WD1500HLHX: Kyber ........... 31.74 |========================================= WD1500HLHX: BFQ low-latency . 31.91 |========================================= WD1500HLHX: BFQ ............. 32.05 |========================================= FS-Mark 3.3 Test: 5000 Files, 1MB Size, 4 Threads Files/s > Higher Is Better WD5000AZRX: Mq-Deadline ..... 46.13 |=============================== WD5000AZRX: None ............ 48.80 |================================ WD5000AZRX: Kyber ........... 48.48 |================================ WD5000AZRX: BFQ low-latency . 44.40 |============================= WD5000AZRX: BFQ ............. 47.87 |================================ WD1500HLHX: Mq-Deadline ..... 63.29 |========================================== WD1500HLHX: None ............ 63.20 |========================================== WD1500HLHX: Kyber ........... 62.71 |========================================== WD1500HLHX: BFQ low-latency . 62.36 |========================================= WD1500HLHX: BFQ ............. 61.33 |========================================= FS-Mark 3.3 Test: 4000 Files, 32 Sub Dirs, 1MB Size Files/s > Higher Is Better WD5000AZRX: Mq-Deadline ..... 17.97 |======================= WD5000AZRX: None ............ 21.03 |========================== WD5000AZRX: Kyber ........... 21.00 |========================== WD5000AZRX: BFQ low-latency . 14.87 |=================== WD5000AZRX: BFQ ............. 21.97 |============================ WD1500HLHX: Mq-Deadline ..... 33.50 |========================================== WD1500HLHX: None ............ 30.23 |====================================== WD1500HLHX: Kyber ........... 30.90 |======================================= WD1500HLHX: BFQ low-latency . 32.73 |========================================= WD1500HLHX: BFQ ............. 32.07 |======================================== Flexible IO Tester 3.1 Type: Random Read - IO Engine: Linux AIO - Buffered: Yes - Direct: No - Block Size: 2MB - Disk Target: Default Test Directory MB/s > Higher Is Better WD5000AZRX: Mq-Deadline ..... 4529 |====================================== WD5000AZRX: None ............ 4551 |======================================= WD5000AZRX: Kyber ........... 4647 |======================================= WD5000AZRX: BFQ low-latency . 4468 |====================================== WD5000AZRX: BFQ ............. 4589 |======================================= WD1500HLHX: Mq-Deadline ..... 4718 |======================================== WD1500HLHX: None ............ 4686 |======================================== WD1500HLHX: Kyber ........... 4756 |======================================== WD1500HLHX: BFQ low-latency . 5069 |=========================================== WD1500HLHX: BFQ ............. 4605 |======================================= Flexible IO Tester 3.1 Type: Random Write - IO Engine: Linux AIO - Buffered: Yes - Direct: No - Block Size: 2MB - Disk Target: Default Test Directory MB/s > Higher Is Better WD5000AZRX: Mq-Deadline ..... 4465 |========================================= WD5000AZRX: None ............ 4522 |========================================== WD5000AZRX: Kyber ........... 4539 |========================================== WD5000AZRX: BFQ low-latency . 4574 |========================================== WD5000AZRX: BFQ ............. 4639 |=========================================== WD1500HLHX: Mq-Deadline ..... 4517 |========================================== WD1500HLHX: None ............ 3698 |================================== WD1500HLHX: Kyber ........... 4513 |========================================== WD1500HLHX: BFQ low-latency . 4223 |======================================= WD1500HLHX: BFQ ............. 4562 |========================================== Flexible IO Tester 3.1 Type: Sequential Read - IO Engine: Linux AIO - Buffered: Yes - Direct: No - Block Size: 2MB - Disk Target: Default Test Directory MB/s > Higher Is Better WD5000AZRX: Mq-Deadline ..... 5861 |======================================= WD5000AZRX: None ............ 6098 |========================================= WD5000AZRX: Kyber ........... 5984 |======================================== WD5000AZRX: BFQ low-latency . 5891 |======================================== WD5000AZRX: BFQ ............. 6208 |========================================== WD1500HLHX: Mq-Deadline ..... 6341 |=========================================== WD1500HLHX: None ............ 6384 |=========================================== WD1500HLHX: Kyber ........... 6226 |========================================== WD1500HLHX: BFQ low-latency . 6361 |=========================================== WD1500HLHX: BFQ ............. 6204 |========================================== Flexible IO Tester 3.1 Type: Sequential Write - IO Engine: Linux AIO - Buffered: Yes - Direct: No - Block Size: 2MB - Disk Target: Default Test Directory MB/s > Higher Is Better WD5000AZRX: Mq-Deadline ..... 4393 |========================================= WD5000AZRX: None ............ 4501 |=========================================== WD5000AZRX: Kyber ........... 4346 |========================================= WD5000AZRX: BFQ low-latency . 4505 |=========================================== WD5000AZRX: BFQ ............. 4553 |=========================================== WD1500HLHX: Mq-Deadline ..... 4018 |====================================== WD1500HLHX: None ............ 4317 |========================================= WD1500HLHX: Kyber ........... 4337 |========================================= WD1500HLHX: BFQ low-latency . 4046 |====================================== WD1500HLHX: BFQ ............. 4518 |=========================================== Compile Bench 0.6 Test: Compile MB/s > Higher Is Better WD5000AZRX: Mq-Deadline ..... 1367 |=========================================== WD5000AZRX: None ............ 1340 |========================================== WD5000AZRX: Kyber ........... 1338 |========================================== WD5000AZRX: BFQ low-latency . 1347 |========================================== WD5000AZRX: BFQ ............. 1350 |========================================== WD1500HLHX: Mq-Deadline ..... 1373 |=========================================== WD1500HLHX: None ............ 1351 |========================================== WD1500HLHX: Kyber ........... 1334 |========================================== WD1500HLHX: BFQ low-latency . 1340 |========================================== WD1500HLHX: BFQ ............. 1338 |========================================== Compile Bench 0.6 Test: Initial Create MB/s > Higher Is Better WD5000AZRX: Mq-Deadline ..... 499 |============================================ WD5000AZRX: None ............ 492 |=========================================== WD5000AZRX: Kyber ........... 489 |=========================================== WD5000AZRX: BFQ low-latency . 480 |========================================== WD5000AZRX: BFQ ............. 477 |========================================== WD1500HLHX: Mq-Deadline ..... 504 |============================================ WD1500HLHX: None ............ 494 |=========================================== WD1500HLHX: Kyber ........... 496 |=========================================== WD1500HLHX: BFQ low-latency . 483 |========================================== WD1500HLHX: BFQ ............. 483 |========================================== PostgreSQL pgbench 10.3 Scaling: Buffer Test - Test: Normal Load - Mode: Read Only TPS > Higher Is Better WD5000AZRX: Mq-Deadline ..... 460626 |========================================= WD5000AZRX: None ............ 457558 |========================================= WD5000AZRX: Kyber ........... 352011 |=============================== WD5000AZRX: BFQ low-latency . 441958 |======================================= WD5000AZRX: BFQ ............. 360866 |================================ WD1500HLHX: Mq-Deadline ..... 440668 |======================================= WD1500HLHX: None ............ 453445 |======================================== WD1500HLHX: Kyber ........... 447010 |======================================== WD1500HLHX: BFQ low-latency . 457261 |========================================= WD1500HLHX: BFQ ............. 371152 |================================= PostgreSQL pgbench 10.3 Scaling: Buffer Test - Test: Normal Load - Mode: Read Write TPS > Higher Is Better WD5000AZRX: Mq-Deadline ..... 419 |================================= WD5000AZRX: None ............ 426 |================================= WD5000AZRX: Kyber ........... 420 |================================= WD5000AZRX: BFQ low-latency . 303 |======================== WD5000AZRX: BFQ ............. 264 |==================== WD1500HLHX: Mq-Deadline ..... 556 |=========================================== WD1500HLHX: None ............ 554 |=========================================== WD1500HLHX: Kyber ........... 567 |============================================ WD1500HLHX: BFQ low-latency . 445 |=================================== WD1500HLHX: BFQ ............. 402 |=============================== Application Start-up Time 2.4.0 Background I/O Mix: Only Sequential Reads - Application To Start: xterm - Disk Target: Default Test Directory sec < Lower Is Better WD5000AZRX: Mq-Deadline ..... 77.29 |========================================== WD5000AZRX: None ............ 66.87 |==================================== WD5000AZRX: Kyber ........... 63.41 |================================== WD5000AZRX: BFQ low-latency . 0.64 | WD5000AZRX: BFQ ............. 8.82 |===== WD1500HLHX: Mq-Deadline ..... 20.02 |=========== WD1500HLHX: None ............ 20.65 |=========== WD1500HLHX: Kyber ........... 21.20 |============ WD1500HLHX: BFQ low-latency . 0.45 | WD1500HLHX: BFQ ............. 7.27 |==== Application Start-up Time 2.4.0 Background I/O Mix: Sequential Reads + Writes - Application To Start: xterm - Disk Target: Default Test Directory sec < Lower Is Better WD5000AZRX: Mq-Deadline ..... 40.74 |========================================== WD5000AZRX: None ............ 40.43 |========================================== WD5000AZRX: Kyber ........... 40.04 |========================================= WD5000AZRX: BFQ low-latency . 0.65 |= WD5000AZRX: BFQ ............. 5.49 |====== WD1500HLHX: Mq-Deadline ..... 9.51 |========== WD1500HLHX: None ............ 8.94 |========= WD1500HLHX: Kyber ........... 9.45 |========== WD1500HLHX: BFQ low-latency . 0.48 | WD1500HLHX: BFQ ............. 6.32 |======= SQLite 3.22 Timed SQLite Insertions Seconds < Lower Is Better WD5000AZRX: Mq-Deadline ..... 592 |=========================================== WD5000AZRX: None ............ 502 |===================================== WD5000AZRX: Kyber ........... 605 |============================================ WD5000AZRX: BFQ low-latency . 519 |====================================== WD5000AZRX: BFQ ............. 548 |======================================== WD1500HLHX: Mq-Deadline ..... 278 |==================== WD1500HLHX: None ............ 271 |==================== WD1500HLHX: Kyber ........... 274 |==================== WD1500HLHX: BFQ low-latency . 270 |==================== WD1500HLHX: BFQ ............. 282 |===================== Timed Linux Kernel Compilation 4.18 Time To Compile Seconds < Lower Is Better WD5000AZRX: Mq-Deadline ..... 37.48 |========================================= WD5000AZRX: None ............ 37.41 |========================================= WD5000AZRX: Kyber ........... 37.92 |========================================== WD5000AZRX: BFQ low-latency . 37.52 |========================================== WD5000AZRX: BFQ ............. 37.56 |========================================== WD1500HLHX: Mq-Deadline ..... 37.73 |========================================== WD1500HLHX: None ............ 37.34 |========================================= WD1500HLHX: Kyber ........... 37.96 |========================================== WD1500HLHX: BFQ low-latency . 37.90 |========================================== WD1500HLHX: BFQ ............. 37.55 |========================================== Git Time To Complete Common Git Commands Seconds < Lower Is Better WD5000AZRX: Mq-Deadline ..... 5.68 |========================================== WD5000AZRX: None ............ 5.69 |========================================== WD5000AZRX: Kyber ........... 5.87 |=========================================== WD5000AZRX: BFQ low-latency . 5.80 |========================================== WD5000AZRX: BFQ ............. 5.79 |========================================== WD1500HLHX: Mq-Deadline ..... 5.62 |========================================= WD1500HLHX: None ............ 5.76 |========================================== WD1500HLHX: Kyber ........... 5.76 |========================================== WD1500HLHX: BFQ low-latency . 5.63 |========================================= WD1500HLHX: BFQ ............. 5.63 |=========================================