*BSD News Article 2780


Return to BSD News archive

Xref: sserve comp.unix.bsd:2824 comp.os.linux:6548 comp.periphs.scsi:6396
Newsgroups: comp.unix.bsd,comp.os.linux,comp.periphs.scsi
Path: sserve!manuel!munnari.oz.au!news.hawaii.edu!ames!haven.umd.edu!darwin.sura.net!convex!egsner!adaptex!adaptx1!neese
From: neese@adaptx1.UUCP (Roy Neese)
Subject: Re: Query: Drivers for AHA >1522< ?
Organization: Adaptec Inc., Texas
Date: Wed, 29 Jul 1992 20:48:34 GMT
Message-ID: <1992Jul29.204834.20882@adaptx1.UUCP>
References: <adam.711725819@mcrware> <14hjqoINNr78@agate.berkeley.edu> <1992Jul23.232138.20172@colorado.edu>

In article <1992Jul23.232138.20172@colorado.edu> drew@ophelia.cs.colorado.edu (Drew Eckhardt) writes:
> In article <14hjqoINNr78@agate.berkeley.edu> wjolitz@soda.berkeley.edu (William F. Jolitz) writes:
> >In article <adam.711725819@mcrware> adam@microware.com (Adam Goldberg) writes:
> >>...The 1542 is a bus-mastering controller.  This 1522 is not.  That makes
> >>the 1542 much faster (at least in a protected-mode OS like Linux, with
> >>properly written drivers).  
> >
> >One of the reasons that 386BSD works so well with the 1542B is the
> >bus-mastering, the advantages of which are lost on DOS. There may
> >be a false economy in getting a 1522, because the entire advantage
> >of going to SCSI is the bandwidth improvement over the programmed I/O
> >AT/IDE controllers. 
> 
> If you're talking about sustained transfer rate, it's going to be 
> faster to do polled I/O because you don't have the couple of clock
> cycles associated with each bus on period - you just crank data 
> across the AT bus topspeed, 16 bits at a time.

Nope.  Polled I/O can never be faster than bus master DMA as it takes
twicw as many cycles to move each word doing polled I/O as it does for a
bus master to move the same word.
The overhead you speak of is for acquiring the bus, wchi takes 2 cycles
and then of course it takes another 2 cylces to release the bus.  But to
show a more subjective view.  Let's make some assumptions, good
assumptions.  Let's say 1 cycle per word for bus master DMA and 2 cycles
per word for polled I/O (you have to do a read and write for polled I/O,
whereas bus masters do either a read or a write).  Now let's move 512
bytes of data.  Let's see,... for polled that would be 1024 cycles and
for a bus master 512 + 2 + 2 = 516.  Nuff' said.
 
> However, if you can DMA to memory, and replace multiple interrupts with 
> a single interrupt, you'll come out ahead in terms of speed because 
> you're looking at ~200 clocks overhead for an interrupt on the i386
> in protected mode.

True.
 
> SCSI-I also allows you to have one outstanding command per LUN 
> (you can have one disk seeking, or transfering to local buffer 
> while yoou're transfering data to another disk), which IDE and 
> "traditional" disk controllers do not.

Nope.  SCSI has never forced command queueuing as mandatory.  SCSI-2
makes it optional as well.  Host adapters can do command queueing, but
it doesn't have a thing to do with the SCSI spec.
---

			Roy Neese
			Adaptec Senior UNIX/SCSI Software Engineer
			UUCP:	convex!egsner!adaptex!neese
			Inet:	neese%adaptex@cirr.com