PCI-based SCSI host adapters combine state-of-the-art speed with (almost) Plug and Play simplicity
Steve Apiki
Among PC technologies, PCI (Peripheral Component Interconnect) and SCSI-2 are about as natural a match as you're likely to find. PCI's two key attributes--a 132-MBps top transfer rate and Plug and Play potential--make it an ideal foil to SCSI-2, which has notorious needs for both system bandwidth and configuration tweaking. High-speed PCI SCSI host adapters take advantage of PCI's strengths to provide both simple setup and high SCSI throughput.
PCI SCSI adapters will make their biggest contribution to networked environments where many users access multiple drives. SCSI-2 performance features like SCSI disconnect and tagged command queues maximize overall data throughput with multiple drive
s by allowing target drives to fetch and store data while not holding the bus, essentially sharing the bus more effectively. Although single-user systems will benefit from the increased throughput, multitasking, multiuser systems are more likely to exploit simultaneous access to several SCSI drives. With this type of use, PCI opens the bottleneck typically created by ISA-bus host adapters and moves that bottleneck from the host adapter to the SCSI bus itself.
In this review, I compare three PCI 2.0-compliant SCSI-2 cards: Adaptec's AHA-2940, Future Domain's TMC-3260, and BusLogic's BT-946C. I focus mainly on performance, but I also look at ease of configuration. With a total of two jumpers among them, these three adapters are at least as different from ISA SCSI cards in ease-of-setup as they are in throughput.
Testing and Results
I tested the three cards on a NetWare 3.12 server, where the performance features of SCSI-2 and PCI make sense. I used the NetFrame DX test and the BYTE NetWare File
I/O test, both of which generate disk traffic from the server itself and measure aggregate disk I/O in kilobytes per second. Both tests avoid NetWare's software caching, so that performance differences between adapter cards are emphasized. The NetFrame test runs under NetWare and writes to free space on all drives simultaneously, bypassing the NetWare file system. It shows the performance of each host adapter under maximum load.
BYTE's NetWare File I/O test NLM (NetWare loadable module) performs sequential reads, writes, and random I/O to files residing on NetWare volumes on each attached device. BYTE's File I/O results use NetWare's Direct File System NLM to bypass the NetWare system cache to ensure that each access gets all the way out to the SCSI target. For comparison, I also ran each board with a DOS-based file I/O benchmark that uses a variety of access patterns. In addition to the three PCI adapters being tested, the test results figures (starting on page 164) also show comparison results for
an Adaptec AHA-1542B (a popular ISA SCSI card).
The test bed was a 486DX2/66 system built around an Opti reference design motherboard. Opti's PCI chip set fully supports PCI 2.0 and enables posted writes on the PCI bus, a feature that's not found in older PCI designs. For all the NetWare tests, I ran each host adapter with one to four drives. The first three drives were Micropolis 4110s, and the fourth was a Micropolis 2217. All these drives support synchronous transfers up to 10 MBps as well as tagged commands. The test system was fast enough to minimize the impact of the system and drives on the tests and to place the host adapters in the bottleneck position.
While the Future Domain card depends on CPU-intensive PIO (programmed I/O) to move data between itself and system memory buffers, the more expensive Adaptec and BusLogic cards use bus mastering to off-load data transfer work from the CPU. In addition to SCSI throughput, the NetFrame DX test provides a crude measurement of CPU utilization.
I used this result to gauge how each card might affect a server running CPU-intensive applications.
Adaptec's AHA-2940
Adaptec's latest SCSI design was a consistent top performer on all our tests. Built around Adaptec's 10-MIPS PhaseEngine RISC microprocessor, the AHA-2940 has considerably more processing horsepower than either BusLogic's or Future Domain's PCI cards. In my testing, the advantage of the faster processor was most evident for small block sizes and for small numbers of drives, where the overhead of in-system processing time is greatest compared with the overhead of the drives. Since 4-KB blocks are probably more representative of typical transfer sizes than 32-KB blocks, the AHA-2940 should prove the best performer for running NetWare with one or two drives.
Some AHA-2940 performance features don't work quite as well. The Adaptec card supports tagged command queuing, but I had to leave the queue setting low in order to get effective performance. If I set the queue size too high
, the NetWare server would simply lock up and crash when it used multiple drives. An Adaptec engineer explained that when queues get too large and several SCSI devices wait to return data, competition for the SCSI bus becomes critical. Since SCSI awards control to the device with the highest ID, device 0 (the first drive) never gets control and starves until NetWare fails the drive, deciding it will never return. This problem was by no means unique to the AHA-2940; BusLogic's board showed similar results, and I've seen this behavior with a VL-Bus SCSI card, too.
One performance measure that isn't in the performance charts is CPU utilization by the host adapter. The AHA-2940 kept CPU utilization to a minimum, and throughput was split evenly from device to device, meaning the NetWare server was still capable of servicing every request even at the highest throughput levels.
Board configuration and setup is simple. You access SCSI and device parameters via a ROM-based SCSISelect Utility that you inv
oke at boot time with a hot-key combination (Ctrl-A). I had no problems with the firmware configuration after installing the board.
Adaptec sells the AHA-2940 only as part of its PCI SCSI Master kit. The $399 kit includes drivers for most operating systems, a cable, and Adaptec's EZ-SCSI utility package. Adaptec also sells a wide-SCSI version of this board called the AHA-2940W.
BusLogic's BT-946C
Despite a high-performance bus-mastering ASIC (application-specific IC) that's been tested in the field, BusLogic's BT-946C turned in performance results that were generally disappointing. The BT-946C supports advanced SCSI performance features such as command queues of up to 255 commands. (Adaptec's card is limited to 32 queued commands with the firmware I tested.) In my tests, however, BusLogic's board rarely matched the performance of either Future Domain's or Adaptec's host adapters. In fact, the BT-946C lagged behind the other boards on every test.
You set most performance parameters in f
irmware. Once I found the optimal firm-ware settings, the only tweaking that was necessary was to set command-queue sizes using the NetWare driver. The BT-946C had the same problems as Adaptec's card in using large queue sizes. A BusLogic engineer was surprised by my test results and explained that BusLogic had achieved throughputs of over 7 MBps from the BT-946C board using the NetFrame DX test on a Pentium system with three Seagate Barracuda drives. However, we were unable to come up with any settings that improved performance on my test setup.
The BT-946C has the distinction of being the only board to provide jumpers for configuration; however, the jumpers are required only for nonconforming PCI motherboards, and I didn't need to use them. I had some problems setting up the board initially; the system wouldn't boot until I set the PCI IRQ (interrupt request) to the BT-946C's default of IRQ 11.
BusLogic sells both kit ($399) and stand-alone ($369) versions of the BT-946C. In addition to operat
ing system drivers, the kit contains an internal cable and a copy of CorelSCSI, Corel's SCSI utilities package.
Future Domain's TMC-3260
Future Domain's recent price cutting makes the TMC-3260 a real bargain at $139 for the stand-alone version and $195 for the kit, which includes SCSI ribbon cable and drivers for DOS/Windows and NetWare. According to Future Domain, most other operating systems come with support for its host adapter products. If you are looking for a solid, high-performance, low-cost card, this is it. But even if cost isn't your top priority, the TMC-3260 flaunts both performance and convenience advantages.
Although the other two reviewed cards come with straight ASPI (advanced SCSI programming interface) drivers, Future Domain supports ASPI by conversion through its CAM (common access method) drivers. Either way, ASPI support makes it more likely that you can attach multiple devices to one card or several host adapters in one system without compatibility problems.
The
TMC-3260 is the only one of these cards to qualify as Plug and Play-compliant. Like the other boards, the TMC-3260 is fully software configurable. The deciding factor is the TMC-3260's automatic termination, a requirement for Plug and Play (and a handy feature). Auto-termination handles all card termination without any user action, enabling termination whenever the card is at an end of the SCSI chain and disabling it when the card is in the middle of the chain with both external and internal devices attached. This lets you, for instance, swap external devices between systems without worrying about card termination (after powering down all systems and SCSI devices concerned).
Although performance results were good, they were somewhat deceiving. The TMC-3260 shared the top spot on most tests with Adaptec's host adapter and exceeded its performance on the BYTE NetWare File I/O tests with large blocks. However, the PIO-based card used up so much CPU time that the test runs became erratic at high usage lev
els and drive utilization was extremely uneven. The high CPU requirements mean lower response time for actual network applications. Real-world performance is, thus, somewhat hard to gauge--the TMC-3260 did well on the BYTE NetWare File I/O tests, where CPU overhead appears to limit all cards--but I expect real performance to be somewhat lower than the tests indicate.
Card Comparisons
Going by the performance results, you have a choice between Adaptec's AHA-2940 and Future Domain's TMC-3260. It comes down to the lower price and somewhat greater convenience of Future Domain's card versus the performance advantage that bus mastering should give Adaptec's card with processor-intensive applications. Despite the TMC-3260's automatic bus termination, I would recommend the AHA-2940 for server applications, unless price is a critical concern.
The Facts
AHA-2940 $399
(PCI SCSI Master kit
with cable and software)
Adaptec, Inc.
691 S. Milpitas Blvd.
Mil
pitas, CA 95035
(408) 945-8600
fax: (408) 262-2533
BT-946C $369
KT-946C kit
(with cable and software) $399
BusLogic, Inc.
4151 Burton Dr.
Santa Clara, CA 95054
(800) 707-7274
(408) 492-9090
fax: (408) 492-1542
TMC-3260 $139
TMC-3260SVP kit (with cable
and software) $195
Future Domain Corp.
2801 McGaw Ave.
Irvine, CA 92714
(800) 777-7274
(714) 253-0400
fax: (714) 253-0913
Figure: NetFrame DX, 4-KB Blocks
Results for NetFrame's DX benchmark using small (4-KB) block sizes for one, two, three, and four drives under NetWare 3.12. Adaptec's AHA-2940 completely outpaces the other adapters on sequential reads (a) on the strength of its more powerful controller, but random reads (b) show only a small differentiation.
Figure: DOS File I/O
Adapter performance under the DOS test, running file I/O operations on a single drive. Results from an Adaptec AHA-1542B ISA host adapter
are provided for comparison. Although there's only slight variation among the boards being tested, sequential read tests show a dramatic difference between the ISA and PCI boards; random tests show a small but noticeable difference. Note that the DOS file I/O tests include a mixture of block sizes to provide ``realistic'' performance numbers; higher throughputs could be attained with consistently large block sizes.
Figure: NetFrame DX, 32-KB Blocks
Because the DX benchmark sidesteps the NetWare file system (and with the large, 32-KB block size), it yields the highest throughputs tested for all the host adapters (a). Future Domain's TMC-3260 appears to lose performance going from three to four drives, but the card's PIO design bogs down the CPU at this level, making measurements erratic. As the number of drives goes up, the random test (b) begins to approach each host adapter's performance ceiling as the access speed of the drive puts less of a constraint on system performance.
Figure: BYTE NetWare File I/O, 4-KB Blocks
BYTE's NetWare-based File I/O tests demonstrate performance running on top of the NetWare file system. There is considerable overhead to this test compared with DX. For small block sizes, this overhead tends to wash out the differences between host adapters. Sequential tests (a) put Future Domain's TMC-3260 and Adaptec's AHA-2940 at similar performance levels, with BusLogic's BT-946C somewhat behind. As in the figure ``NetFrame DX, 4-KB Blocks,'' random tests (b) show little difference between adapters. Sequential-write performance (c), mostly dependent on drive speed, is fairly insensitive to which host adapter is used.
Figure: BYTE NetWare File I/O, 32-KB Blocks
Sequential-read (a), random-I/O (b), and sequential-write (c) results for file I/O through the NetWare file system using large block sizes. Despite using PIO, Future Domain's TMC-3260 performed best in this high-overhead environment, while BusLogic's BT-946C consistently lags.
Photograph: Bridging fast to faster: Adaptec's AHA-2940, Future Domain's TMC-3260, and BusLogic's BT-946C (front to back) hitch 10-MBps Fast SCSI-2 to 132-MBps PCI. Local-bus host adapters have sufficient bandwidth to keep SCSI peripherals operating at near-maximum speeds.
Steve Apiki is a BYTE contributing editor and senior developer at Appropriate Solutions, Inc., a Peterborough, New Hampshire-based consulting firm. You can reach him on BIX or the Internet at
apiki@bix.com
.