Linux 4.15 I/O Scheduler

Tests by Michael Larabel for a future article on Phoronix.

HTML result view exported from: https://openbenchmarking.org/result/1712071-AL-IOING252066&sro&grw.

ProcessorMotherboardChipsetMemoryDiskGraphicsAudioNetworkOSKernelDesktopDisplay ServerCompilerFile-SystemScreen ResolutionLinux 4.15 BFQ BFQ low_latency CFQ Deadline Kyber NoneIntel Core i7-5600U @ 3.20GHz (2 Cores / 4 Threads)LENOVO 20BSCTO1WWIntel Broadwell-U-OPI2 x 4096 MB DDR3-1600MT/s128GB SAMSUNG MZNTE128Intel HD 5500 (950MHz)Intel Broadwell-U AudioIntel Connection + Intel Wireless 7265Ubuntu 17.104.15.0-999-generic (x86_64) 20171203GNOME Shell 3.26.1X Server 1.19.5GCC 7.2.0ext41920x1080OpenBenchmarking.orgCompiler Details- --build=x86_64-linux-gnu --disable-vtable-verify --disable-werror --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-gnu-unique-object --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --enable-libmpx --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multiarch --enable-multilib --enable-nls --enable-objc-gc=auto --enable-offload-targets=nvptx-none --enable-plugin --enable-shared --enable-threads=posix --host=x86_64-linux-gnu --program-prefix=x86_64-linux-gnu- --target=x86_64-linux-gnu --with-abi=m64 --with-arch-32=i686 --with-default-libstdcxx-abi=new --with-gcc-major-version-only --with-multilib-list=m32,m64,mx32 --with-target-system-zlib --with-tune=generic --without-cuda-driver -v Disk Details- Linux 4.15: BFQ: BFQ / data=ordered,errors=remount-ro,relatime,rw- Linux 4.15: BFQ low_latency: BFQ / data=ordered,errors=remount-ro,relatime,rw- Linux 4.15: CFQ: CFQ / data=ordered,errors=remount-ro,relatime,rw- Linux 4.15: Deadline: DEADLINE / data=ordered,errors=remount-ro,relatime,rw- Linux 4.15: Kyber: KYBER / data=ordered,errors=remount-ro,relatime,rw- Linux 4.15: None: NONE / data=ordered,errors=remount-ro,relatime,rwProcessor Details- Scaling Governor: intel_pstate powersave

fio: Seq Read - Libaio - No - Yes - 4KB - Default Test Directoryfio: Seq Write - Libaio - No - Yes - 4KB - Default Test Directorystartup-time: Rand - Only reads - LibreOffice Writerfio: Rand Write - Libaio - No - Yes - 4KB - Default Test Directorystartup-time: Seq - Reads and writes - Gnome terminalstartup-time: Rand - Reads and writes - LibreOffice Writerstartup-time: Seq - Only reads - LibreOffice Writerstartup-time: Rand - Reads and writes - Gnome terminalstartup-time: Seq - Only reads - Gnome terminalfs-mark: 1000 Files, 1MB Sizefs-mark: 5000 Files, 1MB Size, 4 Threadsiozone: 4Kb - 8GB - Write Performancestartup-time: Seq - Reads and writes - xtermblogbench: Readblogbench: Writesqlite: Default Test DirectoryLinux 4.15 BFQ BFQ low_latency CFQ Deadline Kyber None461.1876.970.3533.071.975.411.313.5318.2523.6526.7548.3611823012042130.71461.2787.900.3467.920.710.700.530.9619.4334.2546.1719.2211209202368141.27459.83113.430.53104.790.636.390.363.2935.7555.5882.5034.73650369315592.04461.2286.560.4359.601.565.021.053.2024.2739.8043.089500492716112.94461.7588.700.3663.4736.901.626.241.023.5921.8542.6055.692.977765952944115.31212.3478.440.3763.6935.701.675.241.133.5620.1743.7561.864.926326643283118.91OpenBenchmarking.org

Flexible IO Tester

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

OpenBenchmarking.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 DirectoryBFQBFQ low_latencyCFQDeadlineKyberNone100200300400500SE +/- 0.88, N = 3SE +/- 0.34, N = 3SE +/- 0.18, N = 3SE +/- 0.55, N = 3SE +/- 0.71, N = 3SE +/- 2.98, N = 3461.18461.27459.83461.22461.75212.341. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl

Flexible IO Tester

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

OpenBenchmarking.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 DirectoryBFQBFQ low_latencyCFQDeadlineKyberNone306090120150SE +/- 15.44, N = 6SE +/- 16.00, N = 6SE +/- 4.68, N = 6SE +/- 14.14, N = 6SE +/- 14.79, N = 6SE +/- 14.40, N = 676.9787.90113.4386.5688.7078.441. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl

Application Start-up Time

Background I/O Type: Random - Background I/O mix: Only reads - Application to start: LibreOffice Writer

OpenBenchmarking.orgsec, Fewer Is BetterApplication Start-up Time 0.1.0Background I/O Type: Random - Background I/O mix: Only reads - Application to start: LibreOffice WriterBFQBFQ low_latencyCFQDeadlineKyberNone0.11930.23860.35790.47720.5965SE +/- 0.01, N = 6SE +/- 0.00, N = 3SE +/- 0.01, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 30.350.340.530.430.360.37

Flexible IO Tester

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

OpenBenchmarking.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 DirectoryBFQBFQ low_latencyCFQDeadlineKyberNone20406080100SE +/- 3.83, N = 6SE +/- 14.97, N = 6SE +/- 4.14, N = 6SE +/- 12.64, N = 6SE +/- 12.94, N = 6SE +/- 14.23, N = 633.0767.92104.7959.6063.4763.691. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl

Application Start-up Time

Background I/O Type: Sequential - Background I/O mix: Reads and writes - Application to start: Gnome terminal

OpenBenchmarking.orgsec, Fewer Is BetterApplication Start-up Time 0.1.0Background I/O Type: Sequential - Background I/O mix: Reads and writes - Application to start: Gnome terminalKyberNone816243240SE +/- 2.47, N = 6SE +/- 0.57, N = 436.9035.70

Application Start-up Time

Background I/O Type: Random - Background I/O mix: Reads and writes - Application to start: LibreOffice Writer

OpenBenchmarking.orgsec, Fewer Is BetterApplication Start-up Time 0.1.0Background I/O Type: Random - Background I/O mix: Reads and writes - Application to start: LibreOffice WriterBFQBFQ low_latencyCFQDeadlineKyberNone0.44330.88661.32991.77322.2165SE +/- 0.21, N = 6SE +/- 0.08, N = 6SE +/- 0.00, N = 3SE +/- 0.06, N = 6SE +/- 0.08, N = 6SE +/- 0.12, N = 61.970.710.631.561.621.67

Application Start-up Time

Background I/O Type: Sequential - Background I/O mix: Only reads - Application to start: LibreOffice Writer

OpenBenchmarking.orgsec, Fewer Is BetterApplication Start-up Time 0.1.0Background I/O Type: Sequential - Background I/O mix: Only reads - Application to start: LibreOffice WriterBFQBFQ low_latencyCFQDeadlineKyberNone246810SE +/- 0.03, N = 3SE +/- 0.17, N = 6SE +/- 0.00, N = 3SE +/- 0.01, N = 3SE +/- 0.28, N = 6SE +/- 0.02, N = 35.410.706.395.026.245.24

Application Start-up Time

Background I/O Type: Random - Background I/O mix: Reads and writes - Application to start: Gnome terminal

OpenBenchmarking.orgsec, Fewer Is BetterApplication Start-up Time 0.1.0Background I/O Type: Random - Background I/O mix: Reads and writes - Application to start: Gnome terminalBFQBFQ low_latencyCFQDeadlineKyberNone0.29480.58960.88441.17921.474SE +/- 0.12, N = 6SE +/- 0.12, N = 6SE +/- 0.03, N = 6SE +/- 0.06, N = 6SE +/- 0.06, N = 6SE +/- 0.02, N = 31.310.530.361.051.021.13

Application Start-up Time

Background I/O Type: Sequential - Background I/O mix: Only reads - Application to start: Gnome terminal

OpenBenchmarking.orgsec, Fewer Is BetterApplication Start-up Time 0.1.0Background I/O Type: Sequential - Background I/O mix: Only reads - Application to start: Gnome terminalBFQBFQ low_latencyCFQDeadlineKyberNone0.80781.61562.42343.23124.039SE +/- 0.05, N = 3SE +/- 0.27, N = 6SE +/- 0.04, N = 3SE +/- 0.02, N = 3SE +/- 0.06, N = 5SE +/- 0.03, N = 33.530.963.293.203.593.56

FS-Mark

Test: 1000 Files, 1MB Size

OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 1000 Files, 1MB SizeBFQBFQ low_latencyCFQDeadlineKyberNone816243240SE +/- 0.79, N = 6SE +/- 1.11, N = 6SE +/- 1.58, N = 6SE +/- 0.62, N = 6SE +/- 1.03, N = 6SE +/- 1.17, N = 618.2519.4335.7524.2721.8520.171. (CC) gcc options: -static

FS-Mark

Test: 5000 Files, 1MB Size, 4 Threads

OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 5000 Files, 1MB Size, 4 ThreadsBFQBFQ low_latencyCFQDeadlineKyberNone1224364860SE +/- 2.06, N = 6SE +/- 5.90, N = 6SE +/- 2.74, N = 6SE +/- 4.51, N = 6SE +/- 8.58, N = 6SE +/- 7.96, N = 623.6534.2555.5839.8042.6043.751. (CC) gcc options: -static

IOzone

Record Size: 4Kb - File Size: 8GB - Disk Test: Write Performance

OpenBenchmarking.orgMB/s, More Is BetterIOzone 3.465Record Size: 4Kb - File Size: 8GB - Disk Test: Write PerformanceBFQBFQ low_latencyCFQDeadlineKyberNone20406080100SE +/- 0.06, N = 3SE +/- 6.98, N = 6SE +/- 4.61, N = 6SE +/- 5.84, N = 6SE +/- 9.32, N = 6SE +/- 9.31, N = 626.7546.1782.5043.0855.6961.861. (CC) gcc options: -O3

Application Start-up Time

Background I/O Type: Sequential - Background I/O mix: Reads and writes - Application to start: xterm

OpenBenchmarking.orgsec, Fewer Is BetterApplication Start-up Time 0.1.0Background I/O Type: Sequential - Background I/O mix: Reads and writes - Application to start: xtermBFQBFQ low_latencyCFQKyberNone1122334455SE +/- 3.45, N = 5SE +/- 1.68, N = 6SE +/- 0.60, N = 3SE +/- 0.47, N = 6SE +/- 0.53, N = 648.3619.2234.732.974.92

BlogBench

Test: Read

OpenBenchmarking.orgFinal Score, More Is BetterBlogBench 1.0Test: ReadBFQBFQ low_latencyCFQDeadlineKyberNone300K600K900K1200K1500KSE +/- 14794.03, N = 3SE +/- 64889.88, N = 6SE +/- 24461.81, N = 6SE +/- 98431.75, N = 6SE +/- 47438.71, N = 6SE +/- 7796.67, N = 3118230111209206503699500497765956326641. (CC) gcc options: -O2 -pthread

BlogBench

Test: Write

OpenBenchmarking.orgFinal Score, More Is BetterBlogBench 1.0Test: WriteBFQBFQ low_latencyCFQDeadlineKyberNone7001400210028003500SE +/- 70.95, N = 3SE +/- 92.59, N = 3SE +/- 163.84, N = 3SE +/- 153.54, N = 3SE +/- 21.48, N = 3SE +/- 29.58, N = 32042236831552716294432831. (CC) gcc options: -O2 -pthread

SQLite

Test Target: Default Test Directory

OpenBenchmarking.orgSeconds, Fewer Is BetterSQLite 3.8.10.2Test Target: Default Test DirectoryBFQBFQ low_latencyCFQDeadlineKyberNone306090120150SE +/- 2.92, N = 6SE +/- 5.22, N = 6SE +/- 0.12, N = 3SE +/- 3.03, N = 6SE +/- 2.23, N = 6SE +/- 3.32, N = 6130.71141.2792.04112.94115.31118.911. (CC) gcc options: -O2 -lreadline -lcurses -ldl -lpthread

Flexible IO Tester

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

OpenBenchmarking.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 DirectoryBFQBFQ low_latencyCFQDeadlineKyberNone6K12K18K24K30KSE +/- 956.63, N = 6SE +/- 3741.34, N = 6SE +/- 1035.79, N = 6SE +/- 3161.08, N = 6SE +/- 3235.11, N = 6SE +/- 3558.59, N = 6826316976261941489615864159201. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl

Flexible IO Tester

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

OpenBenchmarking.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 DirectoryBFQBFQ low_latencyCFQDeadlineKyberNone20K40K60K80K100KSE +/- 219.17, N = 3SE +/- 85.70, N = 3SE +/- 45.23, N = 3SE +/- 137.69, N = 3SE +/- 176.38, N = 3SE +/- 744.77, N = 3115292115315114953115302115434530821. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl

Flexible IO Tester

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

OpenBenchmarking.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 DirectoryBFQBFQ low_latencyCFQDeadlineKyberNone6K12K18K24K30KSE +/- 3861.01, N = 6SE +/- 3999.76, N = 6SE +/- 1168.74, N = 6SE +/- 3536.14, N = 6SE +/- 3697.25, N = 6SE +/- 3600.80, N = 61924021970283532163722172196071. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lz -lm -lpthread -ldl


Phoronix Test Suite v10.8.4