John Ratcliff's Code Suppository

A place where I insert my code into the anus of the Internet.

 

Thursday, December 03, 2009

Two more compression libraries added to the test compression tool



A contributor, Mārtiņš Možeiko, just added support for two more compression libraries. They are LZMA and FastLZ. Click on the picture above to see the performance differences between the various compression libraries.

As you can see it is pretty much a tie between several of the fast LZW style compressors. I would recommend you use the one which has the most liberal license and the cleanest looking source code.

I might, sometime soon, and some additional test cases. The current test case is a 10mb XML file; which I thought was pretty representative of a big ASCII file you might hope to get some good compression out of. I should also add some binary test cases as well.

Thanks all for the contributions. And, once again, here is the link to the compression test library.

Wednesday, December 02, 2009

Compression Test



Back in March of 2008 I made a posting about comparing various open source compression libraries. You can read the original post at this link.

I don't get a lot of feedback about this coding website. That doesn't bother me because I upload stuff here as much for myself as anyone else. Over the years I have taken advantage of a lot of source code other developers have written and posted on the Internet. It is for this reason that I feel a sincere debt that I should contribute back as often as I can.

I use the various code snippets and projects I host on this site for my own personal needs all of the time so I don't really need feedback that other people find them useful for me to continue uploading stuff.

Nevertheless, it is quite gratifying when someone does give me feedback that they found something useful. The most gratifying experience of all is when someone made bug fixes and/or improvements to something I have posted; that is the ultimate reward.

Yesterday I received an email from Anthony Whitaker who updated the compression test app to support a new format that is faster than MiniLZO and does not have a restrictive license.

Anthony also wanted me to mention that "The LZMA SDK from 7zip is also in the freeware domain. And 7zip seems quite fast (relative to Rar and Winzip)"

The new format that Anthony added is Marc Lehmann's LibLZF. This is a very impressive tiny library which is extremely fast and lightweight. It is hands down the winner of all of the compression libraries already added to the test framework.

If you feel you have a better one, feel free to modify the compression test library to support your format. Let me know if you want to be a project member of the Google Code site.

The official location of the compression test library is located here on Google Code.

For the record, the compression test library now supports:

CRYPTOPP
MINILZO
ZLIB
BZIP
and now LIBLZF