Microsoft の exFAT は、Sony のおかげで Linux で再び大幅なパフォーマンス向上を実現
さかのぼる 2012 年に、Microsoft は 32 ビット FAT32 の後継として 64 ビット exFAT (Extended File Allocation Table) ファイル システムをリリースしました。7 年後の 2019 年に、レドモンドの巨人は、Linux での exFAT フォーマットのサポートを発表したときに大きな啓示を行いました。3 年前に早送りすると、Sony の最新の取り組みのおかげで、次期 Linux 6.2 で exFAT のパフォーマンスが大幅に向上するようです。日本のテクノロジー大手のエンジニアである Yuezhang Mo は、ディレクトリ エントリの繰り返しのトラバーサルを減らすと、exFAT のパフォーマンスが大幅に向上することを発見しました。また、ローエンドの CPU の場合は特に顕著です。
Mo は彼のパッチで次のように説明しています。
すべてのディレクトリ エントリを走査した後、十分な数の空のディレクトリ エントリがあるかどうかに関係なく、空のディレクトリ エントリをヒントします。
このコミットの後、次のように空のディレクトリ エントリをヒントします。
1. 十分な場合、削除されたディレクトリ エントリをヒントします。
2.クラスターチェーンの最後にある削除済みおよび未使用のディレクトリエントリをヒントします(このコミットで追加)。
3. 空のディレクトリ エントリがない場合は、新しいクラスタの空のディレクトリ エントリをヒントにします (このコミットで追加)。
これにより、ディレクトリ エントリの繰り返しのトラバーサルが回避され、CPU 使用率が削減され、ファイルとディレクトリの作成のパフォーマンスが向上します (特にパフォーマンスの低い CPU で)。
この結論に到達するために、5000 個のファイルを使用してテストが実行されました。注目すべき興味深い点は、改善がファイル サイズの数に比例することです。見られた最大の利益は、ほぼ 58% でした。テストは、クラス 4 SD カードを使用して SABRE i.MX6 Lite 開発ボードで実施されました。
前 後 改善 1~1000
25.360秒 22.168秒 14.40% 1001~2000年
38.242秒 28.72ss [原文ママ] 33.15% 2001~3000年
49.134秒 35.037秒 40.23% 3001~4000
62.042秒 41.624秒 49.05% 4001~5000
73.629秒 46.772秒 57.42%
興味深いことに、ソニーがパフォーマンスを大幅に向上させた exFAT のパッチをプッシュしたのはこれが初めてではありません。4 月に、Yuezhang Mo 氏は、DirSync を有効にすると、特定のインスタンスで最大 85.4% の改善があったことを指摘しました。
経由:フォロニクス
コメントを残す