Linux 5.6 IO Scheduler Benchmarks

Linux 5.6 I/O scheduler benchmarks on NVMe SSD. Benchmarks by Michael Larabel for a future article.

HTML result view exported from: https://openbenchmarking.org/result/2003265-NI-LINUX56IO44.

Linux 5.6 IO Scheduler BenchmarksProcessorMotherboardChipsetMemoryDiskGraphicsAudioMonitorNetworkOSKernelDesktopDisplay ServerDisplay DriverOpenGLCompilerFile-SystemScreen ResolutionNoneMQ-DeadlineKyberBFQ low-latencyBFQAMD Ryzen Threadripper 3970X 32-Core @ 3.70GHz (32 Cores / 64 Threads)ASUS ROG ZENITH II EXTREME (0702 BIOS)AMD Starship/Matisse64GB1000GB Force MP600Gigabyte AMD Radeon RX 5500/5500M / Pro 5500M 8GB (1890/875MHz)AMD Navi 10 HDMI AudioASUS MG28UAquantia AQC107 NBase-T/IEEE + Intel I211 + Intel Wi-Fi 6 AX200Ubuntu 20.045.6.0-050600rc7-generic (x86_64) 20200322GNOME Shell 3.35.91X Server 1.20.7modesetting 1.20.74.6 Mesa 20.0.0 (LLVM 9.0.1)GCC 9.3.0ext41280x8003840x21601280x800OpenBenchmarking.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++,gm2 --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-multiarch --enable-multilib --enable-nls --enable-objc-gc=auto --enable-offload-targets=nvptx-none,hsa --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=auto --with-tune=generic --without-cuda-driver -v Disk Details- None: NONE / errors=remount-ro,relatime,rw- MQ-Deadline: MQ-DEADLINE / errors=remount-ro,relatime,rw- Kyber: KYBER / errors=remount-ro,relatime,rw- BFQ low-latency: BFQ / errors=remount-ro,relatime,rw- BFQ: BFQ / errors=remount-ro,relatime,rwProcessor Details- Scaling Governor: acpi-cpufreq ondemand - CPU Microcode: 0x8301025Java Details- OpenJDK Runtime Environment (build 11.0.6+10-post-Ubuntu-2ubuntu2)Security Details- itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + spec_store_bypass: Mitigation of SSB disabled via prctl and seccomp + spectre_v1: Mitigation of usercopy/swapgs barriers and __user pointer sanitization + spectre_v2: Mitigation of Full AMD retpoline IBPB: conditional STIBP: conditional RSB filling + tsx_async_abort: Not affected

Linux 5.6 IO Scheduler Benchmarkssqlite: 1sqlite: 8fio: Rand Read - IO_uring - Yes - No - 4KB - Default Test Directoryfio: Rand Read - IO_uring - Yes - No - 4KB - Default Test Directoryfio: Rand Write - IO_uring - Yes - No - 4KB - Default Test Directoryfio: Rand Write - IO_uring - Yes - No - 4KB - Default Test Directoryfio: Seq Read - IO_uring - Yes - No - 2MB - Default Test Directoryfio: Seq Read - IO_uring - Yes - No - 2MB - Default Test Directoryfio: Seq Read - IO_uring - Yes - No - 4KB - Default Test Directoryfio: Seq Read - IO_uring - Yes - No - 4KB - Default Test Directoryfio: Seq Write - IO_uring - Yes - No - 2MB - Default Test Directoryfio: Seq Write - IO_uring - Yes - No - 2MB - Default Test Directoryfio: Seq Write - IO_uring - Yes - No - 4KB - Default Test Directoryfio: Seq Write - IO_uring - Yes - No - 4KB - Default Test Directoryfs-mark: 5000 Files, 1MB Size, 4 Threadsfs-mark: 4000 Files, 32 Sub Dirs, 1MB Sizeior: Write Testior: Read Testbuild-gcc: Time To Compilebuild-gdb: Time To Compileleveldb: Hot Readleveldb: Fill Syncleveldb: Fill Syncleveldb: Overwriteleveldb: Overwriteleveldb: Rand Fillleveldb: Rand Fillleveldb: Rand Readleveldb: Seek Randleveldb: Rand Deleteleveldb: Seq Fillleveldb: Seq Fillkeydb: mysqlslap: 64pgbench: Buffer Test - Normal Load - Read Writecassandra: Writescassandra: Mixed 1:1rocksdb: Rand Fillrocksdb: Rand Readrocksdb: Seq Fillrocksdb: Rand Fill Syncrocksdb: Read While Writinghbase: Increment - 32hbase: Increment - 32hbase: Rand Read - 32hbase: Rand Read - 32hbase: Seq Read - 32hbase: Seq Read - 32hbase: Async Rand Read - 32hbase: Async Rand Read - 32hbase: Async Rand Write - 32hbase: Async Rand Write - 32NoneMQ-DeadlineKyberBFQ low-latencyBFQ14.42344.7021381353667979250667382519091483379333197998611843030001238.2592.3797.73995.19641.99080.41140.9623.61954.37626.7264.66126.7265.43941.26766.582256.30427.5257.331519045.76113434866.0822122916273753120514518132202412355583408261645351106802872399651311853451721673711886137252214.38565.065111928633397524946739671980166542600017018471166298667773.5591.4794.35977.23641.40880.24641.0183.61966.91226.7265.35426.6265.97541.29566.890257.50727.4257.854522808.4732712530.752488271238226118556317999690912378223120961842881109172862392441311701601871660001906370650115.076142.942111428516788322614240212007192749333317768841155296000593.5545.8781.43977.87642.18180.36140.8943.61967.16126.6265.71526.6265.71941.05466.609257.42827.6256.084527545.521712539.317088279252165119302018332445412160323371561315301114602842408211301662031911757461796019753514.718151.36378720160094024075037921893137335133313786861015260000647.2590.6799.22978.41642.18980.89341.0543.51998.43526.6265.54726.7264.86640.81166.229257.17427.5256.942525133.3131812441.077629273739141118874718051737112209742976161161901101962882411141301774601791625811944646169514.598107.81480020450096024575040092001192149200014147031027263000364.5528.4770.48986.32642.04280.79741.0643.52019.66626.8264.24526.7265.21241.81966.340258.14827.5257.014522119.6220712284.3470872828831371178558184232888122597023275629421011173028423876913217335418416360219362761508OpenBenchmarking.org

SQLite

Threads / Copies: 1

OpenBenchmarking.orgSeconds, Fewer Is BetterSQLite 3.30.1Threads / Copies: 1NoneMQ-DeadlineKyberBFQ low-latencyBFQ48121620SE +/- 0.05, N = 3SE +/- 0.05, N = 3SE +/- 0.20, N = 15SE +/- 0.15, N = 8SE +/- 0.14, N = 314.4214.3915.0814.7214.601. (CC) gcc options: -O2 -lz -lm -ldl -lpthread

SQLite

Threads / Copies: 8

OpenBenchmarking.orgSeconds, Fewer Is BetterSQLite 3.30.1Threads / Copies: 8NoneMQ-DeadlineKyberBFQ low-latencyBFQ306090120150SE +/- 0.17, N = 3SE +/- 4.78, N = 15SE +/- 7.59, N = 12SE +/- 7.47, N = 12SE +/- 5.70, N = 1544.7065.07142.94151.36107.811. (CC) gcc options: -O2 -lz -lm -ldl -lpthread

Flexible IO Tester

Type: Random Read - Engine: IO_uring - Buffered: Yes - Direct: No - Block Size: 4KB - Disk Target: Default Test Directory

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 3.18Type: Random Read - Engine: IO_uring - Buffered: Yes - Direct: No - Block Size: 4KB - Disk Target: Default Test DirectoryNoneMQ-DeadlineKyberBFQ low-latencyBFQ30060090012001500SE +/- 5.78, N = 3SE +/- 6.17, N = 3SE +/- 13.18, N = 6SE +/- 9.65, N = 5SE +/- 11.02, N = 41381111911147878001. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -march=native -ll -lrt -laio -lz -lpthread -lm -ldl

Flexible IO Tester

Type: Random Read - Engine: IO_uring - Buffered: Yes - Direct: No - Block Size: 4KB - Disk Target: Default Test Directory

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.18Type: Random Read - Engine: IO_uring - Buffered: Yes - Direct: No - Block Size: 4KB - Disk Target: Default Test DirectoryNoneMQ-DeadlineKyberBFQ low-latencyBFQ80K160K240K320K400KSE +/- 1452.97, N = 3SE +/- 1763.83, N = 3SE +/- 3439.15, N = 6SE +/- 2481.93, N = 5SE +/- 2843.12, N = 43536672863332851672016002045001. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -march=native -ll -lrt -laio -lz -lpthread -lm -ldl

Flexible IO Tester

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

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 3.18Type: Random Write - Engine: IO_uring - Buffered: Yes - Direct: No - Block Size: 4KB - Disk Target: Default Test DirectoryNoneMQ-DeadlineKyberBFQ low-latencyBFQ2004006008001000SE +/- 10.41, N = 3SE +/- 8.60, N = 15SE +/- 57.22, N = 12SE +/- 12.91, N = 4SE +/- 16.31, N = 129799758839409601. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -march=native -ll -lrt -laio -lz -lpthread -lm -ldl

Flexible IO Tester

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

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.18Type: Random Write - Engine: IO_uring - Buffered: Yes - Direct: No - Block Size: 4KB - Disk Target: Default Test DirectoryNoneMQ-DeadlineKyberBFQ low-latencyBFQ50K100K150K200K250KSE +/- 2603.42, N = 3SE +/- 2212.23, N = 15SE +/- 14652.50, N = 12SE +/- 3250.00, N = 4SE +/- 4178.09, N = 122506672494672261422407502457501. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -march=native -ll -lrt -laio -lz -lpthread -lm -ldl

Flexible IO Tester

Type: Sequential Read - Engine: IO_uring - Buffered: Yes - Direct: No - Block Size: 2MB - Disk Target: Default Test Directory

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 3.18Type: Sequential Read - Engine: IO_uring - Buffered: Yes - Direct: No - Block Size: 2MB - Disk Target: Default Test DirectoryNoneMQ-DeadlineKyberBFQ low-latencyBFQ9001800270036004500SE +/- 3.33, N = 3SE +/- 2.33, N = 3SE +/- 4.73, N = 3SE +/- 2.67, N = 3SE +/- 1.33, N = 3382539674021379240091. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -march=native -ll -lrt -laio -lz -lpthread -lm -ldl

Flexible IO Tester

Type: Sequential Read - Engine: IO_uring - Buffered: Yes - Direct: No - Block Size: 2MB - Disk Target: Default Test Directory

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.18Type: Sequential Read - Engine: IO_uring - Buffered: Yes - Direct: No - Block Size: 2MB - Disk Target: Default Test DirectoryNoneMQ-DeadlineKyberBFQ low-latencyBFQ400800120016002000SE +/- 1.67, N = 3SE +/- 1.15, N = 3SE +/- 2.40, N = 3SE +/- 1.33, N = 3SE +/- 0.67, N = 3190919802007189320011. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -march=native -ll -lrt -laio -lz -lpthread -lm -ldl

Flexible IO Tester

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

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 3.18Type: Sequential Read - Engine: IO_uring - Buffered: Yes - Direct: No - Block Size: 4KB - Disk Target: Default Test DirectoryNoneMQ-DeadlineKyberBFQ low-latencyBFQ400800120016002000SE +/- 5.81, N = 3SE +/- 12.35, N = 3SE +/- 7.17, N = 3SE +/- 16.23, N = 3SE +/- 26.11, N = 4148316651927137319211. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -march=native -ll -lrt -laio -lz -lpthread -lm -ldl

Flexible IO Tester

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

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.18Type: Sequential Read - Engine: IO_uring - Buffered: Yes - Direct: No - Block Size: 4KB - Disk Target: Default Test DirectoryNoneMQ-DeadlineKyberBFQ low-latencyBFQ110K220K330K440K550KSE +/- 1452.97, N = 3SE +/- 3214.55, N = 3SE +/- 1666.67, N = 3SE +/- 4176.65, N = 3SE +/- 6670.83, N = 43793334260004933333513334920001. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -march=native -ll -lrt -laio -lz -lpthread -lm -ldl

Flexible IO Tester

Type: Sequential Write - Engine: IO_uring - Buffered: Yes - Direct: No - Block Size: 2MB - Disk Target: Default Test Directory

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 3.18Type: Sequential Write - Engine: IO_uring - Buffered: Yes - Direct: No - Block Size: 2MB - Disk Target: Default Test DirectoryNoneMQ-DeadlineKyberBFQ low-latencyBFQ400800120016002000SE +/- 20.59, N = 8SE +/- 54.46, N = 15SE +/- 73.55, N = 12SE +/- 136.82, N = 12SE +/- 98.56, N = 15197917011776137814141. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -march=native -ll -lrt -laio -lz -lpthread -lm -ldl

Flexible IO Tester

Type: Sequential Write - Engine: IO_uring - Buffered: Yes - Direct: No - Block Size: 2MB - Disk Target: Default Test Directory

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.18Type: Sequential Write - Engine: IO_uring - Buffered: Yes - Direct: No - Block Size: 2MB - Disk Target: Default Test DirectoryNoneMQ-DeadlineKyberBFQ low-latencyBFQ2004006008001000SE +/- 10.37, N = 8SE +/- 27.25, N = 15SE +/- 36.75, N = 12SE +/- 68.36, N = 12SE +/- 49.26, N = 159868478846867031. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -march=native -ll -lrt -laio -lz -lpthread -lm -ldl

Flexible IO Tester

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

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 3.18Type: Sequential Write - Engine: IO_uring - Buffered: Yes - Direct: No - Block Size: 4KB - Disk Target: Default Test DirectoryNoneMQ-DeadlineKyberBFQ low-latencyBFQ30060090012001500SE +/- 10.45, N = 11SE +/- 11.84, N = 3SE +/- 8.11, N = 3SE +/- 13.20, N = 3SE +/- 15.25, N = 3118411661155101510271. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -march=native -ll -lrt -laio -lz -lpthread -lm -ldl

Flexible IO Tester

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

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.18Type: Sequential Write - Engine: IO_uring - Buffered: Yes - Direct: No - Block Size: 4KB - Disk Target: Default Test DirectoryNoneMQ-DeadlineKyberBFQ low-latencyBFQ60K120K180K240K300KSE +/- 2679.89, N = 11SE +/- 3179.80, N = 3SE +/- 2309.40, N = 3SE +/- 3511.88, N = 3SE +/- 3785.94, N = 33030002986672960002600002630001. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -march=native -ll -lrt -laio -lz -lpthread -lm -ldl

FS-Mark

Test: 5000 Files, 1MB Size, 4 Threads

OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 5000 Files, 1MB Size, 4 ThreadsNoneMQ-DeadlineKyberBFQ low-latencyBFQ30060090012001500SE +/- 9.23, N = 3SE +/- 121.16, N = 12SE +/- 87.62, N = 12SE +/- 103.97, N = 12SE +/- 2.86, N = 31238.2773.5593.5647.2364.51. (CC) gcc options: -static

FS-Mark

Test: 4000 Files, 32 Sub Dirs, 1MB Size

OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 4000 Files, 32 Sub Dirs, 1MB SizeNoneMQ-DeadlineKyberBFQ low-latencyBFQ130260390520650SE +/- 0.97, N = 3SE +/- 2.75, N = 3SE +/- 24.28, N = 13SE +/- 1.70, N = 3SE +/- 21.50, N = 12592.3591.4545.8590.6528.41. (CC) gcc options: -static

IOR

Write Test

OpenBenchmarking.orgMB/s, More Is BetterIOR 3.2.1Write TestNoneMQ-DeadlineKyberBFQ low-latencyBFQ2004006008001000SE +/- 3.67, N = 3SE +/- 6.47, N = 3SE +/- 5.10, N = 3SE +/- 4.45, N = 3SE +/- 5.04, N = 3797.73794.35781.43799.22770.48MIN: 165.18 / MAX: 906.83MIN: 162.92 / MAX: 909.98MIN: 13.98 / MAX: 900.79MIN: 156.94 / MAX: 903.57MIN: 13.92 / MAX: 898.051. (CC) gcc options: -O2 -lm -pthread -lmpi

IOR

Read Test

OpenBenchmarking.orgMB/s, More Is BetterIOR 3.2.1Read TestNoneMQ-DeadlineKyberBFQ low-latencyBFQ2004006008001000SE +/- 0.64, N = 3SE +/- 1.94, N = 3SE +/- 5.68, N = 3SE +/- 5.02, N = 3SE +/- 2.94, N = 3995.19977.23977.87978.41986.32MIN: 727.61 / MAX: 1323.38MIN: 746.57 / MAX: 1252.84MIN: 718.27 / MAX: 1337.12MIN: 724.27 / MAX: 1310.08MIN: 715.91 / MAX: 1357.451. (CC) gcc options: -O2 -lm -pthread -lmpi

Timed GCC Compilation

Time To Compile

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed GCC Compilation 9.3.0Time To CompileNoneMQ-DeadlineKyberBFQ low-latencyBFQ140280420560700SE +/- 0.17, N = 3SE +/- 0.25, N = 3SE +/- 0.03, N = 3SE +/- 0.16, N = 3SE +/- 0.27, N = 3641.99641.41642.18642.19642.04

Timed GDB GNU Debugger Compilation

Time To Compile

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed GDB GNU Debugger Compilation 9.1Time To CompileNoneMQ-DeadlineKyberBFQ low-latencyBFQ20406080100SE +/- 0.11, N = 3SE +/- 0.08, N = 3SE +/- 0.06, N = 3SE +/- 0.05, N = 3SE +/- 0.05, N = 380.4180.2580.3680.8980.80

LevelDB

Benchmark: Hot Read

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Hot ReadNoneMQ-DeadlineKyberBFQ low-latencyBFQ918273645SE +/- 0.21, N = 3SE +/- 0.16, N = 3SE +/- 0.14, N = 3SE +/- 0.18, N = 3SE +/- 0.26, N = 340.9641.0240.8941.0541.061. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Fill Sync

OpenBenchmarking.orgMB/s, More Is BetterLevelDB 1.22Benchmark: Fill SyncNoneMQ-DeadlineKyberBFQ low-latencyBFQ0.811.622.433.244.05SE +/- 0.00, N = 3SE +/- 0.03, N = 3SE +/- 0.03, N = 3SE +/- 0.06, N = 3SE +/- 0.04, N = 63.63.63.63.53.51. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Fill Sync

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Fill SyncNoneMQ-DeadlineKyberBFQ low-latencyBFQ400800120016002000SE +/- 3.92, N = 3SE +/- 5.68, N = 3SE +/- 13.46, N = 3SE +/- 19.30, N = 3SE +/- 19.00, N = 61954.381966.911967.161998.442019.671. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Overwrite

OpenBenchmarking.orgMB/s, More Is BetterLevelDB 1.22Benchmark: OverwriteNoneMQ-DeadlineKyberBFQ low-latencyBFQ612182430SE +/- 0.09, N = 3SE +/- 0.07, N = 3SE +/- 0.12, N = 3SE +/- 0.06, N = 3SE +/- 0.07, N = 326.726.726.626.626.81. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Overwrite

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: OverwriteNoneMQ-DeadlineKyberBFQ low-latencyBFQ60120180240300SE +/- 0.82, N = 3SE +/- 0.58, N = 3SE +/- 1.16, N = 3SE +/- 0.56, N = 3SE +/- 0.58, N = 3264.66265.35265.72265.55264.251. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Random Fill

OpenBenchmarking.orgMB/s, More Is BetterLevelDB 1.22Benchmark: Random FillNoneMQ-DeadlineKyberBFQ low-latencyBFQ612182430SE +/- 0.03, N = 3SE +/- 0.09, N = 3SE +/- 0.07, N = 3SE +/- 0.00, N = 3SE +/- 0.03, N = 326.726.626.626.726.71. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Random Fill

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Random FillNoneMQ-DeadlineKyberBFQ low-latencyBFQ60120180240300SE +/- 0.41, N = 3SE +/- 0.87, N = 3SE +/- 0.64, N = 3SE +/- 0.15, N = 3SE +/- 0.38, N = 3265.44265.98265.72264.87265.211. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Random Read

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Random ReadNoneMQ-DeadlineKyberBFQ low-latencyBFQ1020304050SE +/- 0.15, N = 3SE +/- 0.18, N = 3SE +/- 0.09, N = 3SE +/- 0.15, N = 3SE +/- 0.44, N = 341.2741.3041.0540.8141.821. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Seek Random

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Seek RandomNoneMQ-DeadlineKyberBFQ low-latencyBFQ1530456075SE +/- 0.15, N = 3SE +/- 0.04, N = 3SE +/- 0.11, N = 3SE +/- 0.24, N = 3SE +/- 0.07, N = 366.5866.8966.6166.2366.341. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Random Delete

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Random DeleteNoneMQ-DeadlineKyberBFQ low-latencyBFQ60120180240300SE +/- 0.66, N = 3SE +/- 0.58, N = 3SE +/- 0.37, N = 3SE +/- 0.13, N = 3SE +/- 0.64, N = 3256.30257.51257.43257.17258.151. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Sequential Fill

OpenBenchmarking.orgMB/s, More Is BetterLevelDB 1.22Benchmark: Sequential FillNoneMQ-DeadlineKyberBFQ low-latencyBFQ612182430SE +/- 0.06, N = 3SE +/- 0.03, N = 3SE +/- 0.07, N = 3SE +/- 0.07, N = 3SE +/- 0.09, N = 327.527.427.627.527.51. (CXX) g++ options: -O3 -lsnappy -lpthread

LevelDB

Benchmark: Sequential Fill

OpenBenchmarking.orgMicroseconds Per Op, Fewer Is BetterLevelDB 1.22Benchmark: Sequential FillNoneMQ-DeadlineKyberBFQ low-latencyBFQ60120180240300SE +/- 0.55, N = 3SE +/- 0.41, N = 3SE +/- 0.53, N = 3SE +/- 0.62, N = 3SE +/- 0.62, N = 3257.33257.85256.08256.94257.011. (CXX) g++ options: -O3 -lsnappy -lpthread

KeyDB

OpenBenchmarking.orgOps/sec, More Is BetterKeyDB 5.3.1NoneMQ-DeadlineKyberBFQ low-latencyBFQ110K220K330K440K550KSE +/- 3949.59, N = 3SE +/- 5087.07, N = 3SE +/- 2621.85, N = 3SE +/- 2938.61, N = 3SE +/- 3207.20, N = 3519045.76522808.47527545.50525133.31522119.621. (CXX) g++ options: -O2 -levent -lpthread -lz -lpcre

MariaDB

Clients: 64

OpenBenchmarking.orgQueries Per Second, More Is BetterMariaDB 10.3.8Clients: 64NoneMQ-DeadlineKyberBFQ low-latencyBFQ2004006008001000SE +/- 1.14, N = 3SE +/- 101.84, N = 9SE +/- 2.81, N = 3SE +/- 100.08, N = 9SE +/- 3.55, N = 311343272173182071. (CXX) g++ options: -pie -fPIC -fstack-protector -fno-rtti -O2 -lpthread -lsnappy -laio -lz -lm -lcrypt -lssl -lcrypto -ldl

PostgreSQL pgbench

Scaling: Buffer Test - Test: Normal Load - Mode: Read Write

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 12.0Scaling: Buffer Test - Test: Normal Load - Mode: Read WriteNoneMQ-DeadlineKyberBFQ low-latencyBFQ7K14K21K28K35KSE +/- 238.48, N = 3SE +/- 170.74, N = 15SE +/- 139.65, N = 3SE +/- 212.09, N = 15SE +/- 162.47, N = 1534866.0812530.7512539.3212441.0812284.351. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -lm

Apache Cassandra

Test: Writes

OpenBenchmarking.orgOp/s, More Is BetterApache Cassandra 3.11.4Test: WritesNoneMQ-DeadlineKyberBFQ low-latencyBFQ60K120K180K240K300KSE +/- 4255.75, N = 3SE +/- 3838.79, N = 3SE +/- 2588.05, N = 15SE +/- 1752.30, N = 3SE +/- 3156.44, N = 15291627271238279252273739282883

Apache Cassandra

Test: Mixed 1:1

OpenBenchmarking.orgOp/s, More Is BetterApache Cassandra 3.11.4Test: Mixed 1:1NoneMQ-DeadlineKyberBFQ low-latencyBFQ8001600240032004000SE +/- 217.63, N = 9SE +/- 5.46, N = 9SE +/- 12.43, N = 7SE +/- 26.61, N = 6SE +/- 8.58, N = 63753226165141137

Facebook RocksDB

Test: Random Fill

OpenBenchmarking.orgOp/s, More Is BetterFacebook RocksDB 6.3.6Test: Random FillNoneMQ-DeadlineKyberBFQ low-latencyBFQ300K600K900K1200K1500KSE +/- 3276.95, N = 3SE +/- 11269.49, N = 3SE +/- 2916.55, N = 3SE +/- 2824.61, N = 3SE +/- 5909.18, N = 3120514511855631193020118874711785581. (CXX) g++ options: -O3 -march=native -std=c++11 -fno-builtin-memcmp -fno-rtti -rdynamic -lpthread

Facebook RocksDB

Test: Random Read

OpenBenchmarking.orgOp/s, More Is BetterFacebook RocksDB 6.3.6Test: Random ReadNoneMQ-DeadlineKyberBFQ low-latencyBFQ40M80M120M160M200MSE +/- 2048541.15, N = 3SE +/- 1286835.14, N = 3SE +/- 3150233.61, N = 3SE +/- 2267118.09, N = 5SE +/- 2076338.73, N = 61813220241799969091833244541805173711842328881. (CXX) g++ options: -O3 -march=native -std=c++11 -fno-builtin-memcmp -fno-rtti -rdynamic -lpthread

Facebook RocksDB

Test: Sequential Fill

OpenBenchmarking.orgOp/s, More Is BetterFacebook RocksDB 6.3.6Test: Sequential FillNoneMQ-DeadlineKyberBFQ low-latencyBFQ300K600K900K1200K1500KSE +/- 9824.57, N = 3SE +/- 3005.09, N = 3SE +/- 9197.27, N = 3SE +/- 3978.59, N = 3SE +/- 11522.86, N = 3123555812378221216032122097412259701. (CXX) g++ options: -O3 -march=native -std=c++11 -fno-builtin-memcmp -fno-rtti -rdynamic -lpthread

Facebook RocksDB

Test: Random Fill Sync

OpenBenchmarking.orgOp/s, More Is BetterFacebook RocksDB 6.3.6Test: Random Fill SyncNoneMQ-DeadlineKyberBFQ low-latencyBFQ7K14K21K28K35KSE +/- 159.25, N = 3SE +/- 842.51, N = 12SE +/- 138.08, N = 3SE +/- 810.82, N = 15SE +/- 1587.48, N = 1234082312093371529761232751. (CXX) g++ options: -O3 -march=native -std=c++11 -fno-builtin-memcmp -fno-rtti -rdynamic -lpthread

Facebook RocksDB

Test: Read While Writing

OpenBenchmarking.orgOp/s, More Is BetterFacebook RocksDB 6.3.6Test: Read While WritingNoneMQ-DeadlineKyberBFQ low-latencyBFQ1.3M2.6M3.9M5.2M6.5MSE +/- 29916.58, N = 3SE +/- 80811.91, N = 5SE +/- 21536.07, N = 3SE +/- 22104.21, N = 3SE +/- 70731.04, N = 3616453561842886131530611619062942101. (CXX) g++ options: -O3 -march=native -std=c++11 -fno-builtin-memcmp -fno-rtti -rdynamic -lpthread

Apache HBase

Test: Increment - Clients: 32

OpenBenchmarking.orgRows Per Second, More Is BetterApache HBase 2.2.3Test: Increment - Clients: 32NoneMQ-DeadlineKyberBFQ low-latencyBFQ20K40K60K80K100KSE +/- 367.77, N = 3SE +/- 672.36, N = 3SE +/- 732.48, N = 3SE +/- 503.81, N = 3SE +/- 1065.86, N = 3110680110917111460110196111730

Apache HBase

Test: Increment - Clients: 32

OpenBenchmarking.orgMicroseconds - Average Latency, Fewer Is BetterApache HBase 2.2.3Test: Increment - Clients: 32NoneMQ-DeadlineKyberBFQ low-latencyBFQ60120180240300SE +/- 1.45, N = 3SE +/- 2.19, N = 3SE +/- 1.86, N = 3SE +/- 2.89, N = 3287286284288284

Apache HBase

Test: Random Read - Clients: 32

OpenBenchmarking.orgRows Per Second, More Is BetterApache HBase 2.2.3Test: Random Read - Clients: 32NoneMQ-DeadlineKyberBFQ low-latencyBFQ50K100K150K200K250KSE +/- 1261.46, N = 3SE +/- 1696.17, N = 3SE +/- 1147.34, N = 3SE +/- 1176.18, N = 3SE +/- 1073.93, N = 3239965239244240821241114238769

Apache HBase

Test: Random Read - Clients: 32

OpenBenchmarking.orgMicroseconds - Average Latency, Fewer Is BetterApache HBase 2.2.3Test: Random Read - Clients: 32NoneMQ-DeadlineKyberBFQ low-latencyBFQ306090120150SE +/- 0.67, N = 3SE +/- 0.67, N = 3131131130130132

Apache HBase

Test: Sequential Read - Clients: 32

OpenBenchmarking.orgRows Per Second, More Is BetterApache HBase 2.2.3Test: Sequential Read - Clients: 32NoneMQ-DeadlineKyberBFQ low-latencyBFQ40K80K120K160K200KSE +/- 2136.52, N = 15SE +/- 2100.10, N = 15SE +/- 2793.36, N = 3SE +/- 2066.20, N = 15SE +/- 1398.50, N = 15185345170160166203177460173354

Apache HBase

Test: Sequential Read - Clients: 32

OpenBenchmarking.orgMicroseconds - Average Latency, Fewer Is BetterApache HBase 2.2.3Test: Sequential Read - Clients: 32NoneMQ-DeadlineKyberBFQ low-latencyBFQ4080120160200SE +/- 2.19, N = 15SE +/- 2.37, N = 15SE +/- 3.21, N = 3SE +/- 2.20, N = 15SE +/- 1.54, N = 15172187191179184

Apache HBase

Test: Async Random Read - Clients: 32

OpenBenchmarking.orgRows Per Second, More Is BetterApache HBase 2.2.3Test: Async Random Read - Clients: 32NoneMQ-DeadlineKyberBFQ low-latencyBFQ40K80K120K160K200KSE +/- 1741.28, N = 3SE +/- 1862.94, N = 3SE +/- 2062.43, N = 3SE +/- 1743.02, N = 3SE +/- 1905.12, N = 3167371166000175746162581163602

Apache HBase

Test: Async Random Read - Clients: 32

OpenBenchmarking.orgMicroseconds - Average Latency, Fewer Is BetterApache HBase 2.2.3Test: Async Random Read - Clients: 32NoneMQ-DeadlineKyberBFQ low-latencyBFQ4080120160200SE +/- 1.86, N = 3SE +/- 2.33, N = 3SE +/- 2.03, N = 3SE +/- 1.76, N = 3SE +/- 2.19, N = 3188190179194193

Apache HBase

Test: Async Random Write - Clients: 32

OpenBenchmarking.orgRows Per Second, More Is BetterApache HBase 2.2.3Test: Async Random Write - Clients: 32NoneMQ-DeadlineKyberBFQ low-latencyBFQ14K28K42K56K70KSE +/- 1286.78, N = 12SE +/- 701.22, N = 12SE +/- 1589.78, N = 15SE +/- 1485.96, N = 12SE +/- 432.26, N = 36137263706601974646162761

Apache HBase

Test: Async Random Write - Clients: 32

OpenBenchmarking.orgMicroseconds - Average Latency, Fewer Is BetterApache HBase 2.2.3Test: Async Random Write - Clients: 32NoneMQ-DeadlineKyberBFQ low-latencyBFQ150300450600750SE +/- 13.83, N = 12SE +/- 6.18, N = 12SE +/- 16.45, N = 15SE +/- 24.46, N = 12SE +/- 3.48, N = 3522501535695508


Phoronix Test Suite v10.8.5