TidBITS#42/Compression
======================
 
 Copyright 1990-1992 Adam & Tonya Engst. Non-profit, non-commercial
   publications may reprint articles if full credit is given. Other
   publications please contact us. We do not guarantee the accuracy
   of articles. Publication, product, and company names may be
   registered trademarks of their companies. Disk subscriptions and
   back issues are available.
 
 For more information send electronic mail to info@tidbits.uucp or
 Internet: ace@tidbits.uucp -- CIS: 72511,306 -- AOL: Adam Engst
 TidBITS -- 9301 Avondale Rd. NE Q1096 -- Redmond, WA 98052 USA
 -----------------------------------------------------------------
 
Topics:
    Compression Wars
    Compression Rankings
    Efficiency Rankings
    Expansion Ratings
    Compactor
    StuffIt
    DiskDoubler
    Compression Conclusions
 
 
Compression Wars
----------------
  by Ken Hancock -- kenh@hscfsas1.harvard.edu -- khancock on AOL
 
  With all the recent hubbub regarding the various file compressors,
  I thought it was well past time for a review and comparison of the
  leaders: StuffIt, Compactor (now Compact Pro), and DiskDoubler.
 
  Before I begin, let's lay down the foundation used for the timing
  tests:
 
  All tests were done on a Macintosh SE/30 with 8 MB memory, running
  6.0.7 under Finder on a Wren IV drive. The only INIT running was
  Desktop Manager (no, I wasn't going to wait for my desktop to be
  rebuilt). Three different tests were performed on each application
  and each compression mode, each trying to reflect different real-
  world situations:
 
* "Binaries" - a 1,857,129 byte folder containing four
  applications: Microsoft Word, HyperCard, Compactor, and StuffIt
  Deluxe 1.0.
 
* "Graphics" - a 1,868,118 byte folder containing eight PICT files
  used for backdrops. Mostly scanned images.
 
* "Text" - a 227,521 byte folder containing 60 TEXT files of
  varying lengths.
 
  I tested six different applications: StuffIt 1.5.1, StuffIt
  Classic 1.6, StuffIt Deluxe 1.0, StuffIt Deluxe 2.0, Compactor
  1.21, and DiskDoubler 3.1. In each case, the times were based on
  the time to compress an entire folder from the respective
  application in a one-step process. For DiskDoubler, this meant
  using its "Combine" feature since DiskDoubler is most commonly
  used to compress single files. Since DiskDoubler combines and then
  compresses, only one compression mode is used throughout all the
  files. For the DiskDoubler "Smallest" mode test, smaller files
  might be possible by first compressing the folder and then
  combining the folder. All the other applications compress on a
  file-by-file basis.
 
  Please note that these tests do not take into account any
  interface issues or shortcuts that one might use. In each case, I
  only recorded the actual time spent by the Mac in compressing or
  decompressing the file. You should also be aware that there are
  more variables that were beyond the scope of these tests, such as
  still more different file types and how the programs worked with
  smaller files. Working on a single small database file, for
  instance, might produce somewhat different results. There is
  simply no way to test all the possibilities, sorry.
 
  So, who won? Good question. As with everything, it depends on the
  game being played. I judged the applications on two criteria:
 
1. Absolute compression: which program compressed the files the
  most.
 
2. Best Efficiency: which program yielded the best
  compression/minute.
 
  In the case of a tie, the application that compressed the fastest
  garnered the top spot. All compression percentages are carried out
  to two decimal places since different applications
  calculated/rounded the values differently. "Efficiency" was
  calculated by taking the "% saved" and dividing by the number of
  minutes it took to compress the folder. For those who wish to see
  the gory details, take a look at the enclosed Excel spreadsheet.
 
  Since I tested four separate versions of StuffIt and a total of 12
  different modes/versions altogether, I've summarized the results
  below, with the following condition:
 
  All StuffIt Deluxe 1.0 trials have been removed as well as all
  timings with StuffIt Deluxe/Classic "Better" mode. In almost all
  of the trial modes, "Best Guess" provided identical compression to
  "Better" mode, but at a faster speed. (One questions why the
  "Better" mode is even included.)
 
  The results (a note for the less mathematically inclined - the
  larger numbers are better):
 
 
Compression Rankings
--------------------
 
 Best Compression - Binaries        % saved    %/min efficiency
 StuffIt Deluxe 2.0 "Best Guess"    42.3             7.11
 Compactor                          41.94%          13.90
 StuffIt Classic 1.6 "Best Guess"   41.94%           5.67
 DiskDoubler 3.1 "Method B"         35.34%          11.91
 
 Best Compression - Graphics        % saved    %/min efficiency
 Compactor                          55.66%          11.80
 StuffIt Deluxe 2.0 "Best Guess"    55.10%           8.59
 StuffIt Classic 1.6 "Best Guess"   54.33%           7.12
 DiskDoubler 3.1 "Method B"         51.09%          19.52
 
 Best Compression - Text            % saved    %/min efficiency
 Compactor                          53.98%          87.54
 StuffIt Deluxe 2.0 "Best Guess"    52.59%          24.85
 StuffIt Classic 1.6 "Best Guess"   52.15%          27.94
 DiskDoubler 3.1 "Method A"         51.41%         140.21
 
 
Efficiency Rankings
-------------------
 
 Best Efficiency - Binaries     %/min efficiency   % saved
 DiskDoubler 3.1 "Method A"         18.21           25.19%
 StuffIt Deluxe 2.0 "Faster"        14.62           13.89%
 Compactor                          13.90           41.94%
 DiskDoubler 3.1 "Method B"         11.91           35.34%
 
 Best Efficiency - Graphics     %/min efficiency   % saved
 DiskDoubler 3.1 "Method A"         39.15           47.63%
 StuffIt Deluxe 2.0 "Faster"        34.95           33.20%
 StuffIt Classic 1.6 "Fast"         28.34           49.13%
 StuffIt 1.5.1 "Try both"           25.51           48.47%
 
 Best Efficiency - Text         %/min efficiency   % saved
 DiskDoubler 3.1 "Method A"        140.21           51.41%
 Compactor                          87.54           53.98%
 DiskDoubler 3.1 "Method B"         83.22           48.54%
 DiskDoubler 3.1 "Smallest"         71.74           51.41%
 
 
Expansion Ratings
-----------------
  At least a few people out there want to decompress files for some
  strange reason and might be interested in how fast the various
  compression programs do this.  Myself, I always go fix a snack,
  watch some Star Trek, read a book, or carry on intellectual
  conversations while my Mac decompresses files.  I guarantee that
  me method will give you the best results (i.e. you'll enjoy
  yourself instead of sitting around watching progress bars).  But,
  since I've so often been reminded that I'm probably not a good
  indication of the real world, here we go...
 
  I did two decompression tests for each of five programs: Compact
  Pro 1.30, DiskDoubler 3.1, StuffIt 1.5.1, StuffIt Classic 1.6, and
  StuffIt Deluxe 2.0.  All tests, as before, were performed on a Mac
  SE/30, System 6.0.7 running under Finder, and using the Desktop
  Manager.  The first test was to decompress a StuffIt 1.5.1 archive
  containing all the previously compressed files: Binaries,
  Graphics, and Text Files.  The second test was to decompress one
  file containing the same files in the application's native format. 
  Compact Pro has only one format (simple, eh?).  For DiskDoubler,
  this was a "combined" file compressed with Method A.  For StuffIt
  1.5.1, this was a file compressed with "Try both."  For StuffIt
  Classic and Deluxe, this was a file compressed with "Best Guess." 
  I decided to use these formats because I thought they would be the
  most commonly used in each case (I could be wrong) and since
  decompression times will vary widely depending on %-saved,
  original data type, etc.  (So use these numbers only as a rough
  guideline!)
 
  Two figures are given for each application.  For the first test,
  we have total time to decompress the 2,527,112 byte file (the
  faster, the better) and a speed relative to StuffIt 1.5.1 (the
  larger the number, the better).  For the second test, we have
  total time to decompress the file and a kilobytes/minute
  decompression speed (again, the larger the better).
 
 
Time to decompress a StuffIt 1.5.1 archive:
 
                    Time       Normalized
 Compact Pro        2:41         1.95
 DiskDoubler        3:51         1.36
 StuffIt Classic    5:07         1.02
 StuffIt 1.5.1      5:14         1.00
 StuffIt Deluxe     5:24         0.97
 
 
Time to decompress a native format file:
 
                    Time        K/min
 Compact Pro        3:26         732
 DiskDoubler        2:23         635
 StuffIt 1.5.1      5:14         472
 StuffIt Classic    7:11         390
 StuffIt Deluxe     7:33         365
 
 
Question: "So, which one should I use?"
 
Answer: "It depends on what you want. Read on."
 
 
Compactor
---------
  Compactor, a relatively recent introduction into the compression
  world from Bill Goodman, takes the simple approach: easy, fast,
  and compact. In all of the trials, Compactor files were never more
  than 1% larger than StuffIt Deluxe's "Better"/"Best Guess" modes,
  but anywhere from 25% to 400% faster. Compactor is currently my
  choice for daily BBS and Usenet uploads and downloads. Compactor
  also featured the absolute fastest decompression times for both
  StuffIt 1.5.1 files and for its own files. In addition, Compactor
  creates the smallest self-extracting applications (about 13K
  overhead), which is handy if the recipient doesn't have the same
  program you use. It also works the way an application should under
  MultiFinder and allows the foreground application to work quickly
  while still managing to get its own work done. (Nice job, Bill!)
  Now only if it had Finder-level compression...
 
  Of course, if you are up on the absolute latest and greatest, you
  know that Bill Goodman just released a new version, Compact Pro
  1.3 (he had to change the name because of a name conflict with
  another product). The times and archive sizes were ever so
  slightly longer and larger, most likely due to the removal of the
  300 files per archive limit that Compactor had. I didn't change
  either the results in the article or the spreadsheet because of
  the minimal differences between Compactor and Compact Pro file
  formats. Most Compact Pro archives can be extracted by Compactor
  unless they take advantage of one of the new features, such as the
  removal of that 300 files per archive limit I just mentioned.
  Compact Pro boasts plenty of other features that should help
  solidify its position as the shareware compression program of
  choice. If you hold down the option key when double-clicking on an
  archive, Compact Pro automatically extracts all the contents.
  Similarly, double-clicking on filenames in the archive catalog
  window extracts the files, as it should. For those on the
  Internet, Compact Pro now supports Binhex 4 encoding and decoding,
  though it can't decode binhexed files that have text before the
  start of the binhex codes. Curious, and Bill is probably working
  on that right now. Overall, though, Compact Pro is well worth the
  $25 shareware fee.
 
    Bill Goodman
    109 Davis Ave.
    Brookline, MA  02146
    71101,204 on CompuServe
 
 
StuffIt
-------
  I've been a big fan of StuffIt ever since Raymond Lau released it
  way back when. Before that, PackIt was the standard, and it didn't
  take long before everyone noticed that StuffIt was faster and
  better. Since then, StuffIt development and marketing has been
  taken over by Aladdin Systems. The results: StuffIt Classic, the
  new shareware version, and StuffIt Deluxe, the commercial version.
  StuffIt Classic improves upon StuffIt 1.5.1 by offering better
  compression modes, the ability to navigate through folders,
  support for externals, and virus checking. StuffIt Deluxe goes
  beyond StuffIt Classic by offering extensive scripting, more
  compression methods, compression "optimizers," compression
  "externals," and my favorite feature, "Magic Menu." Magic Menu not
  only allows Finder-level compression, but also includes hooks for
  popular mail programs so you can stuff & send files. StuffIt
  Deluxe is my compressor of choice at work for the Magic Menu
  feature alone. On the downside, StuffIt Deluxe is beginning to
  suffer from feature-itis. It seems to me that five different
  compression methods is more than needed, especially since "Best
  Guess" and "Better" yield almost identical compression factors.
 
  While StuffIt certainly wins the features wars, it isn't always
  the most efficient format, and one place where Compact Pro wins is
  in the size of the self-extracting archives. Depending on what
  mode you choose, StuffIt adds between 19K and 23K to the
  compressed file to make it self-extracting. In contrast, Compact
  Pro only adds about 13K, which can be a big difference when you
  send files at slow modem speeds. StuffIt Deluxe and StuffIt
  Classic also brought up the rear in terms of decompression speed,
  which is something of a strike against them.
 
    Aladdin Systems -- 408-685-9175
    Deer Park Center, Suite 23A-171
    Aptos, CA 95003
    Aladdin on America Online
    aladdin@well.sf.ca.us
 
 
DiskDoubler
-----------
  DiskDoubler was the biggest surprise for me, probably because I
  was least familiar with it. When I ran the "Text" test on it, all
  I could say was "Wow." No wonder Apple decided that a site-license
  for it would be a good thing. DiskDoubler fills a different niche
  than StuffIt and Compactor. DiskDoubler provides near-transparent
  file compression in normal use. Compress a document or application
  from the "DD" menu in the Finder. The document icon is then
  replaced by a copy with a little "DD" in the corner (only if
  DiskDoubler has been configured by Salient for that particular
  application). Weeks later when you need the document, double-
  click, and it (and its associated application, if that is
  compressed as well) is decompressed and opened. Quit from the
  application or close the document and DiskDoubler recompresses the
  document, and if appropriate, the application. Slick!
  Decompression wasn't quite as impressive as compression, but
  DiskDoubler took second place by quite a large margin nonetheless.
  The NuBus DoubleUp board (SE and SE/30 versions to follow) from
  Sigma Designs, currently in beta test, will make DiskDoubler up to
  ten times faster and may shrink the compressed files more as well.
 
  DiskDoubler has no provision for self-extracting archives because
  it isn't trying to compete in the online compression battle
  between StuffIt and Compact Pro. Instead, DiskDoubler includes a
  freely distributable application and INIT, both of which can only
  expand compressed files. They aren't all that small, at 82K for
  the INIT and 96K for the application, but you only have to send
  them to your intended recipient once. If you regularly send self-
  extracting archives to the same person, sending DiskDoubler's free
  utilities is probably more efficient.
 
  I have only two gripes about DiskDoubler. First, the progress
  window is a little obtrusive. I'd prefer a small, relocatable
  windoid. Luckily Salient has said they may include options for
  either a smaller window or no window in future versions to make
  DiskDoubler even more transparent. Salient also mentioned that
  although the progress window is modal, it does allow background
  tasks ample time. Second, there aren't enough icons included - the
  perfect solution would be an application that allows you to add
  icons from an application and put the "DD" in the corner - better
  yet, do it on the fly! (Thanks to Tom Zeller for loaning me a copy
  so I could review it - the only problem is I was so impressed that
  now I'm going to have to go out and buy yet a third compression
  program!)
 
    Salient -- 415-321-5375 -- 800-326-0092
    124 University Ave.  Suite 103
    Palo Alto, CA 94301
    Salient on America Online and AppleLink
    76516,1574 on CompuServe
 
 
Compression Conclusions
-----------------------
  The common denominator remains the old StuffIt 1.5.1 format, since
  all of the compression programs can expand 1.5.1 files (this is
  why we included a StuffIt 1.5.1 file in the decompression tests).
  Not surprisingly, StuffIt Classic and StuffIt Deluxe can also
  create 1.5.1 archives, unlike the others. However, most of the
  online services, including the Internet file servers, have adopted
  a policy of allowing any format if a free decompressor is
  available. America Online is the major holdout, since it prefers
  uploads in StuffIt 1.5.1 format and only allows other formats if
  the files are self-extracting archives.
 
  Yet another program will try its hand at the competition soon,
  when Alysis Software releases SuperDisk!, which is designed to
  compete with DiskDoubler and provide transparent compression and
  expansion of files. However, SuperDisk! will also go after the
  other programs by creating smaller archives in less time and by
  including the ability to create self-extracting archives. It
  should ship in a month or so. If that's not enough for you, a
  shareware program recently appeared on the scene to compete with
  DiskDoubler. AutoSqueeze from Dawson Dean transparently compresses
  and expands files or folders (and the files in them) whose name
  ends with the word "compressed." It's $20 shareware and works
  quite well, though in our informal tests it isn't as fast as
  DiskDoubler nor does it compress the files as much. A friend was
  recently bemoaning the number of choices in the compression field.
  "It all used to be so easy," he complained. "Everyone loved
  StuffIt and thought Ray Lau was a god. Now we've got a ton of
  formats to deal with and trade-offs wherever you look." There is
  something to be said for simplicity, but we're unlikely to ever
  see it again in the compression field.
 
  The bottom line? It's a toss-up. I'll be using all three - StuffIt
  Deluxe for the Magic Menus and mail hooks (not to mention JPEG
  compression for Photoshop documents!), Compact Pro for my
  uploading and downloading, and DiskDoubler to compress all the
  infrequently-used files on my hard disk (definitely cheaper than
  buying another hard disk). And by the way, don't try these tests
  at home - compressing files for eight hours with a stopwatch is
  not in my "Top 10 Things To Do" list.
 
 
..
 
 This text is encoded in the setext format. Please send email to
 <info@tidbits.uucp> or contact us at one of the above addresses
 to learn how to get more information on the setext format.
