如何使用多核压缩
什么是多核(Multi-Core)?
内核(core)是计算机中最重要的核心部件 CPU 的运算单元,具有两个及以上内核的 CPU 称为多核 CPU。 早期计算机的 CPU 都是只有一个内核的单核 CPU,但最近用于移动设备的 CPU 普遍为多核 CPU,因此是否支持多核已成为衡量软件性能的重要因素。
使用多核压缩
Bandizip 提供多核压缩功能。压缩文件需要大量的 CPU 运算,因此利用多核并行处理,有助于提高处理速度。

使用该功能,四核(支持8线程)比单核,压缩速度最多快6倍,八核(支持16线程)速度最多快13倍。
下图是在四核8线程 MacBook Pro,支持多核的 Bandizip 和不支持多核的 Finder 分别压缩文件的对比图。


为何在解压缩时无法利用多核?
使用 Bandizip 压缩文件时,由于使用多核,CPU 占用率达到最高,但解压缩时,CPU 占用率并不高。
其原因在于压缩数据的算法之特性。大多数的压缩算法是参考前面的数据来压缩后面的数据。此时,可以通过并行执行进行压缩,但解压缩时,前面的数据被解压后才能解压后面的数据,因此无法与压缩一样并行执行,不得不只利用单核解压缩,因此 CPU 使用率低。
然而,最近随着技术的发达,已开发出解压缩时利用多核的方法。一般情况下,将压缩的数据分成若干区块后分别并行执行,这样就可以将下列压缩文件利用多核快速解压。
为何在压缩时 CPU 占用率不高?
除此之外,压缩文件时 CPU 占用率不高的情况也很常见。压缩过程由以下几个步骤组成:
一般情况下,在压缩过程中因瓶颈现象造成 CPU 使用率提高。但如果使用速度较慢的存储装置(U盘、网络驱动器等),有可能因为存储 I/O 瓶颈,导致 CPU 使用率不高。
注意
- 压缩多个极小文件(小于100KB)时,提高压缩速度的效果可能微乎其微。
- 7zip 用 ZIP 格式压缩文件时也支持多核压缩,但仅适用于多个文件,而不适用于单个文件。