コンプレッサーとデコンプレッサー、RAMとSSDでどのように機能しますか?

コンプレッサーとデコンプレッサー、それらはどのように機能しますか

ソリッドドライブまたはSSDの問題のXNUMXつは、従来のハードドライブよりもストレージ容量が少ないという事実です。 この問題を解決するXNUMXつの方法は、一連の特殊なユニット、コンプレッサー、およびデコンプレッサーを使用することです。

現時点ではほとんど知られていないハードウェアですが、PCと他のデバイスの両方のいくつかのCPUの仕様ですぐに引用されます。 また、ビデオゲームコンソールや新世代のグラフィックカードなど、すでに販売されているシステムにはすでにこのハードウェアユニットが含まれているため、サイエンスフィクションについては話していません。

コンプレッサーとデコンプレッサーの基本操作

コンプレッサーDescompresores

データ圧縮とは、一定量のストレージを占有する情報のブロックを取得し、占有する情報が少ない同じ情報のブロックが取得されるように暗号化することと理解されています。 圧縮ユニットによって作成された暗号化は、もう一方の端にある類似のユニットによって理解される必要があります。これをデコンプレッサと呼びます。

デコンプレッサーが行うことは、それに到達するデータストリームに復号化アルゴリズムを適用することです。明らかに、データは、デコンプレッサーが理解できる形式でデータを暗号化するアナログコンプレッサーによって事前に圧縮されている必要があります。 したがって、両方の極値はペアで直接相関して機能します。

一般的に、圧縮には非可逆圧縮と非可逆圧縮のXNUMX種類がありますが、データ処理の観点からは、実行時のエラーを回避するためにこの情報を失うことに関心がないため、XNUMX番目が最も効率的です。からのプログラム RAM.

CPUは、その速度でデータを解凍するのに十分な速度ではありません

RTX IOSSD

簡単なテストを行い、PCでファイル解凍プログラムを実行して、 CPU 数百メガバイトまたは数ギガバイトのファイルを解凍するのに良い時間です。 ここで、数十ギガバイトをリアルタイムで解凍する必要があることを想像してみてください。必要な計算能力を想像することができます。

これが、DirectStorage標準と互換性のある新しいGPUの場合、CPUにVRAMへのアクセスを許可しても、これはそれほど高速ではないため、データをオンザフライで解凍するための特別なユニットを備えている理由です。データがプロセッサに十分な速度で到達するのに十分です。

SSDの容量を増やすためのコンプレッサーとデコンプレッサー

現時点では、SSDに対する従来のハードドライブの利点のXNUMXつは、ストレージのコストです。 SSD ストレージのギガバイトあたりのコストはHDDよりもはるかに高く、圧縮/解凍ユニットを使用すると、コストを増やすことなくSSDのストレージ容量を効率的に増やすことができます。

現時点では、これらのユニットはCPUにありませんが、DX 12 UltimateでDirectStorageがサポートされているため、GPUの重要な部分であるため、今後の反復でこのユニットをプロセッサに移動するだけで済みます。 その使用の問題は、以前にディスク上に存在していたデータを完全に圧縮する必要があることですが、その見返りに、ストレージ用に追加のメモリを取得します。これはいつでも歓迎です。

RAMとプロセッサの間の拡大する溝

CPU RAM

現実には、RAMはプロセッサと同じ速度で進化しておらず、その結果、プロセッサはRAMの制限を中心に設計されており、この欠点を軽減するためにプロセッサ内で新しいメカニズムを可能な限り開発しようとしています。 現時点では、RAMメモリからオンザフライでこれらを圧縮および解凍できるほど高速なデータコーデックはありませんが、時間の経過とともに処理能力が向上するにつれて、それらが表示されるようになります。

プロセッサに送られるデータをオンザフライで圧縮および解凍できるという考えは、帯域幅の増加にもつながります。技術的には、データが非圧縮で送信された場合よりもXNUMX秒あたりのデータ量が多いため、 RAMが取り残されないようにするために、これらのユニットをメモリ自体とプロセッサの両方に追加する必要があるポイント。

これを行う良い方法は、RAM自体から到着するデータを解凍する並列で動作する複数のコンプレッサーを使用することです。このコンプレッサーでは、各アクセラレーターが異なるデータブロックを処理します。