Bcachefs Linux 6.7 Benchmarks

Bcachefs benchmarks by Michael Larabel for a future article.

Compare your own system(s) to this result file with the Phoronix Test Suite by running the command: phoronix-test-suite benchmark 2311036-NE-BCACHEFSL97
Jump To Table - Results

View

Do Not Show Noisy Results
Do Not Show Results With Incomplete Data
Do Not Show Results With Little Change/Spread
List Notable Results
Show Result Confidence Charts

Limit displaying results to tests within:

C/C++ Compiler Tests 2 Tests
CPU Massive 2 Tests
Database Test Suite 4 Tests
Disk Test Suite 3 Tests
Server 6 Tests

Statistics

Show Overall Harmonic Mean(s)
Show Overall Geometric Mean
Show Geometric Means Per-Suite/Category
Show Wins / Losses Counts (Pie Chart)
Normalize Results
Remove Outliers Before Calculating Averages

Graph Settings

Force Line Graphs Where Applicable
Convert To Scalar Where Applicable
Prefer Vertical Bar Graphs

Multi-Way Comparison

Condense Multi-Option Tests Into Single Result Graphs

Table

Show Detailed System Result Table

Run Management

Highlight
Result
Hide
Result
Result
Identifier
Performance Per
Dollar
Date
Run
  Test
  Duration
Bcachefs
November 01 2023
  8 Hours, 55 Minutes
EXT4
November 02 2023
  7 Hours, 15 Minutes
Btrfs
November 02 2023
  8 Hours, 19 Minutes
F2FS
November 03 2023
  6 Hours, 32 Minutes
XFS
November 03 2023
  5 Hours, 51 Minutes
Invert Hiding All Results Option
  7 Hours, 23 Minutes

Only show results where is faster than
Only show results matching title/arguments (delimit multiple options with a comma):
Do not show results matching title/arguments (delimit multiple options with a comma):


Bcachefs Linux 6.7 BenchmarksOpenBenchmarking.orgPhoronix Test SuiteAMD Ryzen 9 7950X 16-Core @ 5.88GHz (16 Cores / 32 Threads)ASUS ROG STRIX X670E-E GAMING WIFI (1416 BIOS)AMD Device 14d82 x 16 GB DDR5-6000MT/s F5-6000J3038F16G2000GB Samsung SSD 980 PRO 2TB + 2048GB SOLIDIGM SSDPFKKW020X7AMD Radeon 16GB (2124/1218MHz)AMD Navi 31 HDMI/DPASUS MG28UIntel I225-V + Intel Wi-Fi 6 AX210/AX211/AX411Ubuntu 23.106.6.0-phx-bcachefs (x86_64)GNOME Shell 45.0X Server4.6 Mesa 23.2.1-1ubuntu3 (LLVM 15.0.7 DRM 3.54)GCC 13.2.0 + LLVM 16.0.6BcacheFSext4btrfsf2fsxfs3840x2160ProcessorMotherboardChipsetMemoryDiskGraphicsAudioMonitorNetworkOSKernelDesktopDisplay ServerOpenGLCompilerFile-SystemsScreen ResolutionBcachefs Linux 6.7 Benchmarks PerformanceSystem Logs- Transparent Huge Pages: madvise- --build=x86_64-linux-gnu --disable-vtable-verify --disable-werror --enable-bootstrap --enable-cet --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-gnu-unique-object --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --enable-libphobos-checking=release --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-link-serialization=2 --enable-multiarch --enable-multilib --enable-nls --enable-objc-gc=auto --enable-offload-defaulted --enable-offload-targets=nvptx-none=/build/gcc-13-XYspKM/gcc-13-13.2.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-13-XYspKM/gcc-13-13.2.0/debian/tmp-gcn/usr --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-build-config=bootstrap-lto-lean --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 - Bcachefs: NONE / errors=remount-ro,relatime,rw / Block Size: 512- EXT4: NONE / errors=remount-ro,relatime,rw / Block Size: 4096- Btrfs: NONE / errors=remount-ro,relatime,rw / Block Size: 4096- F2FS: NONE / errors=remount-ro,relatime,rw / Block Size: 4096- XFS: NONE / errors=remount-ro,relatime,rw / Block Size: 4096- Scaling Governor: amd-pstate-epp powersave (EPP: balance_performance) - CPU Microcode: 0xa601203 - OpenJDK Runtime Environment (build 11.0.20+8-post-Ubuntu-1ubuntu1)- Bcachefs: Python 3.11.6- gather_data_sampling: Not affected + itlb_multihit: Not affected + l1tf: Not affected + mds: Not affected + meltdown: Not affected + mmio_stale_data: Not affected + retbleed: Not affected + spec_rstack_overflow: Vulnerable: Safe RET no microcode + spec_store_bypass: Mitigation of SSB disabled via prctl + spectre_v1: Mitigation of usercopy/swapgs barriers and __user pointer sanitization + spectre_v2: Mitigation of Enhanced / Automatic IBRS IBPB: conditional STIBP: always-on RSB filling PBRSB-eIBRS: Not affected + srbds: Not affected + tsx_async_abort: Not affected

BcachefsEXT4BtrfsF2FSXFSLogarithmic Result OverviewPhoronix Test SuiteApplication Start-up TimePostgreSQLFS-MarkFlexible IO TesterSQLiteClickHousenginxDuckDBApache IoTDB

Bcachefs Linux 6.7 Benchmarksfio: Rand Read - IO_uring - No - Yes - 4KB - 8 - Default Test Directorystartup-time: Only Seq Reads - LibreOffice Writer - Default Test Directorystartup-time: Seq Reads + Writes - LibreOffice Writer - Default Test Directoryfio: Rand Read - IO_uring - No - Yes - 4KB - 1 - Default Test Directoryfio: Rand Write - IO_uring - No - Yes - 4KB - 8 - Default Test Directorysqlite: 2sqlite: 1sqlite: 4fio: Rand Read - IO_uring - No - Yes - 4KB - 8 - Default Test Directorysqlite: 8fio: Seq Read - IO_uring - No - Yes - 2MB - 8 - Default Test Directoryfio: Seq Read - IO_uring - No - Yes - 2MB - 8 - Default Test Directoryclickhouse: 100M Rows Hits Dataset, First Run / Cold Cacheclickhouse: 100M Rows Hits Dataset, Third Runclickhouse: 100M Rows Hits Dataset, Second Runnginx: 500duckdb: TPC-H Parquetapache-iotdb: 800 - 100 - 500 - 400apache-iotdb: 800 - 100 - 500 - 400fio: Rand Write - IO_uring - No - Yes - 4KB - 8 - Default Test Directorypgbench: 1000 - 800 - Read Write - Average Latencypgbench: 1000 - 800 - Read Writefs-mark: 4000 Files, 32 Sub Dirs, 1MB Sizefs-mark: 5000 Files, 1MB Size, 4 Threadsfs-mark: 1000 Files, 1MB Sizefio: Seq Write - IO_uring - No - Yes - 2MB - 8 - Default Test Directoryfio: Seq Write - IO_uring - No - Yes - 2MB - 8 - Default Test Directoryfio: Seq Write - IO_uring - No - Yes - 2MB - 1 - Default Test Directoryfio: Seq Write - IO_uring - No - Yes - 2MB - 1 - Default Test Directoryfio: Seq Read - IO_uring - No - Yes - 2MB - 1 - Default Test Directoryfio: Seq Read - IO_uring - No - Yes - 2MB - 1 - Default Test Directoryfio: Rand Write - IO_uring - No - Yes - 4KB - 1 - Default Test Directorystartup-time: Seq Reads + Writes - GNOME Terminal - Default Test Directorystartup-time: Only Seq Reads - GNOME Terminal - Default Test Directorystartup-time: Seq Reads + Writes - xterm - Default Test Directorystartup-time: Only Seq Reads - xterm - Default Test DirectoryBcachefsEXT4BtrfsF2FSXFS303113.710.3820000.486667761624002318.95912.82821.9337577824.2854901.282451212.92246.20247.05173189.6197.489268.0066327842108.2037562201.7651.6199.36321263.5112312461.6324274853.74373500.7273330.5190000.2426390.1817784172.530.4428890.531778370746134700610.5007.61813.275106816718.7336252.593126239.03266.49267.34176467.1194.596270.706682885141.14019631447.3981.6748.927915582.5827805559.4530566112.062880270.6437780.4870560.2058610.1637413162.162.148781.932342526207957227.00817.23527.57180951330.0106065.983033236.45270.80266.61164208.0995.898264.666888630425.37131551677.81993.6650.023914781.9623644728.9530926184.31777603.023473.461441.001441.127614164.190.2893330.28155637688936298410.9959.33116.947106603218.0056296.223148237.60268.57264.44174634.9498.787255.637021062528.72927856641.12258.2790.327765552.9328085615.7731456290.372685570.3367780.3558330.1602780.1705004140.320.4436660.573444375420140794510.1957.70412.619105992224.1096237.253118240.47273.77270.38177367.2493.109258.41701906615499.7818.28943749235.21513.41151.827505499.9127745547.5330836165.182991630.6617780.5188330.2135830.181524OpenBenchmarking.org

Flexible IO Tester

OpenBenchmarking.orgMiB/s, More Is BetterFlexible IO Tester 3.35Type: Random Read - Engine: IO_uring - Buffered: No - Direct: Yes - Block Size: 4KB - Job Count: 8 - Disk Target: Default Test DirectoryBcachefsBtrfsEXT4F2FSXFS60K120K180K240K300KSE +/- 2910.36, N = 6SE +/- 8.01, N = 3SE +/- 46.08, N = 15SE +/- 48.15, N = 15SE +/- 53.06, N = 14303113.713162.164172.534164.194140.32MIN: 297377.67 / MAX: 317335.741. (CC) gcc options: -rdynamic -ll -lnuma -lz -lm -laio -lpthread -ldl -std=gnu99 -ffast-math -include -O3 -fcommon -march=native

Application Start-up Time

This benchmark measures the start-up time of applications when there is some I/O in the background. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgsec, Fewer Is BetterApplication Start-up Time 3.4.0Background I/O Mix: Only Sequential Reads - Application To Start: LibreOffice Writer - Disk Target: Default Test DirectoryBcachefsBtrfsEXT4F2FSXFS0.48350.9671.45051.9342.4175SE +/- 0.002694, N = 3SE +/- 0.022155, N = 3SE +/- 0.003318, N = 3SE +/- 0.003355, N = 3SE +/- 0.003283, N = 30.3820002.1487800.4428890.2893330.443666

OpenBenchmarking.orgsec, Fewer Is BetterApplication Start-up Time 3.4.0Background I/O Mix: Sequential Reads + Writes - Application To Start: LibreOffice Writer - Disk Target: Default Test DirectoryBcachefsBtrfsEXT4F2FSXFS0.43480.86961.30441.73922.174SE +/- 0.004446, N = 6SE +/- 0.011624, N = 3SE +/- 0.002452, N = 3SE +/- 0.002724, N = 3SE +/- 0.003279, N = 30.4866671.9323400.5317780.2815560.573444

Flexible IO Tester

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.35Type: Random Read - Engine: IO_uring - Buffered: No - Direct: Yes - Block Size: 4KB - Job Count: 1 - Disk Target: Default Test DirectoryBcachefsBtrfsEXT4F2FSXFS80K160K240K320K400KSE +/- 569.75, N = 15SE +/- 1602.80, N = 3SE +/- 2792.67, N = 3SE +/- 811.99, N = 3SE +/- 2446.50, N = 376162252620370746376889375420MIN: 73658.17 / MAX: 80946.09MIN: 249668.66 / MAX: 255179.14MIN: 365747.42 / MAX: 375403.37MIN: 375794.76 / MAX: 378475.42MIN: 370802.87 / MAX: 379130.971. (CC) gcc options: -rdynamic -ll -lnuma -lz -lm -laio -lpthread -ldl -std=gnu99 -ffast-math -include -O3 -fcommon -march=native

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.35Type: Random Write - Engine: IO_uring - Buffered: No - Direct: Yes - Block Size: 4KB - Job Count: 8 - Disk Target: Default Test DirectoryBcachefsBtrfsEXT4F2FSXFS300K600K900K1200K1500KSE +/- 566.87, N = 15SE +/- 660.10, N = 15SE +/- 16634.48, N = 15SE +/- 4136.29, N = 4SE +/- 717.34, N = 3400237957213470063629841407945MIN: 1239048.22 / MAX: 1414090.84MIN: 357966.22 / MAX: 375302.33MIN: 1406672.14 / MAX: 1409154.71. (CC) gcc options: -rdynamic -ll -lnuma -lz -lm -laio -lpthread -ldl -std=gnu99 -ffast-math -include -O3 -fcommon -march=native

SQLite

This is a simple benchmark of SQLite. At present this test profile just measures the time to perform a pre-defined number of insertions on an indexed database with a variable number of concurrent repetitions -- up to the maximum number of CPU threads available. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterSQLite 3.41.2Threads / Copies: 2BcachefsBtrfsEXT4F2FSXFS612182430SE +/- 0.14, N = 3SE +/- 0.17, N = 3SE +/- 0.03, N = 3SE +/- 0.13, N = 3SE +/- 0.01, N = 318.9627.0110.5011.0010.201. (CC) gcc options: -O2 -lz -lm

OpenBenchmarking.orgSeconds, Fewer Is BetterSQLite 3.41.2Threads / Copies: 1BcachefsBtrfsEXT4F2FSXFS48121620SE +/- 0.018, N = 3SE +/- 0.039, N = 3SE +/- 0.002, N = 3SE +/- 0.002, N = 3SE +/- 0.004, N = 312.82817.2357.6189.3317.7041. (CC) gcc options: -O2 -lz -lm

OpenBenchmarking.orgSeconds, Fewer Is BetterSQLite 3.41.2Threads / Copies: 4BcachefsBtrfsEXT4F2FSXFS612182430SE +/- 0.04, N = 3SE +/- 0.29, N = 3SE +/- 0.01, N = 3SE +/- 0.13, N = 10SE +/- 0.05, N = 321.9327.5713.2816.9512.621. (CC) gcc options: -O2 -lz -lm

Flexible IO Tester

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.35Type: Random Read - Engine: IO_uring - Buffered: No - Direct: Yes - Block Size: 4KB - Job Count: 8 - Disk Target: Default Test DirectoryBcachefsBtrfsEXT4F2FSXFS200K400K600K800K1000KSE +/- 727.59, N = 6SE +/- 2050.88, N = 3SE +/- 11797.21, N = 15SE +/- 12325.85, N = 15SE +/- 13582.99, N = 1475778809513106816710660321059922MIN: 806653.2 / MAX: 813489.18MIN: 1039508.21 / MAX: 1230002.04MIN: 1026726.21 / MAX: 1230497.8MIN: 1022842.76 / MAX: 1231799.821. (CC) gcc options: -rdynamic -ll -lnuma -lz -lm -laio -lpthread -ldl -std=gnu99 -ffast-math -include -O3 -fcommon -march=native

SQLite

This is a simple benchmark of SQLite. At present this test profile just measures the time to perform a pre-defined number of insertions on an indexed database with a variable number of concurrent repetitions -- up to the maximum number of CPU threads available. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterSQLite 3.41.2Threads / Copies: 8BcachefsBtrfsEXT4F2FSXFS714212835SE +/- 0.15, N = 3SE +/- 0.40, N = 3SE +/- 0.03, N = 3SE +/- 0.06, N = 3SE +/- 0.05, N = 324.2930.0118.7318.0124.111. (CC) gcc options: -O2 -lz -lm

Flexible IO Tester

OpenBenchmarking.orgMiB/s, More Is BetterFlexible IO Tester 3.35Type: Sequential Read - Engine: IO_uring - Buffered: No - Direct: Yes - Block Size: 2MB - Job Count: 8 - Disk Target: Default Test DirectoryBcachefsBtrfsEXT4F2FSXFS13002600390052006500SE +/- 50.05, N = 15SE +/- 41.29, N = 15SE +/- 64.89, N = 5SE +/- 50.62, N = 9SE +/- 67.10, N = 54901.286065.986252.596296.226237.25MIN: 4710.38 / MAX: 5357.72MIN: 5658.18 / MAX: 6484.12MIN: 6132.64 / MAX: 6500.51MIN: 6119.52 / MAX: 6673.78MIN: 6120.08 / MAX: 6500.261. (CC) gcc options: -rdynamic -ll -lnuma -lz -lm -laio -lpthread -ldl -std=gnu99 -ffast-math -include -O3 -fcommon -march=native

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.35Type: Sequential Read - Engine: IO_uring - Buffered: No - Direct: Yes - Block Size: 2MB - Job Count: 8 - Disk Target: Default Test DirectoryBcachefsBtrfsEXT4F2FSXFS7001400210028003500SE +/- 25.03, N = 15SE +/- 20.64, N = 15SE +/- 32.45, N = 5SE +/- 25.31, N = 9SE +/- 33.57, N = 524513033312631483118MIN: 2355.14 / MAX: 2678.79MIN: 2829.03 / MAX: 3241.97MIN: 3066.14 / MAX: 3250.13MIN: 3059.68 / MAX: 3336.7MIN: 3059.87 / MAX: 3250.071. (CC) gcc options: -rdynamic -ll -lnuma -lz -lm -laio -lpthread -ldl -std=gnu99 -ffast-math -include -O3 -fcommon -march=native

ClickHouse

ClickHouse is an open-source, high performance OLAP data management system. This test profile uses ClickHouse's standard benchmark recommendations per https://clickhouse.com/docs/en/operations/performance-test/ / https://github.com/ClickHouse/ClickBench/tree/main/clickhouse with the 100 million rows web analytics dataset. The reported value is the query processing time using the geometric mean of all separate queries performed as an aggregate. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgQueries Per Minute, Geo Mean, More Is BetterClickHouse 22.12.3.5100M Rows Hits Dataset, First Run / Cold CacheBcachefsBtrfsEXT4F2FSXFS50100150200250SE +/- 1.03, N = 3SE +/- 2.06, N = 8SE +/- 1.66, N = 3SE +/- 2.86, N = 4SE +/- 2.27, N = 7212.92236.45239.03237.60240.47MIN: 12.92 / MAX: 6666.67MIN: 11.55 / MAX: 8571.43MIN: 12.72 / MAX: 7500MIN: 12.66 / MAX: 8571.43MIN: 14.37 / MAX: 8571.43

OpenBenchmarking.orgQueries Per Minute, Geo Mean, More Is BetterClickHouse 22.12.3.5100M Rows Hits Dataset, Third RunBcachefsBtrfsEXT4F2FSXFS60120180240300SE +/- 3.01, N = 3SE +/- 1.93, N = 8SE +/- 1.37, N = 3SE +/- 1.79, N = 4SE +/- 1.06, N = 7246.20270.80266.49268.57273.77MIN: 14.29 / MAX: 10000MIN: 14.52 / MAX: 12000MIN: 14.91 / MAX: 7500MIN: 14.87 / MAX: 10000MIN: 14.93 / MAX: 10000

OpenBenchmarking.orgQueries Per Minute, Geo Mean, More Is BetterClickHouse 22.12.3.5100M Rows Hits Dataset, Second RunBcachefsBtrfsEXT4F2FSXFS60120180240300SE +/- 1.20, N = 3SE +/- 1.97, N = 8SE +/- 2.43, N = 3SE +/- 1.40, N = 4SE +/- 0.57, N = 7247.05266.61267.34264.44270.38MIN: 16.58 / MAX: 8571.43MIN: 14.4 / MAX: 12000MIN: 14.9 / MAX: 10000MIN: 16.82 / MAX: 10000MIN: 15.02 / MAX: 10000

nginx

This is a benchmark of the lightweight Nginx HTTP(S) web-server. This Nginx web server benchmark test profile makes use of the wrk program for facilitating the HTTP requests over a fixed period time with a configurable number of concurrent clients/connections. HTTPS with a self-signed OpenSSL certificate is used by this test for local benchmarking. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgRequests Per Second, More Is Betternginx 1.23.2Connections: 500BcachefsBtrfsEXT4F2FSXFS40K80K120K160K200KSE +/- 265.35, N = 3SE +/- 53.17, N = 3SE +/- 175.02, N = 3SE +/- 105.74, N = 3SE +/- 287.75, N = 3173189.61164208.09176467.11174634.94177367.241. (CC) gcc options: -lluajit-5.1 -lm -lssl -lcrypto -lpthread -ldl -std=c99 -O2

DuckDB

DuckDB is an in-progress SQL OLAP database management system optimized for analytics and features a vectorized and parallel engine. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgSeconds, Fewer Is BetterDuckDB 0.9.1Benchmark: TPC-H ParquetBcachefsBtrfsEXT4F2FSXFS20406080100SE +/- 0.58, N = 3SE +/- 0.37, N = 3SE +/- 0.09, N = 3SE +/- 0.57, N = 3SE +/- 0.19, N = 397.4995.9094.6098.7993.111. (CXX) g++ options: -O3 -rdynamic -lssl -lcrypto -ldl

Apache IoTDB

Apache IotDB is a time series database and this benchmark is facilitated using the IoT Benchmaark [https://github.com/thulab/iot-benchmark/]. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgAverage Latency, Fewer Is BetterApache IoTDB 1.2Device Count: 800 - Batch Size Per Write: 100 - Sensor Count: 500 - Client Number: 400BcachefsBtrfsEXT4F2FSXFS60120180240300SE +/- 5.31, N = 3SE +/- 3.04, N = 3SE +/- 1.71, N = 12SE +/- 1.86, N = 3SE +/- 6.17, N = 3268.00264.66270.70255.63258.41MAX: 37923.24MAX: 27208.91MAX: 32210.43MAX: 26895.84MAX: 27048.64

OpenBenchmarking.orgpoint/sec, More Is BetterApache IoTDB 1.2Device Count: 800 - Batch Size Per Write: 100 - Sensor Count: 500 - Client Number: 400BcachefsBtrfsEXT4F2FSXFS15M30M45M60M75MSE +/- 649405.71, N = 3SE +/- 563599.21, N = 3SE +/- 480213.11, N = 12SE +/- 155319.69, N = 3SE +/- 831053.70, N = 36632784268886304668288517021062570190661

Flexible IO Tester

OpenBenchmarking.orgMiB/s, More Is BetterFlexible IO Tester 3.35Type: Random Write - Engine: IO_uring - Buffered: No - Direct: Yes - Block Size: 4KB - Job Count: 8 - Disk Target: Default Test DirectoryXFS12002400360048006000SE +/- 2.80, N = 35499.78MIN: 5494.81 / MAX: 5504.511. (CC) gcc options: -rdynamic -ll -lnuma -lz -lm -laio -lpthread -ldl -std=gnu99 -ffast-math -include -O3 -fcommon -march=native

PostgreSQL

This is a benchmark of PostgreSQL using the integrated pgbench for facilitating the database benchmarks. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgms, Fewer Is BetterPostgreSQL 16Scaling Factor: 1000 - Clients: 800 - Mode: Read Write - Average LatencyBcachefsBtrfsEXT4F2FSXFS20406080100SE +/- 4.62, N = 12SE +/- 0.19, N = 12SE +/- 1.44, N = 9SE +/- 0.38, N = 3SE +/- 0.16, N = 3108.2025.3741.1428.7318.291. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -lpgcommon -lpgport -lpq -lm

OpenBenchmarking.orgTPS, More Is BetterPostgreSQL 16Scaling Factor: 1000 - Clients: 800 - Mode: Read WriteBcachefsBtrfsEXT4F2FSXFS9K18K27K36K45KSE +/- 361.54, N = 12SE +/- 230.46, N = 12SE +/- 666.75, N = 9SE +/- 372.92, N = 3SE +/- 395.03, N = 37562315511963127856437491. (CC) gcc options: -fno-strict-aliasing -fwrapv -O2 -lpgcommon -lpgport -lpq -lm

FS-Mark

FS_Mark is designed to test a system's file-system performance. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 4000 Files, 32 Sub Dirs, 1MB SizeBcachefsBtrfsEXT4F2FSXFS150300450600750SE +/- 2.75, N = 3SE +/- 5.44, N = 12SE +/- 83.39, N = 12SE +/- 70.16, N = 14SE +/- 0.57, N = 3201.7677.8447.3641.1235.2

OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 5000 Files, 1MB Size, 4 ThreadsBcachefsBtrfsEXT4F2FSXFS5001000150020002500SE +/- 37.17, N = 9SE +/- 28.10, N = 3SE +/- 259.08, N = 9SE +/- 2.51, N = 3SE +/- 329.80, N = 9651.61993.6981.62258.21513.4

OpenBenchmarking.orgFiles/s, More Is BetterFS-Mark 3.3Test: 1000 Files, 1MB SizeBcachefsBtrfsEXT4F2FSXFS2004006008001000SE +/- 1.04, N = 3SE +/- 18.54, N = 15SE +/- 6.83, N = 3SE +/- 8.77, N = 3SE +/- 2.38, N = 3199.3650.0748.9790.31151.8

Flexible IO Tester

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.35Type: Sequential Write - Engine: IO_uring - Buffered: No - Direct: Yes - Block Size: 2MB - Job Count: 8 - Disk Target: Default Test DirectoryBcachefsBtrfsEXT4F2FSXFS6001200180024003000SE +/- 16.76, N = 15SE +/- 40.17, N = 15SE +/- 23.64, N = 3SE +/- 24.62, N = 7SE +/- 30.72, N = 56322391279127762750MIN: 565.92 / MAX: 783.49MIN: 2209.68 / MAX: 2770.82MIN: 2749.5 / MAX: 2831.35MIN: 2733.64 / MAX: 2916.99MIN: 2705.07 / MAX: 2868.61. (CC) gcc options: -rdynamic -ll -lnuma -lz -lm -laio -lpthread -ldl -std=gnu99 -ffast-math -include -O3 -fcommon -march=native

OpenBenchmarking.orgMiB/s, More Is BetterFlexible IO Tester 3.35Type: Sequential Write - Engine: IO_uring - Buffered: No - Direct: Yes - Block Size: 2MB - Job Count: 8 - Disk Target: Default Test DirectoryBcachefsBtrfsEXT4F2FSXFS12002400360048006000SE +/- 33.52, N = 15SE +/- 80.34, N = 15SE +/- 47.29, N = 3SE +/- 49.27, N = 7SE +/- 61.45, N = 51263.514781.965582.585552.935499.91MIN: 1131.89 / MAX: 1567MIN: 4419.75 / MAX: 5541.81MIN: 5499.3 / MAX: 5663.06MIN: 5467.43 / MAX: 5834.39MIN: 5410.39 / MAX: 5737.431. (CC) gcc options: -rdynamic -ll -lnuma -lz -lm -laio -lpthread -ldl -std=gnu99 -ffast-math -include -O3 -fcommon -march=native

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.35Type: Sequential Write - Engine: IO_uring - Buffered: No - Direct: Yes - Block Size: 2MB - Job Count: 1 - Disk Target: Default Test DirectoryBcachefsBtrfsEXT4F2FSXFS6001200180024003000SE +/- 50.33, N = 15SE +/- 25.26, N = 5SE +/- 16.62, N = 3SE +/- 30.62, N = 4SE +/- 16.02, N = 312312364278028082774MIN: 886.2 / MAX: 1501.38MIN: 2265.05 / MAX: 2398.5MIN: 2747.78 / MAX: 2803.68MIN: 2750.85 / MAX: 2894.73MIN: 2741.78 / MAX: 2791.751. (CC) gcc options: -rdynamic -ll -lnuma -lz -lm -laio -lpthread -ldl -std=gnu99 -ffast-math -include -O3 -fcommon -march=native

OpenBenchmarking.orgMiB/s, More Is BetterFlexible IO Tester 3.35Type: Sequential Write - Engine: IO_uring - Buffered: No - Direct: Yes - Block Size: 2MB - Job Count: 1 - Disk Target: Default Test DirectoryBcachefsBtrfsEXT4F2FSXFS12002400360048006000SE +/- 100.65, N = 15SE +/- 50.53, N = 5SE +/- 33.23, N = 3SE +/- 61.25, N = 4SE +/- 32.05, N = 32461.634728.955559.455615.775547.53MIN: 1772.46 / MAX: 3002.83MIN: 4530.31 / MAX: 4797.4MIN: 5495.61 / MAX: 5607.4MIN: 5501.73 / MAX: 5789.5MIN: 5483.6 / MAX: 5583.571. (CC) gcc options: -rdynamic -ll -lnuma -lz -lm -laio -lpthread -ldl -std=gnu99 -ffast-math -include -O3 -fcommon -march=native

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.35Type: Sequential Read - Engine: IO_uring - Buffered: No - Direct: Yes - Block Size: 2MB - Job Count: 1 - Disk Target: Default Test DirectoryBcachefsBtrfsEXT4F2FSXFS7001400210028003500SE +/- 70.31, N = 14SE +/- 35.44, N = 13SE +/- 16.74, N = 3SE +/- 33.81, N = 12SE +/- 35.16, N = 324273092305631453083MIN: 2269.02 / MAX: 3310.87MIN: 3020.94 / MAX: 3510.19MIN: 3025.76 / MAX: 3083.55MIN: 3055.12 / MAX: 3509.06MIN: 3021.83 / MAX: 3143.641. (CC) gcc options: -rdynamic -ll -lnuma -lz -lm -laio -lpthread -ldl -std=gnu99 -ffast-math -include -O3 -fcommon -march=native

OpenBenchmarking.orgMiB/s, More Is BetterFlexible IO Tester 3.35Type: Sequential Read - Engine: IO_uring - Buffered: No - Direct: Yes - Block Size: 2MB - Job Count: 1 - Disk Target: Default Test DirectoryBcachefsBtrfsEXT4F2FSXFS13002600390052006500SE +/- 140.63, N = 14SE +/- 70.88, N = 13SE +/- 33.48, N = 3SE +/- 67.61, N = 12SE +/- 70.33, N = 34853.746184.316112.066290.376165.18MIN: 4538.06 / MAX: 6621.81MIN: 6041.9 / MAX: 7020.39MIN: 6051.52 / MAX: 6167.11MIN: 6110.26 / MAX: 7018.12MIN: 6043.66 / MAX: 6287.31. (CC) gcc options: -rdynamic -ll -lnuma -lz -lm -laio -lpthread -ldl -std=gnu99 -ffast-math -include -O3 -fcommon -march=native

OpenBenchmarking.orgIOPS, More Is BetterFlexible IO Tester 3.35Type: Random Write - Engine: IO_uring - Buffered: No - Direct: Yes - Block Size: 4KB - Job Count: 1 - Disk Target: Default Test DirectoryBcachefsBtrfsEXT4F2FSXFS60K120K180K240K300KSE +/- 652.12, N = 15SE +/- 858.39, N = 15SE +/- 660.93, N = 3SE +/- 244.81, N = 3SE +/- 717.19, N = 33735077760288027268557299163MIN: 32943.45 / MAX: 40962.48MIN: 74100.36 / MAX: 85019.83MIN: 286852.76 / MAX: 289139.8MIN: 268068 / MAX: 268820.75MIN: 297780.74 / MAX: 300185.541. (CC) gcc options: -rdynamic -ll -lnuma -lz -lm -laio -lpthread -ldl -std=gnu99 -ffast-math -include -O3 -fcommon -march=native

Application Start-up Time

This benchmark measures the start-up time of applications when there is some I/O in the background. Learn more via the OpenBenchmarking.org test page.

OpenBenchmarking.orgsec, Fewer Is BetterApplication Start-up Time 3.4.0Background I/O Mix: Sequential Reads + Writes - Application To Start: GNOME Terminal - Disk Target: Default Test DirectoryBcachefsBtrfsEXT4F2FSXFS0.68031.36062.04092.72123.4015SE +/- 0.008395, N = 10SE +/- 0.047895, N = 12SE +/- 0.008880, N = 3SE +/- 0.012354, N = 9SE +/- 0.005964, N = 30.7273333.0234700.6437780.3367780.661778

OpenBenchmarking.orgsec, Fewer Is BetterApplication Start-up Time 3.4.0Background I/O Mix: Only Sequential Reads - Application To Start: GNOME Terminal - Disk Target: Default Test DirectoryBcachefsBtrfsEXT4F2FSXFS0.77881.55762.33643.11523.894SE +/- 0.002775, N = 3SE +/- 0.024813, N = 3SE +/- 0.003448, N = 12SE +/- 0.008732, N = 12SE +/- 0.004053, N = 120.5190003.4614400.4870560.3558330.518833

OpenBenchmarking.orgsec, Fewer Is BetterApplication Start-up Time 3.4.0Background I/O Mix: Sequential Reads + Writes - Application To Start: xterm - Disk Target: Default Test DirectoryBcachefsBtrfsEXT4F2FSXFS0.22530.45060.67590.90121.1265SE +/- 0.002923, N = 12SE +/- 0.009624, N = 3SE +/- 0.002191, N = 12SE +/- 0.003985, N = 12SE +/- 0.004156, N = 120.2426391.0014400.2058610.1602780.213583

OpenBenchmarking.orgsec, Fewer Is BetterApplication Start-up Time 3.4.0Background I/O Mix: Only Sequential Reads - Application To Start: xterm - Disk Target: Default Test DirectoryBcachefsBtrfsEXT4F2FSXFS0.25370.50740.76111.01481.2685SE +/- 0.001495, N = 3SE +/- 0.014067, N = 12SE +/- 0.004034, N = 9SE +/- 0.002632, N = 12SE +/- 0.001577, N = 70.1817781.1276100.1637410.1705000.181524

36 Results Shown

Flexible IO Tester
Application Start-up Time:
  Only Seq Reads - LibreOffice Writer - Default Test Directory
  Seq Reads + Writes - LibreOffice Writer - Default Test Directory
Flexible IO Tester:
  Rand Read - IO_uring - No - Yes - 4KB - 1 - Default Test Directory
  Rand Write - IO_uring - No - Yes - 4KB - 8 - Default Test Directory
SQLite:
  2
  1
  4
Flexible IO Tester
SQLite
Flexible IO Tester:
  Seq Read - IO_uring - No - Yes - 2MB - 8 - Default Test Directory:
    MiB/s
    IOPS
ClickHouse:
  100M Rows Hits Dataset, First Run / Cold Cache
  100M Rows Hits Dataset, Third Run
  100M Rows Hits Dataset, Second Run
nginx
DuckDB
Apache IoTDB:
  800 - 100 - 500 - 400:
    Average Latency
    point/sec
Flexible IO Tester
PostgreSQL:
  1000 - 800 - Read Write - Average Latency
  1000 - 800 - Read Write
FS-Mark:
  4000 Files, 32 Sub Dirs, 1MB Size
  5000 Files, 1MB Size, 4 Threads
  1000 Files, 1MB Size
Flexible IO Tester:
  Seq Write - IO_uring - No - Yes - 2MB - 8 - Default Test Directory:
    IOPS
    MiB/s
  Seq Write - IO_uring - No - Yes - 2MB - 1 - Default Test Directory:
    IOPS
    MiB/s
  Seq Read - IO_uring - No - Yes - 2MB - 1 - Default Test Directory:
    IOPS
    MiB/s
  Rand Write - IO_uring - No - Yes - 4KB - 1 - Default Test Directory:
    IOPS
Application Start-up Time:
  Seq Reads + Writes - GNOME Terminal - Default Test Directory
  Only Seq Reads - GNOME Terminal - Default Test Directory
  Seq Reads + Writes - xterm - Default Test Directory
  Only Seq Reads - xterm - Default Test Directory