BTRFSパフォーマンス

BTRFSパフォーマンス

私はいくつかの問題を解決することを決め、btrfsいくつかの奇妙なパフォーマンス異常を発見しました。私が行ったテストは、2つの外付けハードドライブを使用することでした。 1つはext4もう1つは。btrfs

ext4掲載結果は次のとおりです。

$ sudo dd if=/dev/zero of=/media/Backup/out.img count=1024 bs=1024k
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 24.1959 s, 44.4 MB/s
$ sudo dd if=/dev/zero of=/media/Backup/out.img count=1024 bs=1024k
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 24.1619 s, 44.4 MB/s

私にとっては44.4MB / sが一般的ですが、今はbtrfs(注:ファイルを削除した直後は常に3.1GB / sの高いIOを得るようです):

$ sudo dd if=/dev/zero of=/tmp/test/out.img count=1024 bs=1024k
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 0.347933 s, 3.1 GB/s
$ sudo dd if=/dev/zero of=/tmp/test/out.img count=1024 bs=1024k
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 1.1732 s, 915 MB/s
$ sudo dd if=/dev/zero of=/tmp/test/out.img count=1024 bs=1024k
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 1.21539 s, 883 MB/s
$ sudo dd if=/dev/zero of=/tmp/test/out.img count=1024 bs=1024k
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 1.25093 s, 858 MB/s

私の質問はここで何が起こっているのでしょうかbtrfs?パフォーマンスIOがなぜそんなに高いのですか?一回だけ実行したところ、syncすぐに完了しました。

私は最新の安定したカーネルを実行しています。

ベストアンサー1

Brtfsは従来のファイルシステムではddなく、ほとんどの作業がハードドライブ上で直接実行されるのではなく、メモリ内で実行される書き込み時のコピーおよびトランザクションファイルシステムです。

したがって、削除コマンドを実行してファイルを再生成すると、メモリ内の内容を再利用するだけです。 0だけで初期化されたファイルを生成することを忘れないでください。 BRTFSは、タイムアウト後または十分なページに達した場合にのみディスクに書き込みます。

ぜひご覧ください。このファイル(PDF).問題の詳細な説明と可能な説明を提供します。

おすすめ記事