Linux 4.13 I/O Scheduler Mobile

Tests by Michael Larabel for a future article on Phoronix.

HTML result view exported from: https://openbenchmarking.org/result/1708198-TY-LINUX413I65&grt&sor&rro.

Linux 4.13 I/O Scheduler MobileProcessorMotherboardChipsetMemoryDiskGraphicsAudioNetworkOSKernelDesktopDisplay ServerDisplay DriverOpenGLCompilerFile-SystemScreen ResolutionNoneKyber MQBFQ low_latencyBFQCFQDeadlineIntel Core i7-5600U @ 3.20GHz (4 Cores)LENOVO 20BSCTO1WWIntel Broadwell-U-OPI2 x 4096 MB DDR3-1600MHz128GB SAMSUNG MZNTE128Intel HD 5500 3072MB (950MHz)Intel Broadwell-U AudioIntel Connection + Intel Wireless 7265Ubuntu 17.044.13.0-999-generic (x86_64) 20170814Unity 7.5.0X Server 1.19.3modesetting 1.19.34.5 Mesa 17.0.7GCC 6.3.0 20170406ext41920x1080OpenBenchmarking.orgCompiler 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=auto --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-arch-directory=amd64 --with-default-libstdcxx-abi=new --with-multilib-list=m32,m64,mx32 --with-target-system-zlib --with-tune=generic -v Disk Details- None: NONE / data=ordered,errors=remount-ro,relatime,rw- Kyber MQ: KYBER / data=ordered,errors=remount-ro,relatime,rw- BFQ low_latency: BFQ / data=ordered,errors=remount-ro,relatime,rw- BFQ: BFQ / data=ordered,errors=remount-ro,relatime,rw- CFQ: CFQ / data=ordered,errors=remount-ro,relatime,rw- Deadline: DEADLINE / data=ordered,errors=remount-ro,relatime,rwProcessor Details- Scaling Governor: intel_pstate powersave

Linux 4.13 I/O Scheduler Mobilestartup-time: Seq - Reads and writes - xtermstartup-time: Rand - Only reads - LibreOffice Writerstartup-time: Seq - Only reads - Gnome terminalstartup-time: Rand - Reads and writes - Gnome terminalstartup-time: Seq - Only reads - LibreOffice Writerstartup-time: Rand - Reads and writes - LibreOffice Writerstartup-time: Seq - Reads and writes - Gnome terminalstartup-time: Seq - Reads and writes - LibreOffice Writerblogbench: Readblogbench: Writedbench: 1dbench: 6fio: Rand Read - Libaio - No - Yes - 4KB - Default Test Directoryfio: Rand Write - Libaio - No - Yes - 4KB - Default Test Directoryfio: Seq Read - Libaio - No - Yes - 4KB - Default Test Directoryfio: Seq Write - Libaio - No - Yes - 4KB - Default Test Directoryfs-mark: 1000 Files, 1MB Sizefs-mark: 5000 Files, 1MB Size, 4 Threadsiozone: 4Kb - 8GB - Write Performancepgbench: On-Disk - Normal Load - Read Writepgbench: On-Disk - Heavy Contention - Read Writesqlite: Default Test DirectoryNoneKyber MQBFQ low_latencyBFQCFQDeadline1.380.312.830.544.850.864.948.41502903357058.51118.25358.23125.80206.83135.1241.5073.87125.56653.121351.4589.853.320.312.010.771.165.24581410302753.3799.79362.73107.41347.11117.3034.0761.27110.47562.12977.6696.560.250.350.260.443.302.280.853.88532632288227.0244.75358.9889.92230.13104.9323.6347.20106.07502.57744.68137.054.700.313.80612103316245.7679.25347.0526.92218.5927.7217.8026.8789.60438.74790.57147.2641.220.312.740.164.810.29798053291845.7486.64359.3847.83459.44103.2325.6542.13104.22514.40743.33112.340.343.440.845.381.48648161311944.2783.06364.5070.84458.93103.6022.3735.6792.86481.64649.01113.64OpenBenchmarking.org

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: xtermCFQBFQKyber MQNoneBFQ low_latency918273645SE +/- 2.30, N = 6SE +/- 1.21, N = 5SE +/- 1.96, N = 6SE +/- 0.00, N = 3SE +/- 0.04, N = 641.224.703.321.380.25

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 WriterBFQ low_latencyDeadlineCFQBFQKyber MQNone0.07880.15760.23640.31520.394SE +/- 0.00, N = 3SE +/- 0.00, N = 6SE +/- 0.00, N = 3SE +/- 0.00, N = 3SE +/- 0.00, N = 6SE +/- 0.00, N = 60.350.340.310.310.310.31

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 terminalBFQDeadlineNoneCFQKyber MQBFQ low_latency0.8551.712.5653.424.275SE +/- 1.63, N = 5SE +/- 0.00, N = 3SE +/- 0.01, N = 3SE +/- 0.02, N = 3SE +/- 0.02, N = 63.803.442.832.742.010.26

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 terminalDeadlineKyber MQNoneBFQ low_latencyCFQ0.1890.3780.5670.7560.945SE +/- 0.05, N = 6SE +/- 0.03, N = 6SE +/- 0.01, N = 3SE +/- 0.10, N = 6SE +/- 0.00, N = 60.840.770.540.440.16

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 WriterDeadlineNoneCFQBFQ low_latency1.21052.4213.63154.8426.0525SE +/- 0.01, N = 3SE +/- 0.03, N = 3SE +/- 0.04, N = 3SE +/- 0.24, N = 65.384.854.813.30

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 WriterBFQ low_latencyDeadlineKyber MQNoneCFQ0.5131.0261.5392.0522.565SE +/- 0.68, N = 6SE +/- 0.11, N = 6SE +/- 0.04, N = 6SE +/- 0.00, N = 3SE +/- 0.00, N = 32.281.481.160.860.29

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 terminalKyber MQNoneBFQ low_latency1.1792.3583.5374.7165.895SE +/- 0.03, N = 3SE +/- 0.08, N = 65.244.940.85

Application Start-up Time

Background I/O Type: Sequential - 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: Sequential - Background I/O mix: Reads and writes - Application to start: LibreOffice WriterNoneBFQ low_latency246810SE +/- 0.09, N = 3SE +/- 0.53, N = 68.413.88

BlogBench

Test: Read

OpenBenchmarking.orgFinal Score, More Is BetterBlogBench 1.0Test: ReadNoneBFQ low_latencyKyber MQBFQDeadlineCFQ200K400K600K800K1000KSE +/- 2993.42, N = 3SE +/- 16411.27, N = 6SE +/- 8262.34, N = 3SE +/- 16219.64, N = 6SE +/- 21980.44, N = 6SE +/- 33226.93, N = 65029035326325814106121036481617980531. (CC) gcc options: -O2 -pthread

BlogBench

Test: Write

OpenBenchmarking.orgFinal Score, More Is BetterBlogBench 1.0Test: WriteBFQ low_latencyCFQKyber MQDeadlineBFQNone8001600240032004000SE +/- 125.32, N = 3SE +/- 73.37, N = 3SE +/- 36.13, N = 3SE +/- 123.20, N = 3SE +/- 53.19, N = 3SE +/- 26.67, N = 32882291830273119316235701. (CC) gcc options: -O2 -pthread

Dbench

Client Count: 1

OpenBenchmarking.orgMB/s, More Is BetterDbench 4.0Client Count: 1BFQ low_latencyDeadlineCFQBFQKyber MQNone1326395265SE +/- 0.46, N = 3SE +/- 0.23, N = 3SE +/- 0.43, N = 3SE +/- 0.38, N = 3SE +/- 0.44, N = 3SE +/- 0.04, N = 327.0244.2745.7445.7653.3758.511. (CC) gcc options: -lpopt -O2

Dbench

Client Count: 6

OpenBenchmarking.orgMB/s, More Is BetterDbench 4.0Client Count: 6BFQ low_latencyBFQDeadlineCFQKyber MQNone306090120150SE +/- 0.26, N = 3SE +/- 0.22, N = 3SE +/- 1.46, N = 3SE +/- 0.87, N = 3SE +/- 0.38, N = 3SE +/- 0.05, N = 344.7579.2583.0686.6499.79118.251. (CC) gcc options: -lpopt -O2

Flexible IO Tester

Type: Random 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: Random Read - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test DirectoryBFQNoneBFQ low_latencyCFQKyber MQDeadline80160240320400SE +/- 0.42, N = 3SE +/- 0.04, N = 3SE +/- 1.00, N = 3SE +/- 1.95, N = 3SE +/- 0.84, N = 3SE +/- 0.05, N = 3347.05358.23358.98359.38362.73364.501. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lm -lpthread -ldl

Flexible IO Tester

Type: Random 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: Random Read - IO Engine: Libaio - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test DirectoryBFQNoneBFQ low_latencyCFQKyber MQDeadline20K40K60K80K100KSE +/- 104.86, N = 3SE +/- 9.13, N = 3SE +/- 251.00, N = 3SE +/- 487.32, N = 3SE +/- 211.01, N = 3SE +/- 11.89, N = 38676089553897428984290678911211. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lm -lpthread -ldl

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 DirectoryBFQCFQDeadlineBFQ low_latencyKyber MQNone306090120150SE +/- 1.99, N = 6SE +/- 10.58, N = 6SE +/- 14.88, N = 6SE +/- 16.21, N = 6SE +/- 14.42, N = 6SE +/- 0.01, N = 326.9247.8370.8489.92107.41125.801. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lm -lpthread -ldl

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 DirectoryBFQCFQDeadlineBFQ low_latencyKyber MQNone7K14K21K28K35KSE +/- 497.58, N = 6SE +/- 2644.91, N = 6SE +/- 3720.68, N = 6SE +/- 4052.87, N = 6SE +/- 3604.38, N = 6SE +/- 3.51, N = 3672711953177062247726849314461. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -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.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 DirectoryNoneBFQBFQ low_latencyKyber MQDeadlineCFQ100200300400500SE +/- 0.46, N = 3SE +/- 3.19, N = 4SE +/- 4.46, N = 3SE +/- 3.67, N = 3SE +/- 0.13, N = 3SE +/- 0.44, N = 3206.83218.59230.13347.11458.93459.441. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -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 DirectoryNoneBFQBFQ low_latencyKyber MQDeadlineCFQ20K40K60K80K100KSE +/- 113.77, N = 3SE +/- 797.79, N = 4SE +/- 1114.46, N = 3SE +/- 917.10, N = 3SE +/- 33.60, N = 3SE +/- 109.53, N = 3517035464457529867731147291148571. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -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 DirectoryBFQCFQDeadlineBFQ low_latencyKyber MQNone306090120150SE +/- 1.89, N = 6SE +/- 14.50, N = 6SE +/- 15.12, N = 6SE +/- 14.79, N = 6SE +/- 12.15, N = 6SE +/- 0.08, N = 327.72103.23103.60104.93117.30135.121. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -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 DirectoryBFQCFQDeadlineBFQ low_latencyKyber MQNone7K14K21K28K35KSE +/- 472.97, N = 6SE +/- 3624.05, N = 6SE +/- 3780.94, N = 6SE +/- 3698.82, N = 6SE +/- 3036.98, N = 6SE +/- 19.22, N = 3692625803258972622829322337771. (CC) gcc options: -rdynamic -std=gnu99 -O3 -ffast-math -include -lrt -laio -lm -lpthread -ldl

FS-Mark

Test: 1000 Files, 1MB Size

OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 1000 Files, 1MB SizeBFQDeadlineBFQ low_latencyCFQKyber MQNone918273645SE +/- 0.29, N = 3SE +/- 0.38, N = 6SE +/- 2.16, N = 6SE +/- 0.75, N = 6SE +/- 1.63, N = 6SE +/- 0.15, N = 317.8022.3723.6325.6534.0741.501. (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 ThreadsBFQDeadlineCFQBFQ low_latencyKyber MQNone1632486480SE +/- 5.39, N = 6SE +/- 5.13, N = 6SE +/- 5.65, N = 6SE +/- 7.20, N = 6SE +/- 4.24, N = 6SE +/- 1.09, N = 326.8735.6742.1347.2061.2773.871. (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 PerformanceBFQDeadlineCFQBFQ low_latencyKyber MQNone306090120150SE +/- 1.78, N = 6SE +/- 6.52, N = 6SE +/- 5.23, N = 6SE +/- 1.28, N = 3SE +/- 3.80, N = 6SE +/- 2.93, N = 689.6092.86104.22106.07110.47125.561. (CC) gcc options: -O3

PostgreSQL pgbench

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

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 9.6.3Scaling: On-Disk - Test: Normal Load - Mode: Read WriteBFQDeadlineBFQ low_latencyCFQKyber MQNone140280420560700SE +/- 10.63, N = 6SE +/- 30.07, N = 6SE +/- 28.10, N = 6SE +/- 13.09, N = 6SE +/- 22.48, N = 6SE +/- 15.85, N = 6438.74481.64502.57514.40562.12653.121. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -fpic -lpgcommon -lpgport -lrt -lcrypt -ldl -lm

PostgreSQL pgbench

Scaling: On-Disk - Test: Heavy Contention - Mode: Read Write

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 9.6.3Scaling: On-Disk - Test: Heavy Contention - Mode: Read WriteDeadlineCFQBFQ low_latencyBFQKyber MQNone30060090012001500SE +/- 10.20, N = 6SE +/- 9.04, N = 3SE +/- 38.33, N = 6SE +/- 43.96, N = 6SE +/- 45.49, N = 6SE +/- 8.96, N = 3649.01743.33744.68790.57977.661351.451. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -fpic -lpgcommon -lpgport -lrt -lcrypt -ldl -lm

SQLite

Test Target: Default Test Directory

OpenBenchmarking.orgSeconds, Fewer Is BetterSQLite 3.8.10.2Test Target: Default Test DirectoryBFQBFQ low_latencyDeadlineCFQKyber MQNone306090120150SE +/- 4.84, N = 6SE +/- 3.38, N = 6SE +/- 3.91, N = 6SE +/- 4.87, N = 6SE +/- 0.60, N = 3SE +/- 0.13, N = 3147.26137.05113.64112.3496.5689.851. (CC) gcc options: -O2 -ldl -lpthread


Phoronix Test Suite v10.8.5