Compression Performance: 7-Zip, MagicRAR, WinRAR, WinZip

Page 2 - Seeking answers? Join the Tom's Hardware community: where nearly two million members share solutions and discuss the latest tech.
Status
Not open for further replies.

mayankleoboy1

Distinguished
Aug 11, 2010
2,497
0
19,810


A few points :

1. Forcing text compression on WinRAR is a BAD option. The algo is not threaded much. So only a single core is used. And if you have non-text files as well, the compression becomes much worse. That is why in Winrar4.2, tesxt compression is disabled by default.

2. In 7Z, have you tried using PPMd algo, with solid block, 1024MB dictionary size, and word size as 32 ? I am positive you will get a much higher compression.
 

ElDani

Honorable
Mar 19, 2013
7
1
10,515

I didn't know that - thanks for educating me. While I changed the setting in my profile now, its effect was small:

Force Text Compression On - 125.62 MB - 2:12 minutes
Force Text Compression Auto - 125.38 MB - 2:06 minutes


Yes, the compression ratio is now in league with WinRAR and the archive is even a bit smaller. I'm relieved to see, that the much vaunted compression ratios of 7-Zip are not a myth! It is still very slow in comparison:

7-Zip d) - 120.05 MB - 3:07 minutes

If only NanoZIP (0.09 alpha) was a bit more polished, or if there was another application with the algorithm built in, I'd be love to use it productively. With memory-settings on auto and the nz_optimum2 compression ratio, this is the result:

NanoZIP - 118.19 MB - 43 seconds
 

Honis

Distinguished
Mar 16, 2009
702
0
18,980
Can you add charts with the compression ratio and compression time displayed side by side? The separate sorted by rank charts make finding a balanced compression and speed difficult.
 

Kevin Zhang

Honorable
Mar 19, 2013
1
0
10,510
Compression efficiency is only one aspect to consider. It's important to note that 7zip does not have support for any file integrity mechanisms/data redundancy, while WinRAR allows you to add a recovery record covering up to 10% of the archive. I've personally been bit by corruption issues when dealing with large 7Z archives, but never with WinRAR.
 

tslot05qsljgo9ed

Distinguished
May 22, 2009
51
0
18,530
Why is an unavailable 9.28b beta version of 7-Zip used?
On www.7-zip.org the latest stable released version is 9.20 from 2010-11-18.

The latest version is 7-Zip 9.30 alpha was and it comes with this WARNING:

This is a development version.
Don't use 7-Zip 9.30 alpha to process important files and archives.
If you need more stable version, you can use 7-Zip 9.25 alpha.

Again an Alpha version directing you to another Alpha version.

I would not trust my data to any release that is not a stable release.
 

grokem

Honorable
Aug 12, 2012
50
0
10,630
Great article, maybe have another shootout in a few months based on the feedback provided here? Some of my favorite suggestions were decompression speed, ease of use and additional programs.

I thought one of the better comments was that compression and decompression speed don't matter nearly as much as final compression size. While there are exceptions to this for huge archives or for places where latency is an issue, I think it's a good all around statement. In that vein and out of scope for this article I can't help but mention my favorite compression format that almost no one has heard of.

The format is called rzip and has a few variants. One of the more popular is lrzip which is available for most Unix/Linux systems. It's claim to fame is that is uses very large dictionary window which can be larger than the available RAM on the machine. As you can imagine it works wonders on very large files if your goal is the smallest possible final size.

However, because of how small the dictionary window is on my other formats it can often out compress by significant margins even on small files. I recently had a web server system that needed to store lots of ~40kb binary files. Because they were storing analog signals they were pretty random and the best I could compress them was down to ~27kb using bzip2. lrzip got consistently got them down to ~19kb.

Look up the history on Wikipedia which has a good overview of how it achieves the best compression.
 

viper666

Distinguished
Apr 19, 2006
108
0
18,710
FreeArc should be included at some point, it's developed by one person and it's superior even to Uharc (which is already slightly better than 7z but left undeveloped).
 

cypeq

Distinguished
Nov 26, 2009
371
2
18,795
[citation][nom]ElDani[/nom]types are html, js, php and cgi in that order[/citation]

You are wrong here this all one type a text file, try text compression algorithm winrar would use one automatically. That's why it won.
 

devBunny

Distinguished
Jan 22, 2012
181
0
18,690
[citation][nom]ElDaninom]types are html, js, php and cgi in that order[/citation]

[citation][nom]cypeq[/nom]You are wrong here this all one type a text file[/citation]

Not necessarily. I'd recommend an experiment. Archive the different types of file in four separate *solid* archives and then *store* them (no additional compression) in an outer container. Solid archives can work wonders with files of the same type due to the shared dictionary. Archiving mixed text types in random or alternating order may not be optimal use of the dictionary.

Or if you can contrive to ensure that the four types get archived in a single archive but all of each file type in turn that will achieve the same efficiency in dictionary use, as well as saving the second step of combining the sub-archives.


 

William Langton

Honorable
Mar 20, 2013
4
0
10,510
This comparison is all about compression efficiency and file sizes, but for me there are other considerations. I use winrar and 7zip. When I'm working with a file set having numbered extensions (.r01,.r02,.r03 - or - .000,.001,.002... etc.), winrar doesn't get it, even when integrated with the OS. 7zip handles this naming convention without a problem, but I've also found situations where it can't complete decompression of a fileset that winrar handles with ease, though in this case it's not a naming convention. I might be wrong about winrar's surprising disability with numbered extensions since I've never bothered to look into whatever settings can be adjusted, but then too it should be a default behavior, it seems to me.
 

somebodyspecial

Honorable
Sep 20, 2012
1,459
0
11,310
So opencl still isn't worth squat (10%?) yet. When will toms test some cuda on NV vs. opencl AMD apps (adobe stuff goes either way in options and can be told to do this without quadro etc)? Can we get some adobe tests or something? No synthetics please. Use an actual product like PS, Premiere etc...Something you'd actually make money with please that goes both ways. This site seems to ignore the fact that cuda works in tons of apps these days, and instead always includes opencl only. NV owns 65% of the gpu market which by definition means a good 65% of us can use cuda. You'd think this would warrant a look each year.

7zip may be the winner here, but winrar is the winner on usenet still. Which is primarily where you run into anything packed. I wonder why 7zip hasn't taken over? Maybe because others get perf like ElDani? I prefer winrar myself :) and I'm using the 64bit version also. I only use 7zip when forced, and have never been wowed when uncompressing stuff with it. Was 64bit or 32bit version used here? Test setup page didn't specify unless I'm too tired and missed it...ROFL.
 

somebodyspecial

Honorable
Sep 20, 2012
1,459
0
11,310
Couple more apps, Vray, 3dsmax, Blender (which the grimrock guys are using - almost human I mean), surely your audience would like to see some cuda stuff. Modders of games might be interested to know stuff like this:
http://www.blenderguru.com/4-easy-ways-to-speed-up-cycles/
cpu 9mins+, cuda enabled 46 seconds...12x faster? Shouldn't you be throwing in some cuda stuff? Render people, game devs etc surely would like to know this stuff. Cuda is growing not shrinking (now supports Python too) and they have cuda centers in 26 countries around the globe. Rarely a mention around here past the news headlines. OpenCL sure gets it's time in the spotlight though and I'm still trying to figure out why. It never seems to show much.
http://www.tomshardware.com/news/nvidia-cuda-graphics-card-hardware-acceleration,14033.html
"CUDA, which is still positioned against open high-level platforms, especially OpenCL, survived a looming battle with Intel's canceled Larrabee graphics card and floating point accelerator, but has been frequently criticized that it is not as easy to deploy as Nvidia claims. For example, while basic access to the GPU via CUDA is considered to be relatively easy, the remaining 5 to 10 percent of performance that is hidden in a GPU can only be accessed via detailed knowledge of the architecture of the GPU, especially its memory architecture. "

Well hmmm...5-10%, not easy to use? How about 12x faster, all you have to do is turn it on. :) You claim it's positioned against OpenCL but no comparisons ever...I'm guessing results like above say why :( OpenCL is a bit player compared to cuda. Your own article way back then said 500 universities taught it. How many teach opencl? That was Nov 2011 too. ADobe has had support since CS4 if memory serves.
http://www.tomshardware.com/reviews/adobe-cs5-cuda-64-bit,2770-8.html
Cuda but 2yrs ago. How good is it now? 14mins to 3mins on cuda. There is far more stuff using this now than 2.4yrs ago right? Tons of content creators surely read this site?

How about some opengl vs. opencl? This all just falling on deaf ears? :)
 

JamesAbel

Distinguished
Oct 15, 2008
3
0
18,510
Great article, but if there's going to be a part 2 I'd like to see a comparison to the built-in Windows zip capability. In other words, what do you get by using one of these apps instead of the built-in zip.
 

nurgletheunclean

Distinguished
Jan 18, 2007
150
0
18,690
FreeARC is at least 3x as fast on the same hardware and compression levels as 7zip and it's totally free.
Here is an example of archiving a 24GB Virtual Machine Folder on an i3-2100
(arc a -r -m1 -pXXXXXXXXX backup d:\targetvhd\x)
Compressed 28 files, 24,680,349,088 => 5,655,695,552 bytes. Ratio 22.9%
Compression time: cpu 509.44 secs, real 170.86 secs. Speed 144,449 kB/s
All OK
144MB/S !!!!! for an encrypted archive!!!
 

nurgletheunclean

Distinguished
Jan 18, 2007
150
0
18,690
Here's another FreeARC result with a dual e5620 system using a single 12gb pst file.
This would be zip like compression -m1
FreeArc 0.67 (December 12 2012) creating archive: test.arc
Compressed 1 file, 11,976,139,776 => 5,831,875,336 bytes. Ratio 48.6%
Compression time: cpu 357.06 secs, real 40.54 secs. Speed 295,383 kB/s
 

fkr

Splendid
i have been using http://www.extractnow.com/ for over 10 years now. It is developed by a single guy also and has the best interface in my opinion and simple one click use that creates all the appropriate directories when uncompressing
 

Klamer Schutte

Honorable
Mar 21, 2013
1
0
10,510
It would be interesting to see the time taken by the stock Windows zip tool as integrated in explorer in comparison. I guess that still it many people's baseline.
 

techw

Distinguished
Feb 9, 2009
5
0
18,510
I have never understood why anyone would buy a compression program when they can install 7-Zip for free. (I have seen a large number of people using WinRAR and WinZip, cough, without paying for it)
 
Status
Not open for further replies.