マルチコア搭載コンピューターでの圧縮
マルチコアプロセッサとは
CPU の処理単位はコアと呼ばれ、複数のコアを持つ CPU はマルチコア CPU と呼ばれます。 初期の PC ではシングルコアのみでしたが、最近では、モバイル CPU にもマルチコア CPU が搭載されています。従って、マルチコア CPU 対応は、今日のソフトウェア性能を評価するうえで不可欠な要素なのです。
マルチコア圧縮
Bandizip はマルチコア圧縮に対応しています。データ圧縮には膨大な CPU 処理が必要なため、マルチコアを使用して並列圧縮にすると速度が向上します。

Bandizip は、たとえば 4 コア 8 スレッド CPU では 6 倍高速化でき、8 コア 16 スレッド CPU では 13 倍高速化できます。
これらのイメージは、マルチコア対応の Bandizip と、シングルコアのみを使用する Finder の比較を示しています。


なぜ展開中にマルチコアを使用しないのですか?
Bandizip を使用した圧縮では CPU 使用率が最大まで増加しますが、展開時にはそれほど高くなりません。
これはデータ圧縮アルゴリズムによるものです。ほとんどのデータ圧縮アルゴリズムは、フロントデータを参照する方法を使用して実装されています。この特性のため、圧縮は並行してできますが、並行展開の実行は難しいのです。
Thanks to the recent advancement of technology, however, some ways have been introduced to make full use of a multi-core CPU when decompressing an archive. Bandizip may perform faster decompression using every core in the CPU for the following archives:
- 7Z archives compressed with LZMA2 algorithm
- RAR archives compressed with RAR5 algorithm
- ZPAQ archives
- ZIP archives
圧縮時に CPU 使用率が高くならないのはなぜか
また、圧縮時の CPU 使用率低下という問題があります。圧縮操作は以下のステップを繰り返します。
通常、この手順では圧縮がネックとなるため、CPU 使用率は高くなります。ただし、低速メディア (外部 USB メモリやネットワークドライブ等) を使用する場合には、CPU ではなくディスクI/O がネックとなるため、CPU 使用率が高くならない可能性が生じます。
注意
- また、100 KB 未満の小サイズファイルを多量に圧縮する場合も、CPU 占有率が高くならないことがあります。
- 7zipは、ZIP形式でファイルを圧縮するときにマルチコア圧縮をサポートしますが、単一のファイルではなく、複数のファイルに対してのみ機能します。