Btrfs/ZFS/bcachefs、定番ベンチが飛ばすワークロードで測る

Btrfs/ZFS/bcachefs under workloads classic benchmarks skip

ext4、XFS、ZFS、btrfs、bcachefsを単体・RAID・暗号化など多様な構成で比較するベンチマーク。スナップショット作成や削除、断片化、劣化時のIOPS、再構築時間、ほぼ満杯時の書き込みなど、従来のベンチマークが省略しがちな実運用ワークロードを網羅。最新実行は2026年9月18日、カーネル7.0.0-1012-azureで593回分を記録。結果は共有VM上のloopデバイスによるCI実行のため、絶対値ではなく形状と比率で見るよう注意を促している。

CI runs use loop devices on shared ephemeral VMs (one VM per filesystem): compare shapes and ratios, not absolute MB/s.
  1. fenio

    このベンチマークの作者です。いくつかのコメントに目を通したので、ここで取り上げてみます。

    GH runnerベースのベンチマークが、noisy neighboursなどのせいで完璧には程遠いことは重々承知しています。なので、各テストではまずいわゆるキャリブレーションを実行して……完全に信頼できないVMを排除しています。

    これで問題が完全に解決できないことも十分承知しています。制限はできても、修正はできません。

    ただ、現時点で593回の実行が記録されているので、平均値はそれなりに意味があるはずです。

    とはいえ、本物のハードウェアでこのベンチマークを実行しようと必死に取り組んでいます。いくつか成功もしています ;)

    数ヶ月前、Kent OverstreetからHetznerのマシンを借りて、マシンが壊れる前に3回の実行を完了できました……

    結果: https://bartosz.fenski.pl/modern-fs-benchmark/real-hw/

    現在はさらに興味深い、大量のディスクを積んだマシンを手に入れて、新しいベンチマークセットを実行中ですが、まだ本当に初期段階です。

    https://bartosz.fenski.pl/modern-fs-benchmark/sas-hdd/

    2回目の実行が進行中……本物のハードウェアでの1回の実行はGH runnerよりずっと時間がかかるので、遅いです。

    しかしこの新しいハードウェアはディスクも非常に多いので、より複雑な階層型キャッシュトポロジーも試す計画です。それに取り組んでいます。

    他に質問があれば喜んで答えます。このベンチマークのあらゆる部分のソースは自由に入手可能で、100%正しいとは言っていません。改善にはオープンです。

  2. gdgghhhhh

    bcachefsが残念ながらメインラインカーネルから外れた理由を知りたい人は、ここから読み始めてください:

    https://lwn.net/Articles/1027289/

  3. Farmadupe

    > CI実行は共有のエフェメラルVM上のloopデバイスを使用(ファイルシステムごとに1VM):絶対的なMB/sではなく、形状と比率を比較すること。各ジョブはホストキャリブレーションのアンカーを記録する — 表を参照。

    このようなテストでベアメタルを使っていないなら、結果は単純に全く比較できない可能性が高いと思います。別のテナントも同じディスクを使っていたらどうするのですか?

  4. bhaney

    bcachefsの素晴らしい結果を見ると、Kentと他のカーネル開発者たちがbcachefsをツリー内に残すことで理解し合えなかったのが余計に悲しくなります。自分のストレージアレイにぜひ使いたいのですが、モダンな機能を持つツリー内ファイルシステムとしてはbtrfsしか選択肢がなく、まだそれに縛られています。

  5. sippingabonedry

    つまり、本質的にLinuxカーネルから避けられて永久に二流市民扱いのファイルシステムが2つ、そしてRed Hatから削除され信頼性の歴史に疑問があるものが1つ。さて、どれを選べばいいのやら?

    私は別のOSでZFSを使います。

  6. irusensei

    ストレージコストが高騰している今、BCacheFSは最高のLinuxファイルシステムです。

    bcachefsでは異なるサイズや種類のデバイスを混在させられます。フォアグラウンドとバックグラウンドのデバイスを用意してパフォーマンスを調整でき、フォアグラウンドとバックグラウンドのトランザクションで異なる圧縮設定も可能です。

    bcachefsでは個々のファイルやディレクトリにreplicas=Nを設定できます。例えば再ダウンロードや再ビルドができるファイルなどです。同様に、重要なファイルにはより多くのコピー数を設定できます。

  7. loeg

    md-raid10はlvm-raid10と比べて何がそんなに劣っているのですか?「I/O」と「応答性」の観点で。リンク先のページからも https://github.com/fenio/modern-fs-benchmark からも、私にはよくわかりません。原理的には似ているはずでは?

  8. blop

    これらのファイルシステムのレビューには社会的側面も含めるべきだと思います……

    古くて退屈なものに取って代わる、有望で刺激的なFSは数多く存在しましたし、今もあります。しかしストレージとなると、技術的な問題を避けるだけでなく、メンテナーのドラマも避けたいものです……

この日のほかの記事

2026-09-19