Initial Evaluation of the New PKZIP Compressor Adapted from MAS-BBS' Bulletin 67, "Report to Subscribers," By Matt Kahn. Released for free distribution Feb. 3, 1988. Updated on Feb. 4, 1988 with the addition of Series 4 tests. Questions may be addressed to MAS-BBS (718) 444-4555 (data). Here are the results of my preliminary tests of Phil Katz' new compression pro- gram, PKZIP. His earlier programs are tested here too for comparison purposes. The tested PKZIP version is 0.80, Beta. This report contains printer formfeeds. Please bear in mind that the PKZIP pro- grams may be modified prior to official release. Also, performance times (not compression sizes) will vary with the computer equipment on which it is run. All tests were run on an AT-type computer, 8 MHz. CPU, 40ms HD, no cache. "Level 1" refers to the PKZIP settings to obtain the fastest processing [-ea1 -eb1]. "Level 4" refers to the settings to obtain tightest compression (smallest resulting zipfiles) [-ea4 -eb4]. Each series contains six per- formance tests using the same input data. The input files for the four series of tests are: SERIES 1: Large group of plain text files SERIES 2: Large group of executable (binary) files SERIES 3: Medium group of mixed binary and text files SERIES 4: Small group of mixed binary and text files ------------------------------------------------------------------ ZIP and PKZIP refer to Phil Katz' compression software. Further information about, and purchase/registration of, this software may be obtained from: PKWARE Inc., 7545 North Port Washington Road, Suite 205, Glendale, WI 53217. SERIES 1: Large group of plain text files The first series of tests involved compressing the 68 files in a subdirectory totalling 1 meg (1,000,900 bytes). These were al- most all plain ASCII (text) files. Program Bytes Time (min, sec) ------------- --------- --------------- PKARC 3.5 504816 0' 57" PKPAK 3.61 504651 0' 51" PKZIP Level-1 507232 1' 41" PKZIP Level-2 499001 1' 44" PKZIP Level-3 490518 1' 51" PKZIP Level-4 482071 2' 05" SERIES 2: Large group of executable (binary) files The second series of tests involved compressing the 40 files to- totalling a little less than 1 meg (925,900 bytes). These were all .EXE (binary) files. Program Bytes Time (min, sec) ------------- --------- --------------- PKARC 3.5 682479 1' 05" PKPAK 3.61 683253 1' 00" PKZIP Level-1 595182 1' 47" PKZIP Level-2 587331 1' 55" PKZIP Level-3 580607 2' 09" PKZIP Level-4 577250 2' 52" SERIES 3: Medium-size group of mixed binary and text files The third series of tests involved compressing 9 files totalling 100K (actually 99,908 bytes). These files were a typical mix- ture of programs and text files. Program Bytes Time (sec) ------------- --------- ---------- PKARC 3.5 68183 8.211" PKPAK 3.61 68363 8.915" PKZIP Level-1 62274 14.339" PKZIP Level-2 61258 14.471" PKZIP Level-3 59576 16.405" PKZIP Level-4 59147 21.238" SERIES 4: Small group of mixed binary and text files The fourth series of tests involved compressing two files to- talling 10K (actually 10,460 bytes). There was one program file and one text file. Program Bytes Time (sec) ------------- --------- ---------- PKARC 3.5 8070 2.559" PKPAK 3.61 8070 2.782" PKZIP Level-1 7407 3.154" PKZIP Level-2 7401 3.034" PKZIP Level-3 7399 3.588" PKZIP Level-4 7400 4.455" Recommendations PKZIP can indeed create substantially reduced compressed-file sizes. Greater compression, however, takes more time. Re- storing compressed files, on the other hand, is actually faster when tighter compression methods were selected. With large files or groups of files, PKZIP created the smallest compressed files, but it required a great deal more time to do so. If you can accept slightly larger output, the time savings may be sufficient to use PKPAK 3.61 or PKARC 3.5 instead. Compared with PKPAK 3.61, PKZIPped text files were as much as 4 percent smaller (level 4), but they required up to 235 percent more time (level 4). Also compared with PKPAK 3.61, PKZIPped binary files were up to 16 percent smaller, but they required up to 172 percent more time. With medium-size groups of files, a similar pattern emerged. Com- pared with PKPAK 3.61, PKZIPped files were 14 percent smaller, but they required 238 percent more time. With small groups of files, PKZIPped files were 9 percent smaller, but they required 160 per- cent more time. PKZIP is a new product. It is possible that Phil Katz will be able to optimize his code to improve its speed in successive versions. For now, PKARC 3.61 seems like the best of these alternatives for general use. PKZIP will be helpful where the greatest possible com- pression is desired regardless of the extra time it will take and also where PKZIP's unique options are needed.