Subject: Re: 2940 & netbsd-current
To: Justin T. Gibbs <gibbs@freefall.freebsd.org>
From: Michael L. VanLoon -- HeadCandy.com <michaelv@HeadCandy.com>
List: current-users
Date: 03/29/1996 17:59:35
Thanks for adding authoritative input...

>As for Buslogic, their cards (until the Flashpoint) do not use downloaded
>firmware so the driver can use a well defined, high level, interface to the
>card.  This is just the same way the 1542 and 1742 cards were designed, and
>since both Buslogic and Adaptec can give free software driver writers the
>information to talk to that high-level interface without exposing their
>"trade secrets" in the firmware, they do so.

Agreed.  The difference being that you can still buy these for all
busses from BusLogic, but can only buy the ISA version from Adaptec.

>With the FlashPoint, Buslogic
>is moving to use the same strategy as Adaptec has in its aic7xxx product
>line and as you may know, is doing the exact same thing as Adaptec
>has:  It will not release its firmware so the FlashPoint will not be
>supported by any Free un*x until someone rewrites the firmware.

I really know very little about the FlashPoint.  If what you say is
correct (and I have no reason to believe it isn't), then that's
unfortunate.

>>The only reasons I push BusLogic as the best alternative is: 1) they
>>are the only one with drivers as mature as the Adaptec drivers in *BSD
>>(actually, much more mature than the Adaptec 2xxx) drivers; 

>The Buslogic driver is so mature that it doesn't support tagged-queuing,
>use all of the mail boxes on the card, etc.

I've heard conflicting reports on just how beneficial tagged-command
queuing is.  In addition to the fact that there are so many SCSI
devices out there that don't work with it, or have a bad
implementation.  I don't doubt it can be useful in the right
situation, but how often does that occur, currently?

As for not using all the mailboxes, that's simply an implementation
decision in the driver.  One of the primary reasons for setting the
number of mailboxes at their current levels, from what I've been able
to gather in driver documentation, is simply to avoid using huge
amounts of kernel memory for diminishing returns.  How many do you
really need at a time?  Maybe it should be a little more dynamic,
based on how many devices are probed on the chain at boot time.

I'll grant you that the aic7xxx boards are a more modern design.  And,
there certainly has to be *some* benefit to the newer technology.
But, how much of an impact does it make in the FreeBSD or NetBSD
drivers, on a typical SCSI subsystem (not sure how you define
typical)?  I have heard many first-hand accounts that say the BusLogic
cards still give very good performance.  I won't deny that, under the
right conditions, the newer Adaptec aic7xxx design could do better
than the older BusLogic design (the bt742-based design, as opposed to
the newer BusLogic FlashPoint design).

My point about the more mature drivers are that they simply work.
They are well-debugged and heavily tested.  I continue to hear of
problems with the aic7xxx drivers, though those might all be fixed in
the newest FreeBSD driver -- I have no way of knowing.

>The Linux driver does better,
>but you can't avoid the fact that the Buslogic has 5 times the command
>overhead of the aic7xxx boards and 3 times that of the NCR 8XX boards.

I'd like to know what the Linux driver does better.  Maybe we could
incorporate it.  And, I don't dispute your numbers, but I'd be
interested in knowing where they come from, and what real-world impact
they have on a typical SCSI system.

>>3) and they are the only company that makes cards that are as
>>powerful as the Adaptec cards (the NCR 53c8xx cards are close, but
>>don't quite have the high-end processing muscle, from my experience).
>>I would be happy to quote a second and third alternative to Adaptec,
>>if there were a good one to quote.  Unfortunately, I don't know of any
>>others.

>They simply aren't as powerfull.  The only company that does as well, and
>in some cases better than Adaptec is Advasys and since it was founded by
>former Adaptec employees, its not too difficult to tell why.

I guess it depends on how you define "powerful".  Maybe they do have
extra overhead, resulting in lower throughput in certain situations.
But, they have a fast on-board processor, and all the processing is
done in on-card RAM (rather than system RAM, like the NCR, or by the
system CPU, like the lower-end cards).  I'll grant you "powerful" is
an overly ambiguous term.

>You're right though.  You do have a choice.  If you want the best
>performance, you buy an Adaptec.  If you don't like Adaptec or
>don't want the best, buy a Buslogic.

I'm not sure I'd phrase it the same way. :-)  But I'll leave it by
simply adding, if you want solid performance (maybe not the ultimate),
and solid reliability, BusLogic is a very viable alternative.  If you
want good performance and a very low price, consider the NCR 53c8xx
cards.  I've had good results with all three, and (no secret) I
currently prefer the BusLogic cards.  Watching how the FlashPoint
thing plays out could potentially change my opinion on that.  We'll
see...

-----------------------------------------------------------------------------
  Michael L. VanLoon                                 michaelv@HeadCandy.com
       --<  Free your mind and your machine -- NetBSD free un*x  >--
     NetBSD working ports: 386+PC, Mac 68k, Amiga, HP300, Sun3, Sun4,
                           DEC PMAX (MIPS), DEC Alpha, PC532
     NetBSD ports in progress: VAX, Atari 68k, others...
-----------------------------------------------------------------------------