SSD以外での市長の問題について誰も話しません。それは断片化です。
各64KiBブロックは圧縮なしで書き込まれますが、圧縮可能であるため、少なくとも<= 60KiBである場合、64KiB未満で書き込み、ビットネストブロックは、前のブロックがなかったかのように移動します圧縮するため、多くのギャップが発生します。
任意のWindowsシステムのvirtuslマシンのマルチギガバイトファイルでテストします(50%に削減される傾向がありますが、10000を超える巨大なフラグメントがあります)。
そして、SSDについては言われていないことがあるのですが、一体どうやって書くのですか?つまり、圧縮されていない状態で書き込み、圧縮されたバージョン(64KiBメガブロックごと)で上書きすると、SSDの寿命が大幅に短縮されます。圧縮形式で直接書き込む場合、SSDライブは長くなるか短くなる可能性があります... 64KiBを一度に書き込む場合は長く、64KiBを4KiBで書き込む場合は長くなるため、このような64KiB(圧縮形式)は、64/4 = 16倍です。
パフォーマンスの低下は、圧縮/圧縮解除に必要なCPU時間が、4KiBブロックを書き込む必要がない場合に得られる時間よりも大きいために発生します...したがって、非常に高速なCPUと非常に遅いディスク圧縮を使用すると、書き込みと読み取りにかかる時間が短縮されますが、SSDの場合非常に高速でCPUが非常に遅いので、書き込みがはるかに遅くなります。
私がその時点で意味する高速または低速のCPUについて話すとき、CPUは「数学」またはその他のプロセスによって使用されている可能性があるため、紙のCPU仕様ではなく、常に無料のCPUについて考えます。ディスク/ SSDについても同様です。複数のプロセスで使用されている。
7ZipがLZMA2を使用して別のディスクから巨大なファイルを書き込んでいる場合、CPUを大量に使用するため、同時にNTFS圧縮ファイルをコピーしている場合、CPUの空き容量がないため、NTFSがない場合よりも遅くなります7ZipがCPUの使用を終了するとすぐに、そのようなCPUはNTFS圧縮をより高速に実行できるようになり、その時点でNTFS圧縮はより高速に処理を実行できます。
個人的にはNTFS圧縮を使用することはありません。PISMOファイルマウントPFOコンテナーを好んで使用します(圧縮あり。また、オンザフライで、アプリに対して透過的に暗号化できます)。これにより、読み取り中に圧縮率が大幅に向上し、CPUへの影響が少なくなります。オンザフライで書き込み、使用前に解凍する必要はありません。マウントして読み取りおよび書き込みモードで使用するだけです。
PISMOはディスクに書き込む前にRAMで圧縮を行うので、SSDをより長く持続させることができます。NTFS圧縮のテストでは、最初に非圧縮でデータをディスクに2回送信し、その後圧縮できる場合は圧縮形式で上書きされます。 。
SSDのNTFS圧縮書き込み速度が、ファイルのある非圧縮ファイルの約1/2で、サイズの1/2近くまたはそれ以下の圧縮サイズで圧縮するよりもなぜですか?AMD Threadripper 2950(32コアおよび64スレッド)では、128GiBのRAM(高速CPU、非常に高速なCPU)を使用しているため、使用率が1%未満なので、SSDの最大セキュリティ速度よりも高速に圧縮できるCPUがたくさんあります。 64KiBブロックが圧縮されていないディスクに送信された後にNTFS圧縮が開始し、圧縮バージョンで上書きされます...ホストのLinuxとゲストのWindowsを実行している仮想マシンで実行すると、Linuxキャッシュから、このようなクラスターが2回書き込まれることが通知されます、速度ははるかに高速です(LinuxはWindowsゲストから送信された非圧縮NTFS書き込みをキャッシュします。圧縮データで上書きされた後、Linuxは非圧縮データをディスクに送信しないため、
私の推奨は、ホストがLinuxである場合は仮想マシンのゲストがWindowsを実行し、CPUが十分に高速でない場合にCPUを使用しない限り、NTFS圧縮を使用しないことです。
最新のSSDには巨大な内部RAMキャッシュがあるため、NTFS圧縮によって発生する書き込みと上書きはSSD内部キャッシュシステムによって軽減できます。
私のテストは、SSD内のキャッシュ用の内部RAMのない「きれいな」SSDで行われました。RAMキャッシュのあるものでそれらを繰り返すと、書き込み速度は速くなりますが、思ったほどではありません。
独自のテストを行い、巨大なファイルサイズを使用します(キャッシュの非表示の結果を回避するために、インストールされているtamよりも大きい)。
ちなみに、一部の人はNTFS圧縮について知らないことがあります... 4KiB以下のファイルは、少なくとも4KiBのサイズを縮小する方法がないため、決してNTFS圧縮を取得できません。
NTFS圧縮は64KiBのブロックを取り、それらを圧縮します。1つのクラスター(4KiB)を削減できる場合、圧縮されて書き込まれます。64KiBは4KiB(連続)の16ブロックです。
圧縮が終了したときの最終的な結果が8KiBのファイルが4KiBを超える場合、クラスターは保存されないため、非圧縮で書き込まれます...など...圧縮は少なくとも4KiBを獲得する必要があります。
ああ、そしてNTFS圧縮の場合、NTFSはクラスターサイズが4KiBでなければなりません。
テストしてみてください:SSDのNTFSで128KiBクラスターを使用すると、書き込みと読み取りの速度が大幅に向上します。
4KiBクラスターを使用したSSD上のファイルシステムは、ほとんどの場合、50%以上の速度を失っています... 512バイトから最大2MiBまでのさまざまなブロックサイズでテストしたベンチマークを参照してください。 64KiB(または128KiB)クラスターサイズの場合の速度は4KiBの場合よりも高速です。
SSDを実際に使用したいですか?ファイルシステムでは4KiBクラスターを使用せず、128KiBを使用してください。
4KiBクラスターは、ファイルの99%以上が128KiB未満の場合にのみ使用してください。
等、など...テスト、テスト、および独自のケースをテストします。
注:128KiBクラスターでWindowsをインストールするとき、または別のWindowsからコンソールモードでdiskpartを使用してシステムNTFSパーティションを作成しますが、インストーラーのグラフィカルパーツでウィンドウをフォーマットしないでください(常に4KiBクラスターNTFSとしてフォーマットされます)。
Windowsはすべて、> 400GiB SSD(SLC)上の128KiBクラスターNTFSパーティションにインストールされています。
物事が明らかになることを願って、M $は圧縮されたNTFSをどのように書き込むかを言っていない、私のテストでは、1回だけではなく(SSDの場合はそれに注意して)2回(64KiB非圧縮、次に<= 60KiB圧縮)書き込むことを示しています。
注意:NTFS圧縮は4KiBクラスターサイズのNTFSパーティションでのみ機能するため、WindowsはNTFS圧縮がないと言っても、いくつかの内部ディレクトリをNTFS圧縮しようとします。