Linux 4.19 I/O Scheduler Performance

Linux I/O scheduler benchmarks for a future article on Phoronix.com.

HTML result view exported from: https://openbenchmarking.org/result/1811264-SK-LINUX419I79&grw&sor.

Linux 4.19 I/O Scheduler PerformanceProcessorMotherboardChipsetMemoryDiskGraphicsMonitorNetworkOSKernelCompilerFile-SystemScreen ResolutionCFQDeadlineNoopMQ NoneBFQ low_latencyBFQKyberMQ Deadline2 x AMD EPYC 7601 32-Core (64 Cores / 128 Threads)Dell 02MJ3T (1.2.5 BIOS)AMD Family 17h16 x 32 GB DDR4-2400MT/s 36ASF4G72PZ-2G6D2120GB SSDSCKJB120G7R + 20 x 500GB Samsung SSD 860Matrox G200eW3VE228Broadcom BCM57416 NetXtreme-E Dual-Media 10G RDMAUbuntu 18.104.19.0-041900-generic (x86_64)GCC 8.2.0 + Clang 7.0.0-3 + LLVM 7.0.0ext41600x120020 x 500GB Samsung SSD 860 + 120GB SSDSCKJB120G7R120GB SSDSCKJB120G7R + 20 x 500GB Samsung SSD 860OpenBenchmarking.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- CFQ: CFQ / relatime,rw- Deadline: DEADLINE / relatime,rw- Noop: NOOP / relatime,rw- MQ None: NONE / relatime,rw- BFQ low_latency: BFQ / relatime,rw- BFQ: BFQ / relatime,rw- Kyber: KYBER / relatime,rw- MQ Deadline: MQ-DEADLINE / relatime,rwPython Details- Python 2.7.15+ + Python 3.6.7Security Details- __user pointer sanitization + Full AMD retpoline IBPB + SSB disabled via prctl and seccomp

Linux 4.19 I/O Scheduler Performancecompilebench: Compilecompilebench: Initial Createcompilebench: Read Compiled Treefio: Rand Read - Linux AIO - No - Yes - 2MB - Default Test Directoryfio: Rand Read - Linux AIO - No - Yes - 4KB - Default Test Directoryfio: Rand Write - Linux AIO - No - Yes - 2MB - Default Test Directoryfio: Rand Write - Linux AIO - No - Yes - 4KB - Default Test Directoryfio: Seq Read - Linux AIO - No - Yes - 2MB - Default Test Directoryfio: Seq Read - Linux AIO - No - Yes - 4KB - Default Test Directoryfio: Seq Write - Linux AIO - No - Yes - 2MB - Default Test Directoryfio: Seq Write - Linux AIO - No - Yes - 4KB - Default Test Directoryfs-mark: 1000 Files, 1MB Sizefs-mark: 5000 Files, 1MB Size, 4 Threadsfs-mark: 4000 Files, 32 Sub Dirs, 1MB Sizefs-mark: 1000 Files, 1MB Size, No Sync/FSyncbuild-gcc: Time To Compilebuild-linux-kernel: Time To Compileblogbench: Readblogbench: Writesqlite: Timed SQLite Insertionspgbench: Buffer Test - Normal Load - Read Onlypgbench: Buffer Test - Normal Load - Read WriteCFQDeadlineNoopMQ NoneBFQ low_latencyBFQKyberMQ Deadline155437088125328439123738232240531317418186.70189080626.387483962354733.175194383656157638893854231340323738232441031517317384.47189680326.377361432281734.205524705074156839196854227131023825325331830991.3017881.80189780726.487058472148577.105337092554157139697254327028022725225231130964.4314057.20192080026.507950752732068.295334632089159139496054327222321225225331231061.3313166.93191880426.497855412251275.0551979234061575387969542270379236381329386313168.2318183.83189680026.438051482416357.325457194837157739094954327531123625325331230891.6818389.17190980426.427805362749269.114978992303157738995554327224322625225231330759.2312367.38189379626.447834462634277.525063972453OpenBenchmarking.org

Compile Bench

Test: Compile

OpenBenchmarking.orgMB/s, More Is BetterCompile Bench 0.6Test: CompileBFQ low_latencyMQ DeadlineKyberDeadlineBFQMQ NoneNoopCFQ30060090012001500SE +/- 23.01, N = 3SE +/- 8.82, N = 3SE +/- 9.90, N = 3SE +/- 18.06, N = 3SE +/- 27.17, N = 3SE +/- 10.25, N = 3SE +/- 3.60, N = 3SE +/- 25.94, N = 1215911577157715761575157115681554

Compile Bench

Test: Initial Create

OpenBenchmarking.orgMB/s, More Is BetterCompile Bench 0.6Test: Initial CreateMQ NoneBFQ low_latencyNoopKyberMQ DeadlineDeadlineBFQCFQ90180270360450SE +/- 2.34, N = 3SE +/- 2.88, N = 3SE +/- 0.40, N = 3SE +/- 3.28, N = 3SE +/- 4.48, N = 3SE +/- 5.24, N = 3SE +/- 4.71, N = 3SE +/- 14.05, N = 3396394391390389388387370

Compile Bench

Test: Read Compiled Tree

OpenBenchmarking.orgMB/s, More Is BetterCompile Bench 0.6Test: Read Compiled TreeMQ NoneBFQNoopBFQ low_latencyMQ DeadlineKyberDeadlineCFQ2004006008001000SE +/- 0.68, N = 3SE +/- 13.50, N = 3SE +/- 0.51, N = 3SE +/- 10.55, N = 3SE +/- 9.75, N = 3SE +/- 33.71, N = 3SE +/- 16.27, N = 3SE +/- 88.38, N = 3972969968960955949938881

Flexible IO Tester

Type: Random Read - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 2MB - Disk Target: Default Test Directory

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 3.1Type: Random Read - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 2MB - Disk Target: Default Test DirectoryMQ DeadlineKyberBFQ low_latencyMQ NoneBFQNoopDeadlineCFQ120240360480600SE +/- 0.33, N = 3SE +/- 0.33, N = 35435435435435425425422531. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -ll -lgfapi -lglusterfs -lnuma -libverbs -lrt -laio -lz -lm -lpthread -ldl

Flexible IO Tester

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

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 3.1Type: Random Read - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test DirectoryDeadlineCFQKyberMQ DeadlineBFQ low_latencyNoopBFQMQ None70140210280350SE +/- 0.33, N = 3SE +/- 0.33, N = 33132842752722722712702701. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -ll -lgfapi -lglusterfs -lnuma -libverbs -lrt -laio -lz -lm -lpthread -ldl

Flexible IO Tester

Type: Random Write - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 2MB - Disk Target: Default Test Directory

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 3.1Type: Random Write - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 2MB - Disk Target: Default Test DirectoryDeadlineCFQBFQKyberNoopMQ NoneMQ DeadlineBFQ low_latency90180270360450SE +/- 7.51, N = 3SE +/- 4.04, N = 3SE +/- 3.71, N = 3SE +/- 1.53, N = 3SE +/- 7.26, N = 12SE +/- 12.51, N = 12SE +/- 12.98, N = 124033913793113102802432231. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -ll -lgfapi -lglusterfs -lnuma -libverbs -lrt -laio -lz -lm -lpthread -ldl

Flexible IO Tester

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

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 3.1Type: Random Write - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test DirectoryNoopDeadlineCFQKyberBFQMQ NoneMQ DeadlineBFQ low_latency50100150200250SE +/- 1.20, N = 3SE +/- 0.88, N = 3SE +/- 1.15, N = 3SE +/- 3.07, N = 6SE +/- 2.41, N = 102382372372362362272262121. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -ll -lgfapi -lglusterfs -lnuma -libverbs -lrt -laio -lz -lm -lpthread -ldl

Flexible IO Tester

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

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 3.1Type: Sequential Read - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 2MB - Disk Target: Default Test DirectoryDeadlineCFQBFQKyberNoopMQ DeadlineBFQ low_latencyMQ None801602403204003823823812532532522522521. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -ll -lgfapi -lglusterfs -lnuma -libverbs -lrt -laio -lz -lm -lpthread -ldl

Flexible IO Tester

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

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 3.1Type: Sequential Read - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test DirectoryBFQDeadlineCFQKyberBFQ low_latencyNoopMQ DeadlineMQ None70140210280350SE +/- 2.33, N = 3SE +/- 0.88, N = 33293243222532532532522521. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -ll -lgfapi -lglusterfs -lnuma -libverbs -lrt -laio -lz -lm -lpthread -ldl

Flexible IO Tester

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

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 3.1Type: Sequential Write - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 2MB - Disk Target: Default Test DirectoryDeadlineCFQBFQNoopMQ DeadlineKyberBFQ low_latencyMQ None90180270360450SE +/- 0.67, N = 3SE +/- 3.84, N = 3SE +/- 4.74, N = 7SE +/- 0.33, N = 3SE +/- 1.86, N = 3SE +/- 0.88, N = 3SE +/- 0.67, N = 3SE +/- 0.33, N = 34104053863183133123123111. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -ll -lgfapi -lglusterfs -lnuma -libverbs -lrt -laio -lz -lm -lpthread -ldl

Flexible IO Tester

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

OpenBenchmarking.orgMB/s, More Is BetterFlexible IO Tester 3.1Type: Sequential Write - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test DirectoryDeadlineBFQCFQBFQ low_latencyMQ NoneNoopKyberMQ Deadline70140210280350SE +/- 1.86, N = 3SE +/- 2.52, N = 3SE +/- 2.19, N = 3SE +/- 0.67, N = 3SE +/- 0.67, N = 3SE +/- 1.33, N = 33153133133103093093083071. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -ll -lgfapi -lglusterfs -lnuma -libverbs -lrt -laio -lz -lm -lpthread -ldl

FS-Mark

Test: 1000 Files, 1MB Size

OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 1000 Files, 1MB SizeCFQDeadlineBFQKyberNoopMQ NoneBFQ low_latencyMQ Deadline4080120160200SE +/- 0.09, N = 3SE +/- 0.23, N = 3SE +/- 0.44, N = 3SE +/- 2.15, N = 12SE +/- 6.28, N = 12SE +/- 2.14, N = 12SE +/- 2.31, N = 12SE +/- 2.40, N = 12174.00173.00168.2391.6891.3064.4361.3359.231. (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 ThreadsKyberBFQCFQNoopDeadlineMQ NoneBFQ low_latencyMQ Deadline4080120160200SE +/- 0.35, N = 3SE +/- 5.19, N = 12SE +/- 5.69, N = 12SE +/- 0.61, N = 3SE +/- 0.13, N = 3SE +/- 8.57, N = 8SE +/- 9.48, N = 6SE +/- 12.68, N = 61831811811781731401311231. (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 SizeKyberCFQDeadlineBFQNoopMQ DeadlineBFQ low_latencyMQ None20406080100SE +/- 0.07, N = 3SE +/- 0.06, N = 3SE +/- 0.12, N = 3SE +/- 0.07, N = 3SE +/- 1.50, N = 3SE +/- 1.79, N = 12SE +/- 1.76, N = 12SE +/- 1.01, N = 389.1786.7084.4783.8381.8067.3866.9357.201. (CC) gcc options: -static

FS-Mark

Test: 1000 Files, 1MB Size, No Sync/FSync

OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 1000 Files, 1MB Size, No Sync/FSyncMQ NoneBFQ low_latencyKyberNoopBFQDeadlineMQ DeadlineCFQ400800120016002000SE +/- 10.18, N = 3SE +/- 13.64, N = 3SE +/- 8.63, N = 3SE +/- 5.04, N = 3SE +/- 9.03, N = 3SE +/- 4.07, N = 3SE +/- 5.34, N = 3SE +/- 4.42, N = 3192019181909189718961896189318901. (CC) gcc options: -static

Timed GCC Compilation

Time To Compile

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed GCC Compilation 8.2Time To CompileMQ DeadlineMQ NoneBFQDeadlineBFQ low_latencyKyberCFQNoop2004006008001000796800800803804804806807

Timed Linux Kernel Compilation

Time To Compile

OpenBenchmarking.orgSeconds, Fewer Is BetterTimed Linux Kernel Compilation 4.18Time To CompileDeadlineCFQKyberBFQMQ DeadlineNoopBFQ low_latencyMQ None612182430SE +/- 0.32, N = 12SE +/- 0.30, N = 9SE +/- 0.26, N = 12SE +/- 0.27, N = 12SE +/- 0.29, N = 12SE +/- 0.30, N = 12SE +/- 0.30, N = 12SE +/- 0.28, N = 1226.3726.3826.4226.4326.4426.4826.4926.50

BlogBench

Test: Read

OpenBenchmarking.orgFinal Score, More Is BetterBlogBench 1.0Test: ReadBFQMQ NoneBFQ low_latencyMQ DeadlineKyberCFQDeadlineNoop200K400K600K800K1000KSE +/- 6417.79, N = 3SE +/- 5674.85, N = 3SE +/- 7744.57, N = 3SE +/- 15271.38, N = 3SE +/- 3436.67, N = 3SE +/- 12021.04, N = 3SE +/- 12667.35, N = 4SE +/- 14644.01, N = 98051487950757855417834467805367483967361437058471. (CC) gcc options: -O2 -pthread

BlogBench

Test: Write

OpenBenchmarking.orgFinal Score, More Is BetterBlogBench 1.0Test: WriteKyberMQ NoneMQ DeadlineBFQCFQDeadlineBFQ low_latencyNoop6K12K18K24K30KSE +/- 265.64, N = 3SE +/- 386.03, N = 3SE +/- 1133.74, N = 3SE +/- 2384.58, N = 3SE +/- 1591.21, N = 3SE +/- 1730.49, N = 3SE +/- 2941.93, N = 3SE +/- 1540.70, N = 327492273202634224163235472281722512214851. (CC) gcc options: -O2 -pthread

SQLite

Timed SQLite Insertions

OpenBenchmarking.orgSeconds, Fewer Is BetterSQLite 3.22Timed SQLite InsertionsCFQDeadlineBFQMQ NoneKyberBFQ low_latencyNoopMQ Deadline20406080100SE +/- 0.04, N = 3SE +/- 0.02, N = 3SE +/- 0.64, N = 3SE +/- 9.94, N = 9SE +/- 9.71, N = 9SE +/- 8.89, N = 9SE +/- 10.02, N = 9SE +/- 10.09, N = 933.1734.2057.3268.2969.1175.0577.1077.521. (CC) gcc options: -O2 -lz -ldl -lpthread

PostgreSQL pgbench

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

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 10.3Scaling: Buffer Test - Test: Normal Load - Mode: Read OnlyDeadlineBFQNoopMQ NoneBFQ low_latencyCFQMQ DeadlineKyber120K240K360K480K600KSE +/- 5594.65, N = 3SE +/- 9965.65, N = 3SE +/- 5081.43, N = 3SE +/- 1266.65, N = 3SE +/- 8044.90, N = 9SE +/- 14237.99, N = 9SE +/- 17086.01, N = 9SE +/- 16915.21, N = 95524705457195337095334635197925194385063974978991. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -lm

PostgreSQL pgbench

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

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL pgbench 10.3Scaling: Buffer Test - Test: Normal Load - Mode: Read WriteDeadlineBFQCFQBFQ low_latencyNoopMQ DeadlineKyberMQ None11002200330044005500SE +/- 43.49, N = 3SE +/- 30.68, N = 3SE +/- 482.90, N = 6SE +/- 274.44, N = 6SE +/- 178.04, N = 9SE +/- 116.16, N = 6SE +/- 328.42, N = 9SE +/- 79.41, N = 9507448373656340625542453230320891. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -lpgcommon -lpgport -lpq -lpthread -lrt -lcrypt -ldl -lm

Flexible IO Tester

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

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.1Type: Random Read - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test DirectoryDeadlineCFQKyberMQ DeadlineBFQ low_latencyNoopMQ NoneBFQ20K40K60K80K100KSE +/- 33.33, N = 3SE +/- 33.33, N = 3SE +/- 100.00, N = 3SE +/- 33.33, N = 3SE +/- 384.42, N = 380200726677046769700695006950069133687671. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -ll -lgfapi -lglusterfs -lnuma -libverbs -lrt -laio -lz -lm -lpthread -ldl

Flexible IO Tester

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

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.1Type: Random Write - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test DirectoryCFQNoopDeadlineKyberBFQMQ NoneMQ DeadlineBFQ low_latency13K26K39K52K65KSE +/- 284.80, N = 3SE +/- 328.30, N = 3SE +/- 88.19, N = 3SE +/- 272.85, N = 3SE +/- 260.34, N = 3SE +/- 771.00, N = 6SE +/- 632.60, N = 1060767606336060060533603335806757733542801. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -ll -lgfapi -lglusterfs -lnuma -libverbs -lrt -laio -lz -lm -lpthread -ldl

Flexible IO Tester

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

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.1Type: Sequential Read - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test DirectoryBFQDeadlineCFQNoopKyberBFQ low_latencyMQ DeadlineMQ None20K40K60K80K100KSE +/- 650.64, N = 3SE +/- 233.33, N = 3SE +/- 120.19, N = 3SE +/- 33.33, N = 384300828338256764800647006463364600646001. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -ll -lgfapi -lglusterfs -lnuma -libverbs -lrt -laio -lz -lm -lpthread -ldl

Flexible IO Tester

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

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.1Type: Sequential Write - IO Engine: Linux AIO - Buffered: No - Direct: Yes - Block Size: 4KB - Disk Target: Default Test DirectoryDeadlineBFQCFQBFQ low_latencyMQ NoneNoopMQ DeadlineKyber20K40K60K80K100KSE +/- 437.16, N = 3SE +/- 635.96, N = 3SE +/- 584.05, N = 3SE +/- 208.17, N = 3SE +/- 133.33, N = 3SE +/- 366.67, N = 3SE +/- 296.27, N = 380567802338016779300791677910078767785671. (CC) gcc options: -rdynamic -std=gnu99 -ffast-math -include -O3 -U_FORTIFY_SOURCE -ll -lgfapi -lglusterfs -lnuma -libverbs -lrt -laio -lz -lm -lpthread -ldl


Phoronix Test Suite v10.8.5