Results 1 to 28 of 28

Thread: DOS Archiver Benchmark

  1. #1
    Member
    Join Date
    May 2012
    Location
    United States
    Posts
    323
    Thanks
    174
    Thanked 51 Times in 37 Posts

    DOS Archiver Benchmark

    Hey everyone,

    This is a simple DOS archiver benchmark. The only requirement to quality is that the archiver be DOS 16-bit.

    I've taken the reference files (one by one) from http://compressionratings.com and stored them in a TAR file (since some of hte archivers in this test can only do one file at a time).

    If there are any archivers that meet these requirements that you think I missed, PM it to me and I'll test it and add it to the table below.

    UPDATES (01/06/13):
    - Added BSA and Huffman Compression Engine II (LH7) by Joe Jared.
    - Added RAR, SQZ, ACE, UHARC, URBAN, JAR, AIN, UC2 and ARJ.
    - Changed PKZip from 2.04g to 2.50.
    - Memory usage has been eliminated from the benchmark because the previous means of measuring memory usage were inaccurate.

    ORIGINAL 33,360,896 
    UHARC-mx -md32768 -mm+7,376,3922005
    ACE-c2 -d2048 -m5 -s8,278,5992005
    RAR-m5 -mm -s9,083,3521999
    URBAN 9,489,2171994
    HA219,615,9061993
    BSA-++9,638,6161994
    COMPRESS49,817,5861991
    UC2S-TIGHT9,927,8721996
    LH7 10,026,8031998
    JAR-m410,070,0141997
    PKZIP-exx10,096,4241999
    AIN-m110,163,9931996
    ARJ-jm10,209,0352011
    SQZ 10,224,4181993
    LHA 10,577,7181992
    AR 10,577,7381990
    ZOOah10,577,8541991
    LZARI 11,280,4931989
    LZHUF 11,318,9631989
    SCRNCH/s12,147,1271988
    DOZ 13,482,8771993
    DWCz13,767,1671988
    LZSS 13,989,9941989
    PKARC 14,858,2201988
    MDCD 15,040,3921988
    ARCA 15,630,8811987
    ARC 16,177,0511989
    SPLINT 16,569,1201989
    SQPC 29,291,2401986

    *NOTES*
    - The 16-bit version of ACE will not permit me to use the max dictionary size (4096).

    A ZIP archive with the TAR file used for this test is attached.
    Attached Files Attached Files
    Last edited by comp1; 11th January 2013 at 16:11. Reason: Added more archivers

  2. #2
    Expert
    Matt Mahoney's Avatar
    Join Date
    May 2008
    Location
    Melbourne, Florida, USA
    Posts
    3,255
    Thanks
    306
    Thanked 778 Times in 485 Posts
    pkzip -ex (v2.04e, 1993) under Win32 gives me 10,129,532 bytes. These are the input files:

    3,870,784 acrord32.exe
    768,771 book1
    4,638,690 E.coli
    1,000,000 enwik6
    5,000,000 flashmx5m.pcf
    5,000,000 fp5m.log
    102,400 geo
    786,447 lena.ppm
    246,814 obj2
    4,168,192 ohs.doc
    2,646,044 penderecki-capriccio.wav
    4,121,418 vcfiu.hlp
    1,000,000 zhwik6
    33,349,560 bytes

    Also, wondering why the download REF.zip is apparently not compressed.

    33,360,896 REF.tar
    33,361,044 REF.zip

  3. #3
    Member
    Join Date
    May 2012
    Location
    United States
    Posts
    323
    Thanks
    174
    Thanked 51 Times in 37 Posts
    Quote Originally Posted by Matt Mahoney View Post
    pkzip -ex (v2.04e, 1993) under Win32 gives me 10,129,532 bytes. These are the input files:

    3,870,784 acrord32.exe
    768,771 book1
    4,638,690 E.coli
    1,000,000 enwik6
    5,000,000 flashmx5m.pcf
    5,000,000 fp5m.log
    102,400 geo
    786,447 lena.ppm
    246,814 obj2
    4,168,192 ohs.doc
    2,646,044 penderecki-capriccio.wav
    4,121,418 vcfiu.hlp
    1,000,000 zhwik6
    33,349,560 bytes

    Also, wondering why the download REF.zip is apparently not compressed.

    33,360,896 REF.tar
    33,361,044 REF.zip
    I tested an older version of PKZip by mistake. I will fix later today. And I will re-upload the ref.zip and compress it.

    Thanks Matt.

  4. #4
    Member
    Join Date
    Jul 2006
    Location
    US
    Posts
    39
    Thanks
    26
    Thanked 1 Time in 1 Post
    How about Rar, Arj, and Ace? All have DOS versions. I don't remember their RAM requirements, though.

    Also, you might want to have a look through the list at SAC's Pack collection. There are some old DOS archivers there.

    http://www.sac.sk/files.php?d=7&l=
    Last edited by spark; 25th June 2012 at 00:30.

  5. #5
    Member
    Join Date
    May 2012
    Location
    United States
    Posts
    323
    Thanks
    174
    Thanked 51 Times in 37 Posts
    Quote Originally Posted by spark View Post
    How about Rar and Ace? Both have DOS versions. I don't remember their RAM requirements, though.

    Also, you might want to have a look through the list at SAC's Pack collection. There are some old DOS archivers there.

    http://www.sac.sk/files.php?d=7&l=
    RAR 2.50 and ACE 2.6 are the only versions I could find (nothing earlier than those) and they both need more than 1.5MB RAM. But it makes sense because they were released in and after 1996 when 1.5MB RAM was nothing.

    Thanks for recommending that site but I already have that link and I have goteen many archivers from there.

  6. #6
    Member
    Join Date
    Jul 2006
    Location
    US
    Posts
    39
    Thanks
    26
    Thanked 1 Time in 1 Post
    Rar v1.55 (DOS) available here. Reading from 'RAR.DOC', memory requirements are below 1MB.

    http://www.dcee.net/Files/Archiver/

  7. #7
    Member
    Join Date
    Jun 2009
    Location
    Kraków, Poland
    Posts
    1,471
    Thanks
    26
    Thanked 120 Times in 94 Posts
    http://compression.ru/ds/ppmsj.rar should meet the memory requirements if you set _MEM_CONFIG to 512 and recompile it.

  8. #8
    Programmer Bulat Ziganshin's Avatar
    Join Date
    Mar 2007
    Location
    Uzbekistan
    Posts
    4,497
    Thanks
    733
    Thanked 659 Times in 354 Posts

  9. #9
    Member
    Join Date
    Feb 2010
    Location
    Germany
    Posts
    77
    Thanks
    2
    Thanked 0 Times in 0 Posts
    This is awesome! You should definitely add arj. I remember it being used quite a lot among the "backup community". You should be able to get a DOS-capable version here:

    http://www.arjsoftware.com

    I should also have older versions of it available on floppies. Question is whether those are still readable and how to get a floppy drive to work in a modern comp. I wonder if Win7 x64 would even recognize it

  10. #10
    Expert
    Matt Mahoney's Avatar
    Join Date
    May 2008
    Location
    Melbourne, Florida, USA
    Posts
    3,255
    Thanks
    306
    Thanked 778 Times in 485 Posts
    I don't think DOS programs run under 64 bit Windows. Maybe that explains why most 64 bit processors are still running 32 bit Windows today.

  11. #11
    Member
    Join Date
    Jul 2006
    Location
    US
    Posts
    39
    Thanks
    26
    Thanked 1 Time in 1 Post
    In you table you have listed RAM usage. Are these RAM usage numbers taken strictly from program documentation or are you measuring them in real-time?

    If the latter, are you using something like a DOS equivalent of ConsMeter?

    BTW, what's your operating environment for these tests? Virtual Machine (DOSBox), a Win9x command line, a pure DOS, something else?

  12. #12
    Member
    Join Date
    May 2012
    Location
    United States
    Posts
    323
    Thanks
    174
    Thanked 51 Times in 37 Posts
    Hi everyone.I will test those mentioned archivers in a day or two.Also, I am using a WinXP machine with an AMD Athlon yr x2 4800+ with 2gb ram.And I am measuring the ram from task manager. The trick is to run the dos programs in full screen mode to get the real numbers since ntcdm only uses about 1kb to run. In window mode, more ram is used for reasons I don't quite understand. But when in fullscreen, no extra memory is used.More archivers will be added in the next couple days. Stay tuned.

  13. #13
    Member nikkho's Avatar
    Join Date
    Jul 2011
    Location
    Spain
    Posts
    542
    Thanks
    214
    Thanked 163 Times in 104 Posts
    I am missing some others. A part of RAR and ARJ as said, you can include Ultra Compressor II, AIN, and SQZ.
    As for RAR, even version 2.50 is able to work with less than 1 MB o memory, but you should disable EMS usage in its configuration.
    According to RAR.TXT in 2.50, 545 KB of free conventional memory should be enought:

    Code:
    1.4. Technical requirements (DOS version only)
    
       Minimum DOS version to run RAR: 3.0
    
       Minimum memory requirements to perform commands and corresponding
       operations (in Kbytes) are:-
    
        Commands:   ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ?
        A,F,M,U     ºCommand line mode ³ Full-screen mode º
                    ÇÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄ?
                    ºNot solid³ Update ³Not solid³ Update º
                    ºor adding³ solid  ³or adding³ solid  º
                    ºto solid ³ archive³to solid ³ archiveº
       ÉÍÍÍÍÍÍÍÍÍÍÍÍ×ÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄ?
       ºEMS enabled º   337   ³  409   ³  409    ³  481   º
       ºEMS disabledº   401   ³  473   ³  473    ³  545   º
       ÈÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍͼ
    
        Commands: CW,E,P,T,X       Command: C
       ÉÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÍÍ?   ÉÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÍÍ?
       ºEMS enabled º   217   º   ºEMS enabled º   409   º
       ºEMS disabledº   281   º   ºEMS disabledº   473   º
       ÈÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍͼ   ÈÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍͼ
    
        Command: D  ÉÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ?
                    º Not solidº       Solid archive      º
                    º archive  ÇÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄ?
                    º          ºCommand line³ Full-screen º
       ÉÍÍÍÍÍÍÍÍÍÍÍÍ×ÄÄÄÄÄÄÄÄÄÄ×ÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄ?
       ºEMS enabled º    217   º     409    ³     481     º
       ºEMS disabledº    217   º     473    ³     545     º
       ÈÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍͼ
       Update AV to non-solid archive will require some extra memory.
    
        Commands:
        CF,EN,K,L,  ÉÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍ?
        R,RR,S,V    º  No AV  ³ Add AV º
       ÉÍÍÍÍÍÍÍÍÍÍÍÍ×ÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄ?
       ºEMS enabled º   217   ³  409   º
       ºEMS disabledº   217   ³  473   º
       ÈÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍͼ

  14. #14
    Member Fallon's Avatar
    Join Date
    May 2008
    Location
    Europe - The Netherlands
    Posts
    154
    Thanks
    14
    Thanked 10 Times in 5 Posts
    Quote Originally Posted by Matt Mahoney View Post
    I don't think DOS programs run under 64 bit Windows. Maybe that explains why most 64 bit processors are still running 32 bit Windows today.
    You are right, Win7 64 bit does not support DOS programs.
    As for 64 bit processors still running 32 bit Windows: the explanation lies in 64 bit history.
    There used to be too few 64 bit drivers and old hardware was not supported.
    These initial Vista problems have passed, but catch up in practice is slow.

    Switch to 64 bit is well worth anybody's while, if only to run additional memory.
    64 bit systems run faster with 64 bit software. 32 bit apps still run fine.
    That DOS is no longer supported under 64 bit, is because 16 bit is considered outdated.

    Some case research like in this thread, is always nice too see!

  15. #15
    Member
    Join Date
    Jun 2009
    Location
    Puerto Rico
    Posts
    164
    Thanks
    62
    Thanked 13 Times in 9 Posts
    In 64-bit, the solution is to virtualize a windows 32-bit version to use 16-bit inside the virtual machine. I don't know if this works with hardware virtualization but it does work with software virtualization

  16. #16
    Member nikkho's Avatar
    Join Date
    Jul 2011
    Location
    Spain
    Posts
    542
    Thanks
    214
    Thanked 163 Times in 104 Posts
    Quote Originally Posted by moisesmcardona View Post
    In 64-bit, the solution is to virtualize a windows 32-bit version to use 16-bit inside the virtual machine. I don't know if this works with hardware virtualization but it does work with software virtualization
    You can try the simple DOSBox, not a good performer, but enought for these tasks, and easy to use.

  17. #17
    Member
    Join Date
    May 2012
    Location
    United States
    Posts
    323
    Thanks
    174
    Thanked 51 Times in 37 Posts
    Updated!
    Again, if you have a pure 16-bit DOS archiver you'd like me to add to the benchmark, please PM me!

  18. #18
    Member nikkho's Avatar
    Join Date
    Jul 2011
    Location
    Spain
    Posts
    542
    Thanks
    214
    Thanked 163 Times in 104 Posts
    Quote Originally Posted by comp1 View Post
    Updated!
    Again, if you have a pure 16-bit DOS archiver you'd like me to add to the benchmark, please PM me!
    I am still missing as in my previous post AIN 2.32 (ftp://ftp.elf.stuba.sk/pub/pc/pack/ain232.exe) and UC2 (ftp://ftp.elf.stuba.sk/pub/pc/pack/uc237b.exe).

    Of course ARJ and JAR (http://www.arjsoftware.com/arj.htm) are good candidates too.

    Can I suggest adding to the table the version used of each compressor, as well as the time taken to compress? It will clarify lots of things, for instance in the case of LHA, did youse 2.55 (latest english version), 2.66 (only in Japanesse), or 2.63 which was a DOS 32 bit one?

  19. #19
    Member
    Join Date
    Oct 2009
    Location
    usa
    Posts
    56
    Thanks
    1
    Thanked 9 Times in 6 Posts
    Where to find that 32-bit version of LHA 2.63? I've looked all over and can't locate it?

  20. #20
    Member
    Join Date
    May 2008
    Location
    HK
    Posts
    160
    Thanks
    4
    Thanked 25 Times in 15 Posts
    Quote Originally Posted by zyzzle View Post
    Where to find that 32-bit version of LHA 2.63? I've looked all over and can't locate it?
    No such thing(TM).
    the only LHA-32 is 2.67.
    for LHA 2.67 DOS version, it is available here: ftp://192.244.75.8/pub/compression/Yoshizaki/
    Code:
    D:\>lha a ref.lzh ref.tar
    Creating archive : ref.lzh
    
    ==>  30% REF.TAR      ooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
    
    D:\>dir ref.lzh|find "LZH"
    09/01/2013  15:58        10,158,696 REF.LZH
    Last edited by roytam1; 9th January 2013 at 11:04.

  21. #21
    Programmer Bulat Ziganshin's Avatar
    Join Date
    Mar 2007
    Location
    Uzbekistan
    Posts
    4,497
    Thanks
    733
    Thanked 659 Times in 354 Posts
    Quote Originally Posted by Bulat Ziganshin View Post
    still missing

  22. #22
    Member nikkho's Avatar
    Join Date
    Jul 2011
    Location
    Spain
    Posts
    542
    Thanks
    214
    Thanked 163 Times in 104 Posts
    Quote Originally Posted by zyzzle View Post
    Where to find that 32-bit version of LHA 2.63? I've looked all over and can't locate it?
    I misspelled it. 2.67 is Win32. 2.63 is DOS.
    Lates pure DOS is 2.66.
    Last edited by nikkho; 10th January 2013 at 23:52.

  23. #23
    Member
    Join Date
    May 2008
    Location
    HK
    Posts
    160
    Thanks
    4
    Thanked 25 Times in 15 Posts
    Quote Originally Posted by nikkho View Post
    I misspelled it. 2.67 is Win32. 2.63 is DOS.
    Lates pure DOS is 2.66.
    No, there is 2.67 for DOS. Please see #20.

    but for -lh7-, no 2.6x can't create -lh7- archive(although 2.6x can unpack -lh7- archive), only ar950528(if you can find it and compile it for DOS) can do so. (not to mention unlha32.dll and such)
    Last edited by roytam1; 11th January 2013 at 07:26.

  24. #24
    Member
    Join Date
    May 2008
    Location
    HK
    Posts
    160
    Thanks
    4
    Thanked 25 Times in 15 Posts
    ... and LHA for UNIX(autoconf version, latest snapshot: http://git.sourceforge.jp/view?p=lha...562a30e;sf=tgz ) works in DJGPP.
    a gcc-2.95.3 compiled, UPX --best --lzma compressed, stubbed with D3X DOS extender(no more requiring cwsdpmi.exe) binary is here: http://roy.orz.hm/soft/lha_d3x.exe

    Code:
    C:\>lha_d3x a -o7 REF.lzh REF.TAR
    REF.TAR - Frozen(29%) ooooooooooooooooooooooooooooooooooooooooooooooooooo
    C:\>dir ref.lzh|find "LZH"
    11/01/2013  11:55         9,941,354 REF.LZH
    Last edited by roytam1; 11th January 2013 at 07:03. Reason: typo

  25. #25
    Member
    Join Date
    Jul 2006
    Location
    US
    Posts
    39
    Thanks
    26
    Thanked 1 Time in 1 Post
    Another LHA compatible archiver that can create LH7 archives is the "Huffman Compression Engine II" by Joe Jared. The last version I have is v0.21q and was made available in the late '90s. I don't see the DOS version online so I'll attach a copy here. As a bonus, LH7 had better compression (IIRC).

    LH7 DOS archiver by Joe Jared:
    Attached Files Attached Files

  26. #26
    Member
    Join Date
    Oct 2009
    Location
    usa
    Posts
    56
    Thanks
    1
    Thanked 9 Times in 6 Posts
    Thanks for help with LHA!

    BTW: What 16-bit version of ACE are you talking about which can only do a dictionary of 2048k? The only versions I have are 32-bit DOS binaries (2.02 and 2.04), and they work just fine with 4096k dictionary size for me? I didn't even know a 16-bit version of ACE existed. I do know the pmodew versions of ACE (1.0,1.1, and 1.2b) only support a dictionary of 1024k, but again they are 32-bit binaries.

  27. #27
    Member
    Join Date
    May 2012
    Location
    United States
    Posts
    323
    Thanks
    174
    Thanked 51 Times in 37 Posts
    Quote Originally Posted by zyzzle View Post
    Thanks for help with LHA!

    BTW: What 16-bit version of ACE are you talking about which can only do a dictionary of 2048k? The only versions I have are 32-bit DOS binaries (2.02 and 2.04), and they work just fine with 4096k dictionary size for me? I didn't even know a 16-bit version of ACE existed. I do know the pmodew versions of ACE (1.0,1.1, and 1.2b) only support a dictionary of 1024k, but again they are 32-bit binaries.
    ACE-ARCHIVER v2.6. It has an "ACE.EXE" which is pure 16-bit and the one that doesn't allow 4096k. The ACE32.EXE has no problems with the 4096k though. But I can't test with that executable because it is 32-bit (obviously).

  28. #28
    Member
    Join Date
    Jun 2008
    Location
    USA
    Posts
    111
    Thanks
    0
    Thanked 0 Times in 0 Posts
    UHarc is not 16-bit, it uses PMODE/W, which is a 386+ extender. (Also, PMODE/W may be limited in max RAM available, 64 MB only?? You may be able to use something else, e.g. Causeway or HX / HDPMI32, for more RAM.)

    Re: floppy drive, I bought a Sony USB one a few years back, it works fine in modern Windows.

    As for running DOS software on modern machines, there are a dozen different ways. Out of the ones I've not bothered to try (sadly don't have the patience anymore), the ones that "maybe" sound the most promising are VMware (JIT?), Win8 64-bit's Hyper-V (but nested page tables required?), and eCS 2.0. Of the ones I have tried and still occasionally use, the best would be DOSEMU (Linux x86 or x64 only), VirtualBox (with VT-X, esp. Nehalem Westmere), and native boot (esp. RUFUS atop USB). So I wouldn't really recommend DOSBox ("only for games", very incomplete) nor QEMU nor BOCHS unless you didn't have anything else.

    Though if any of you have some (very specific, easy) benchmarks you want me to run in some of these environments, feel free to ask.

Similar Threads

  1. paq8f w/ .DXEs (DJGPPv2, DOS, benchmarking)
    By Rugxulo in forum Data Compression
    Replies: 4
    Last Post: 2nd February 2010, 15:32
  2. Scifer Archiver
    By LovePimple in forum Data Compression
    Replies: 9
    Last Post: 30th October 2008, 21:57
  3. Replies: 18
    Last Post: 5th November 2007, 12:12
  4. PeaZip Archiver
    By LovePimple in forum Forum Archive
    Replies: 8
    Last Post: 22nd August 2007, 15:05
  5. Best practical archiver
    By nimdamsk in forum Forum Archive
    Replies: 34
    Last Post: 24th March 2007, 21:51

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •