From: Eric Backus Subject: Re: Eric's FSF utilities To: mdr AT csg DOT cs DOT rdg DOT ac DOT uk Date: Mon, 19 Oct 92 12:14:39 PDT Cc: djgpp AT sun DOT soe DOT clarkson DOT edu Mailer: Elm [revision: 66.25] > Over the weekend I got hold of Eric Backus' ports of the FSF utilities > and loaded them on my 386sx pc. When comparing them to previous versions > of the same utilites ftp'd from SIMTEL:gnuish-msdos they all appeared > to be about 20% larger, but more importantly, took significantly longer > to run. A simple looping test using ms-sh200 proved Eric's "ls" to take > about 5 times as long. Closer inspection showed that there was frentic > disk activity BEFORE anything appeared on the screen - this occured with > other utilities as well, including ones which needn't access the disk at all. > > Since these utils are .exe files, I presume that they aren't trying to run > my copy of go32. I have 2Meg of memory in the machine - perhaps this > is insufficient and the utils are paging? Would anyone like to comment on > this? Eric, perhaps? These utilities larger than the GNUish-msdos equivalents. Part of the size comes from the necessity to prepend a copy of stub.exe in front of all the utilities. Part of the size comes from using more recent versions of the FSF source, which continues to grow. These utilites should be faster at anything that does significant CPU calculations - try grep, diff, sort, or zoo. However, utilities that do not involve much CPU will almost certainly be slower than the GNUish-msdos equivalent. I can't explain all your disk activity, but they have to load from disk, so there will always be some activity. With 2MB of memory I suppose it could be swapping. Do you have a good disk-cache set up? That might help (or it might make things worse if it deprives go32 of needed memory). If you run "ls" twice in a row in the same directory, is the second execution much faster than the first? These utilities are indeed using your copy of go32.exe. They would be even larger if they each included their own copy. By now, I'm sure some of you are asking yourself "Why not just use the GNUish-msdos versions - why should I bother with DJGPP-compiled FSF utilities?" GNUish-msdos might be a good choice, especially if you are short of memory and disk space. However: 1. With DJGPP and go32, you don't run into arbitrary memory limits. (Try using GNUish-msdos "sort" to sort a dictionary file sometime - it won't work.) 2. Some DJGPP compiled programs are indeed faster than the GNUish-msdos equivalents. I found zoo to be 20% faster at compression. 3. The DJGPP compiled FSF utilities are taken from more recent FSF source, which gives them a more consistant and friendly user-interface and fixes some bugs from earlier versions. (I found a bug in GNUish-msdos "cp" and "cpio" when copying a file that contains 16384 null bytes in a row.) 4. I could be wrong, but I think I have made available more of the FSF programs than the GNUish-msdos people have. -- Eric Backus ericb%hplsla AT hplabs DOT hp DOT com (206) 335-2495