Linux 4.20 IO Scheduler Tests Linux 4.20 I/O scheduler tests by Michael Larabel on NVMe SSD storage for a future article on Phoronix. None: Processor: AMD Ryzen Threadripper 2990WX 32-Core @ 3.00GHz (32 Cores / 64 Threads), Motherboard: ASUS ROG ZENITH EXTREME (1501 BIOS), Chipset: AMD Family 17h, Memory: 4 x 8192 MB DDR4-1600MT/s F4-3200C14-8GFX, Disk: Samsung SSD 970 EVO 500GB, Graphics: AMD Radeon RX Vega 8GB, Audio: Realtek ALC1220, Monitor: ASUS VP28U, Network: Intel I211 Gigabit Connection + Qualcomm Atheros QCA6174 802.11ac Wireless OS: Ubuntu 18.10, Kernel: 4.20.0-999-generic (x86_64) 20181201, Desktop: GNOME Shell 3.30.1, Display Server: X Server, OpenGL: 4.5 Mesa 18.2.2 (LLVM 7.0.0), Vulkan: 1.1.70, Compiler: GCC 8.2.0, File-System: ext4, Screen Resolution: 3840x2160 MQ Deadline: Processor: AMD Ryzen Threadripper 2990WX 32-Core @ 3.00GHz (32 Cores / 64 Threads), Motherboard: ASUS ROG ZENITH EXTREME (1501 BIOS), Chipset: AMD Family 17h, Memory: 4 x 8192 MB DDR4-1600MT/s F4-3200C14-8GFX, Disk: Samsung SSD 970 EVO 500GB, Graphics: AMD Radeon RX Vega 8GB, Audio: Realtek ALC1220, Monitor: ASUS VP28U, Network: Intel I211 Gigabit Connection + Qualcomm Atheros QCA6174 802.11ac Wireless OS: Ubuntu 18.10, Kernel: 4.20.0-999-generic (x86_64) 20181201, Desktop: GNOME Shell 3.30.1, Display Server: X Server, OpenGL: 4.5 Mesa 18.2.2 (LLVM 7.0.0), Vulkan: 1.1.70, Compiler: GCC 8.2.0, File-System: ext4, Screen Resolution: 3840x2160 Kyber: Processor: AMD Ryzen Threadripper 2990WX 32-Core @ 3.00GHz (32 Cores / 64 Threads), Motherboard: ASUS ROG ZENITH EXTREME (1501 BIOS), Chipset: AMD Family 17h, Memory: 4 x 8192 MB DDR4-1600MT/s F4-3200C14-8GFX, Disk: Samsung SSD 970 EVO 500GB, Graphics: AMD Radeon RX Vega 8GB, Audio: Realtek ALC1220, Monitor: ASUS VP28U, Network: Intel I211 Gigabit Connection + Qualcomm Atheros QCA6174 802.11ac Wireless OS: Ubuntu 18.10, Kernel: 4.20.0-999-generic (x86_64) 20181201, Desktop: GNOME Shell 3.30.1, Display Server: X Server, OpenGL: 4.5 Mesa 18.2.2 (LLVM 7.0.0), Vulkan: 1.1.70, Compiler: GCC 8.2.0, File-System: ext4, Screen Resolution: 3840x2160 BFQ low_latency: Processor: AMD Ryzen Threadripper 2990WX 32-Core @ 3.00GHz (32 Cores / 64 Threads), Motherboard: ASUS ROG ZENITH EXTREME (1501 BIOS), Chipset: AMD Family 17h, Memory: 4 x 8192 MB DDR4-1600MT/s F4-3200C14-8GFX, Disk: Samsung SSD 970 EVO 500GB, Graphics: AMD Radeon RX Vega 8GB, Audio: Realtek ALC1220, Monitor: ASUS VP28U, Network: Intel I211 Gigabit Connection + Qualcomm Atheros QCA6174 802.11ac Wireless OS: Ubuntu 18.10, Kernel: 4.20.0-999-generic (x86_64) 20181201, Desktop: GNOME Shell 3.30.1, Display Server: X Server, OpenGL: 4.5 Mesa 18.2.2 (LLVM 7.0.0), Vulkan: 1.1.70, Compiler: GCC 8.2.0, File-System: ext4, Screen Resolution: 3840x2160 BFQ: Processor: AMD Ryzen Threadripper 2990WX 32-Core @ 3.00GHz (32 Cores / 64 Threads), Motherboard: ASUS ROG ZENITH EXTREME (1501 BIOS), Chipset: AMD Family 17h, Memory: 4 x 8192 MB DDR4-1600MT/s F4-3200C14-8GFX, Disk: Samsung SSD 970 EVO 500GB, Graphics: AMD Radeon RX Vega 8GB, Audio: Realtek ALC1220, Monitor: ASUS VP28U, Network: Intel I211 Gigabit Connection + Qualcomm Atheros QCA6174 802.11ac Wireless OS: Ubuntu 18.10, Kernel: 4.20.0-999-generic (x86_64) 20181201, Desktop: GNOME Shell 3.30.1, Display Server: X Server, OpenGL: 4.5 Mesa 18.2.2 (LLVM 7.0.0), Vulkan: 1.1.70, Compiler: GCC 8.2.0, File-System: ext4, Screen Resolution: 3840x2160 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 None ............ 0.54 |====================================================== MQ Deadline ..... 0.54 |====================================================== Kyber ........... 0.54 |====================================================== BFQ low_latency . 0.17 |================= BFQ ............. 0.55 |======================================================= 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 None ............ 0.75 |===================================== MQ Deadline ..... 1.12 |======================================================= Kyber ........... 1.06 |==================================================== BFQ low_latency . 0.18 |========= BFQ ............. 1.12 |======================================================= Application Start-up Time 2.4.0 Background I/O Mix: Only Sequential Reads - Application To Start: GNOME Terminal - Disk Target: Default Test Directory sec < Lower Is Better None ............ 2.13 |==================================================== MQ Deadline ..... 2.17 |===================================================== Kyber ........... 2.11 |==================================================== BFQ low_latency . 0.30 |======= BFQ ............. 2.24 |======================================================= Application Start-up Time 2.4.0 Background I/O Mix: Only Sequential Reads - Application To Start: LibreOffice Writer - Disk Target: Default Test Directory sec < Lower Is Better None ............ 1.77 |====================================================== MQ Deadline ..... 1.73 |===================================================== Kyber ........... 1.79 |======================================================= BFQ low_latency . 0.25 |======== BFQ ............. 1.78 |======================================================= Application Start-up Time 2.4.0 Background I/O Mix: Sequential Reads + Writes - Application To Start: GNOME Terminal - Disk Target: Default Test Directory sec < Lower Is Better None ............ 3.22 |======================================= MQ Deadline ..... 4.44 |===================================================== Kyber ........... 4.59 |======================================================= BFQ low_latency . 0.55 |======= BFQ ............. 4.45 |===================================================== Application Start-up Time 2.4.0 Background I/O Mix: Sequential Reads + Writes - Application To Start: LibreOffice Writer - Disk Target: Default Test Directory sec < Lower Is Better None ............ 2.49 |======================================= MQ Deadline ..... 3.40 |===================================================== Kyber ........... 3.52 |======================================================= BFQ low_latency . 0.34 |===== BFQ ............. 3.17 |================================================== SQLite 3.22 Timed SQLite Insertions Seconds < Lower Is Better None ............ 35.95 |=================================================== MQ Deadline ..... 37.95 |====================================================== Kyber ........... 37.96 |====================================================== BFQ low_latency . 36.21 |==================================================== BFQ ............. 37.31 |===================================================== Flexible IO Tester 3.1 Type: Random Read - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 2MB - Disk Target: Default Test Directory MB/s > Higher Is Better None ............ 3322 |====================================================== MQ Deadline ..... 3362 |======================================================= Kyber ........... 3362 |======================================================= BFQ low_latency . 3342 |======================================================= BFQ ............. 3368 |======================================================= Flexible IO Tester 3.1 Type: Random Read - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory MB/s > Higher Is Better None ............ 666 |================================================= MQ Deadline ..... 764 |======================================================== Kyber ........... 754 |======================================================= BFQ low_latency . 716 |==================================================== BFQ ............. 752 |======================================================= Flexible IO Tester 3.1 Type: Random Read - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory IOPS > Higher Is Better None ............ 170333 |============================================== MQ Deadline ..... 195667 |===================================================== Kyber ........... 193000 |==================================================== BFQ low_latency . 183667 |================================================== BFQ ............. 192667 |==================================================== Flexible IO Tester 3.1 Type: Random Write - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 2MB - Disk Target: Default Test Directory MB/s > Higher Is Better None ............ 2362 |======================================================= MQ Deadline ..... 2369 |======================================================= Kyber ........... 2369 |======================================================= BFQ low_latency . 2371 |======================================================= BFQ ............. 2365 |======================================================= Flexible IO Tester 3.1 Type: Random Write - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory MB/s > Higher Is Better None ............ 1011 |======================================================= MQ Deadline ..... 886 |================================================ Kyber ........... 944 |=================================================== BFQ low_latency . 712 |======================================= BFQ ............. 710 |======================================= Flexible IO Tester 3.1 Type: Random Write - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory IOPS > Higher Is Better None ............ 259000 |===================================================== MQ Deadline ..... 226667 |============================================== Kyber ........... 242000 |================================================== BFQ low_latency . 182333 |===================================== BFQ ............. 181667 |===================================== Flexible IO Tester 3.1 Type: Sequential Read - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 2MB - Disk Target: Default Test Directory MB/s > Higher Is Better None ............ 1030 |======================================================= MQ Deadline ..... 1034 |======================================================= Kyber ........... 1029 |======================================================= BFQ low_latency . 1033 |======================================================= BFQ ............. 1033 |======================================================= Flexible IO Tester 3.1 Type: Sequential Read - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory MB/s > Higher Is Better None ............ 956 |======================================================== MQ Deadline ..... 962 |======================================================== Kyber ........... 953 |======================================================= BFQ low_latency . 761 |============================================ BFQ ............. 780 |============================================= Flexible IO Tester 3.1 Type: Sequential Read - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory IOPS > Higher Is Better None ............ 244667 |===================================================== MQ Deadline ..... 246000 |===================================================== Kyber ........... 243667 |==================================================== BFQ low_latency . 194750 |========================================== BFQ ............. 199333 |=========================================== Flexible IO Tester 3.1 Type: Sequential Write - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 2MB - Disk Target: Default Test Directory MB/s > Higher Is Better None ............ 2402 |======================================================= MQ Deadline ..... 2400 |======================================================= Kyber ........... 2394 |======================================================= BFQ low_latency . 2401 |======================================================= BFQ ............. 2394 |======================================================= Flexible IO Tester 3.1 Type: Sequential Write - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory MB/s > Higher Is Better None ............ 1022 |======================================================= MQ Deadline ..... 939 |=================================================== Kyber ........... 949 |=================================================== BFQ low_latency . 712 |====================================== BFQ ............. 721 |======================================= Flexible IO Tester 3.1 Type: Sequential Write - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test Directory IOPS > Higher Is Better None ............ 261667 |===================================================== MQ Deadline ..... 240333 |================================================= Kyber ........... 243000 |================================================= BFQ low_latency . 182417 |===================================== BFQ ............. 184667 |===================================== FS-Mark 3.3 Test: 1000 Files, 1MB Size Files/s > Higher Is Better None ............ 234 |======================================================== MQ Deadline ..... 224 |====================================================== Kyber ........... 227 |====================================================== BFQ low_latency . 232 |======================================================== BFQ ............. 229 |======================================================= FS-Mark 3.3 Test: 5000 Files, 1MB Size, 4 Threads Files/s > Higher Is Better None ............ 203 |=============================================== MQ Deadline ..... 149 |================================== Kyber ........... 152 |=================================== BFQ low_latency . 216 |================================================== BFQ ............. 244 |======================================================== FS-Mark 3.3 Test: 4000 Files, 32 Sub Dirs, 1MB Size Files/s > Higher Is Better None ............ 96.03 |========================================= MQ Deadline ..... 91.91 |======================================= Kyber ........... 84.28 |==================================== BFQ low_latency . 125.08 |===================================================== BFQ ............. 124.66 |===================================================== FS-Mark 3.3 Test: 1000 Files, 1MB Size, No Sync/FSync Files/s > Higher Is Better None ............ 2320 |======================================================= MQ Deadline ..... 2319 |======================================================= Kyber ........... 2315 |======================================================= BFQ low_latency . 2305 |======================================================= BFQ ............. 2289 |====================================================== BlogBench 1.0 Test: Read Final Score > Higher Is Better None ............ 726638 |========================================= MQ Deadline ..... 929021 |===================================================== Kyber ........... 929293 |===================================================== BFQ low_latency . 488353 |============================ BFQ ............. 475934 |=========================== BlogBench 1.0 Test: Write Final Score > Higher Is Better None ............ 14318 |======================================== MQ Deadline ..... 12993 |===================================== Kyber ........... 13856 |======================================= BFQ low_latency . 19135 |====================================================== BFQ ............. 18239 |=================================================== PostgreSQL pgbench 10.3 Scaling: Buffer Test - Test: Normal Load - Mode: Read Write TPS > Higher Is Better None ............ 4285 |=========================================== MQ Deadline ..... 4381 |============================================ Kyber ........... 4609 |============================================== BFQ low_latency . 5477 |======================================================= BFQ ............. 5151 |====================================================