2013年9月12日 星期四

[研究] WinRAR 5.0 與 7-zip 9.20 壓縮效率與使用評估

[研究] WinRAR 5.0 與 7-zip 9.20 壓縮效率與使用評估

因為準備把一個將近 8 GB 的目錄壓縮燒錄到一片 4.7 GB DVD 光碟片上,於是拿 WinRAR 5.0 做 "RAR最大壓縮",後來想想 7-zip 壓縮率聽說不錯,也拿來試看看,忙別的事情後回頭來看,甚麼,居然還在壓縮,而且預估時間還頗久,於是起念把效能測試一下,結果如下:

 花費時間(分鐘)壓縮後(GB)壓縮前壓縮率
WinRAR 5.0 RAR最大壓縮152.897.850.368153
WinRAR 5.0 RAR一般102.97.850.369427
WinRAR 5.0 RAR最快壓縮33.47.850.433121
WinRAR 5.0 RAR5最大壓縮202.767.850.351592
WinRAR 5.0 RAR5最快壓縮43.257.850.414013
7-Zip 9.2最大壓縮602.587.850.328662
7-Zip 9.2最快壓縮143.187.850.405096

WiinRAR 5.0 的 "RAR5一般" 和 7-zip 的 "一般" 壓縮就不測了,前者猜13~14分鐘左右,後者 30~40分鐘。

硬體規格
Intel Q9400@2.66 GHz 4核心 CPU
4GB RAM
120GB HDD

另外 Google 查了兩篇

WinRar 5.0 - is it really better than 7-zip?
http://features.en.softonic.com/winrar-5-0-is-it-really-better-than-7-zip


(查了一下,7-zip 9.20 預設是 LZMA 壓縮法,大概是為了相容性,預設不是 LZMA2)

四雄爭霸:誰是壓縮軟件之王?
http://news.mydrivers.com/1/257/257950_all.htm
7-zip 9.28b、MagicRAR 8.0、WinRAR 4.2、WinZip 17 Pro

加上自己測試結果,當 WinRAR 5.0 和 7-zip 選同等級壓縮時,7-zip 雖然比較小,但是要花 3 ~ 4倍的時間,要壓縮的檔案小則還好,很大會讓人等的受不了,而且有時候沒那麼多空閒時間等。

解壓方面:若為一般壓縮,WinRAR 解壓時間估計和最快壓縮時間差不多,所以 WinRAR 約花 3~4分鐘可以解壓完,7-zip可能要 7~8 分鐘。

回到最初的目的,壓出來的大小都可燒錄到 DVD中,所以以後碰到類似情況,會選用 "RAR最快壓縮" 進行,比較有效率。

等有空閒會在做些測試...

******************

Intel Core i5-4430@3GHz 4核心 4執行續 + 240GB SSD
http://ark.intel.com/zh-tw/products/75036/Intel-Core-i5-4430-Processor-6M-Cache-up-to-3_20-GHz


WinRAR 5.0 RAR Fastest  壓縮 1分33秒,解壓縮 1分7秒
WinRAR 5.0 RAR 最大壓縮  壓縮 5分52秒
7-Zip 9.20 LZMA Fastest  壓縮 9分29秒,解壓縮 3分34秒
7-Zip 9.20 LZMA2 Fastest (8 CPU Threads)  壓縮 2分34秒,解壓縮 2分43秒
7-Zip 9.20 LZMA2 最大壓縮 (4 CPU Threads)  壓縮 17分14秒

發現 7-zip 也可以壓縮很快,檢查一下參數
LZMA 預設/最多只能使用 "2  CPU線程數"
LZMA2 預設使用 "4  CPU線程數",最多只能使用 "8  CPU線程數" (就算敝人只有 4 Core,還是可以選 8)
解壓時沒有 "CPU線程數" 可以選,WinRAR 不論壓縮或解壓縮都無此參數可選



(下圖) 發現 7-zip 有個 [效能測試] 功能


(下圖) 為了節省時間,只讓它跑出數據就停出,沒有完全跑完

CPU 小於等於 4 的時候,壓縮和解壓縮速度幾乎和 CPU 數量成正比,超過沒有影響,畢竟真實只有 4 個 CPU Threads;對於 Core i7 這類 4 核心 8 執行續的 CPU 或許選到 8 個可以增加執行速度。

記憶體使用用
1 CPU       420 MB
2 CPU       426 MB
4 CPU       851 MB
6 CPU       1276 MB
8 CPU       1701 MB








(下圖) 檢查 7-Zip 9.20 的前一版 4.65 版,沒有 LZMA2 選項
也就是 9.20 版為了和 4.65 版相容,預設選壓縮效能很差的 LZMA

(下圖) WinRAR 5.0 RAR Fastest  壓縮 系統資源使用情況

(下圖) 7-Zip 9.20 LZMA2 Fastest (4 CPU Threads,因為設 8 只是浪費記憶體)

由上面可知,LZMA2 偏重壓縮率,WinRAR 偏重執行效率,花了約 2 倍半的時間 (2分33秒對 1分7秒) 提升了約 3%的壓縮率 (0.405096與0.433121,1GB 約差 30MB)

結論:
* 如果你要用 7-Zip,強烈建議用 9.20 版,壓縮時設定為 LZMA2



1 則留言:

  1. 7-Zip 15.12 (2015-11-19) for Windows 新版出來了
    http://www.7-zip.org/

    回覆刪除