delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1992/03/26/17:22:05

Date: Thu, 26 Mar 92 13:24:52 PST
From: rich AT gotland DOT island DOT COM (Rich Fanning)
To: djgpp AT sun DOT soe DOT clarkson DOT edu
Subject: Re: Djgpp and Caches
Status: O

>        I was just wondering, what caches everyone uses with DJGPP and
>also if you have found that it helps in the speed of compiling and/or
>running go32 and swapping memory [advantage being the read ahead...]
>If you do see an improvement, how big is your cache? 

After using DOS 5.0 SMARTDRIVE and PcTools PC-CACHE, I have been very,
very happy with Norton's NCACHE which comes with Norton Utilities 6.0.
It has read-ahead and delayed write, both of which seem to help considerably.

I had been investigating why certain of my programs seemed to be spending
a lot of time doing disk I/O, and plunged into a full investigation of
buffered vs. raw I/O (open vs. fopen).  I found that both of them had
advantages in certain situations:  raw I/O works best with large block sizes,
and buffered with small sizes.  This in itself was no surprise.

What also complicated the situation was Stacker.  I had one volume stacked,
and the other unstacked, and Stacker has it's *own* caching on stacked drives.
Keep in mind, also, when running performance tests on stacked drives, that
many tests write out blocks of zeroes.  Stacked volumes will really fly
in this situation, because the compression goes way up.  You really need to
test random data (and not the same random block multiple times in the file!)
to get better real-life results.

I have 8MB of RAM, 4MB of which is allocated to NCACHE.  Here is one example
of how my compile time changed using caching (minutes and seconds elapsed):

	no cache	3:45
	smartdrive.sys	1:30
	ncache.sys	0:50



     Rich Fanning       {sun,uunet}!island!rich
			    rich AT island DOT COM


- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019