現在SSDの読み取り/書き込みスループットをテストしようとしています。このSSDはNVMeプロトコルを介して読み取り/書き込みを実行します。現在、2つのアプローチが見えて混乱しています。
1つ目は、一部のデータブロックをNVMeデバイスファイルに直接書き込み、ドライバがこれを完了するのにかかる時間を記録することです。
2つ目は、SSDの特定のパーティションにファイルシステムをマウントし、同じことを行うことです。つまり、パーティションにマウントされたファイルシステムにファイルを書き込み、時間を記録します。
後ろから何が起こっているのでしょうか?どちらがより現実的なスループット結果を提供しますか?
答え1
ブロックデバイスへの読み書きはキャッシュされません。ファイルシステムにアクセスするにはページキャッシュが必要で、これはSSDよりはるかに高速です。したがって、測定方法についてもっと考える必要があります。
システムを使用する場合は、ファイルシステムを使用し、ページキャッシュを使用します。したがって、これはおそらくより関連性の高い結果です。ファイルシステムを使用するとパフォーマンスの差が少ないようです。