Write-Behind (was Re: Record-access libraries)

Don Speck mangler at cit-vax.Caltech.Edu
Sat Oct 29 15:54:14 AEST 1988


In article <14122 at mimsy.UUCP>, chris at mimsy.UUCP (Chris Torek) writes:
>	  Why do you think DEC thought the 16 kB in the UDA50 was such a
> wonderful buffer?  (Maybe it was 32k, but anyway, small enough not to
> matter---it does not even buffer one track of an RA81.) (It is always
> amusing to watch the reaction of salespersons when you tell them that
> your machine already uses over a megabyte of buffering, and their 64k
> is not interesting.)

It's been a couple of years since I used a UDA-50, but I recall that
repeated reads of the same sector proceeded no faster than the
rotation rate of the disk.  Thus, the UDA-50 does not use its buffer
for caching.

The buffer is there for speed-matching.  The DMA rate is 800 KB/sec
at best.  An RA80, which transfers 1 MB/sec, is not too badly
mismatched, so the early UDA-50's with 4K of buffering could
transfer a whole track of an RA80 without falling too far behind.
But the RA81 transfers twice as fast as the DMA rate.  The small
4K buffer would be full after reading only 1/3 of a track; reading
would have to stop while it spent 1/3 of a revolution draining the
buffer, and then 2/3 of a revolution would be wasted waiting for the
next sector to come back around to continue the read.  The later
models of the UDA-50 have 16K bytes of buffering, which is more
than the DMA can move in one revolution, so DMA can run continuously
once started, and additional buffering would gain nothing.

The buffer in the Xylogics 451 is similarly used for speed-matching,
but 8K is too small.  Word transfers on a Sun VMEbus or Multibus can
move 23K in 1/60 of a second.

The DEC Massbus had only 512 bytes of buffering, but it didn't need
any more than that, because the DMA rate was fast enough.

Don Speck   mangler at csvax.caltech.edu	{amdahl,ames!elroy}!cit-vax!mangler



More information about the Comp.unix.wizards mailing list