Linux
Bcachefs 1.38.6、「実験的」卒業後の実力をベンチマークで確認する
「実験的」の看板を外したBcachefs。その最初のリリースとなる1.38.6が、データベースやコンパイルといった実ワークロードでどれだけ前に進んだのか。独立したベンチマークが公開された。 200本のパッチが積み上げたもの 開発者のケント・オーバーストリート(Kent Overstreet)氏がBcachefs 1.38.6を「パフォーマンスリリース」と呼んだ。Bツリーのイテレータからトランザクションコミット、ジャーナル、ファイルシステムレベルのコードまで、200本以上のパッチを投入している。 変更の中身は地味だが効いている。ジャーナルのフラッシュパスは完全にロックフリーになった。Bツリーのシャーディングも手が入り、新規inodeの割り当てをCPUではなくPIDに基づかせ、ロック競合時にはスレッドをデータのシャードに対応するCPUへ移動させる。トランザクションコミットのホットパスが4KBのマシンコードにまで縮んだ。 ここで一つ、開発者が掘り当てた厄介な原因がある。GCCが static_branch_unlikely() を適切に処理できていなかった。Linuxカーネルにはラ