Return to BSD News archive
Path: sserve!newshost.anu.edu.au!harbinger.cc.monash.edu.au!bunyip.cc.uq.oz.au!munnari.oz.au!constellation!osuunx.ucc.okstate.edu!newsfeed.ksu.ksu.edu!moe.ksu.ksu.edu!vixen.cso.uiuc.edu!howland.reston.ans.net!agate!agate!usenet
From: se@fileserv1.MI.Uni-Koeln.DE (Stefan Esser)
Newsgroups: comp.os.386bsd.announce
Subject: Announcing NCR 53c810 PCI SCSI driver for FreeBSD
Followup-To: poster
Date: 12 Jul 1994 12:45:36 -0700
Organization: Institute of Nuclear Physics, University of Cologne, Germany
Lines: 122
Sender: cgd@agate.berkeley.edu
Approved: 386bsd-announce-request@agate.berkeley.edu
Distribution: world
Message-ID: <2vrtlmINN2e1h@rs1.rrz.Uni-Koeln.DE>
NNTP-Posting-Host: agate.berkeley.edu
Keywords: PCI, SCSI
NCR 53c810 PCI SCSI driver for FreeBSD 94Jul11
====================================== =======
We are pleased to announce the RELEASE version of our PCI SCSI driver for
the NCR 53c810 PCI SCSI host adapter chip. Testing with several systems
(486 and Pentium) makes us believe, that this version should install and
run with no trouble under FreeBSD 1.1R, 1.1.5R and 1.1.5.1.
The driver sources and a boot floppy image have been made available for
anon. FTP from:
FTP.Uni-Koeln.DE:~ftp/packages/FreeBSD
-rw-r--r-- 1 se 5539 Jul 11 17:44 Announce
-rw-r--r-- 1 se 3336 Jul 11 18:20 Features
-r--r--r-- 1 se 5026 Jul 11 15:39 READ.ME
-r--r--r-- 1 se 486832 Jul 11 15:37 kcopy_nc.flp.gz
-rw-r--r-- 1 se 62784 Jul 11 18:22 scsi-ncr-2.0.tar.gz
Boot floppy (kcopy_nc.flp.gz)
=============================
If you are going to install the driver on a system with the NCR 53c810
as the primary (or only) controller (ie. you need a boot floppy), then
you should get the file "kcopy_nc.flp.gz". Use this file to create a boot
floppy as described in the FreeBSD installation docs, and proceed excactly
as in a FreeBSD install to a IDE hard disk.
But before doing the first kernel build, you should install the driver
sources, else the kernel you build won't be able to boot from the NCR !
If you are already running FreeBSD on your system, then all you need is
the driver sources. You simply unpack the sources into a temp. directory
(where a directory named ncr-scsi-2.0 will be created) and invoke the
"install" shell script. This script will put the sources into a newly
created directory (i386/pci) in the kernel source tree and configure and
rebuild the kernel (you can do this by hand, it's described in a doc file
that comes with the sources).
Why you should rebuild the kernel
=================================
We found that current PCI motherboards use different ISA interrupts for
the PCI interrupt lines. The driver uses the PCI IntA that may be connected
to IRQ 9 or IRQ 14, possibly others on different motherboards.
To overcome this problem, the kernel on the NCR boot floppy uses only timer
interrupts (100 per second) and is thus limited to 800KB/s when reading or
writing 8KB blocks. This is no problem when installing FreeBSD, and after
the system is up, you can build the kernel with IntA mapped to a IRQ line
within a few minutes (see the READ.ME file).
If you can't rebuild your kernel with the correct IRQ value specified, then
you may want to get a configured kernel instead. You simply copy it to your
root filesystem and then boot this kernel (keep a backup of the GENERICNCR
kernel as 386bsd.old).
Kernels with IRQ9 or IRQ14 configured (386bsd.irq{9,14}.tar.gz)
===============================================================
The kernel with IRQ9 configured is in the file 386bsd.irq9.tar.gz and the one
with IRQ14 in 386bsd.irq14.tar.gz. You won't need any of these kernels, if you
are intending to install kernel sources and rebuild the kernel on your system!
Performance achieved
====================
The following are bonnie results from tests under FreeBSD 1.1R (that is
without the FreeBSD 1.1.5 clustering enhancements).
These tests were run on a Seagate ST31200N (1GB FAST SCSI-2) with only
30% free space and on a partition starting 100MB into the disk (ie. the
test could not take advantage of the fastest (outer) zones of this ZBR
drive). System used was a ASUS 486 motherboard with 486DX2/66.
As you can see from the 100MB results, read performance approaches 3MB/s,
while write performance strongly depends on the use of Tagged Command Queuing
(and improves to 3MB/s under 1.1.5, too).
The %CPU column indicates, that reads and writes require 10% of the 486DX2
per MByte/second transferred, indicating that on this system 10MB/s could
be achieved (at 100% CPU load). A 90MHz Pentium might be able to transfer
10MB/s at 30% CPU load (or 30MB/s at 100% :).
These values are not meant to be best performance you'll ever be able to
see, it's just what we were able to achieve on our development system on
a partition that was 70% filled and had been used for quite some time.
Let us know, if you see less than this performance on your system!
-------Sequential Output-------- ---Sequential Input-- --Random--
-Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks---
Machine MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU /sec %CPU
async 10 640 66.2 548 4.2 281 3.7 1235 96.7 2086 22.0 81.4 7.3
fast.1 10 650 59.1 548 4.0 317 4.9 1274 99.0 2234 26.2 82.7 7.8
fast.2 10 900 99.4 912 7.5 519 7.8 1273 99.2 2318 24.0 82.3 7.9
fast.4 10 895 99.3 1359 12.9 514 9.4 1259 99.2 2235 22.0 83.6 8.2
fast.8 10 889 98.3 1747 16.6 526 9.8 1276 99.2 2318 25.4 82.7 7.4
fast.16 10 902 99.3 1289 12.0 526 8.9 1281 99.4 2054 21.9 83.0 7.9
fast.1 100 591 61.9 583 4.2 342 4.7 1259 97.8 2900 36.3 47.9 4.9
fast.16 100 955 99.3 1402 12.5 583 10.4 1274 98.1 2895 37.2 48.6 4.8
## ASYNC SCSI and FAST SYNC without, with 2, 4, 8 and 16 Tags on 10MB file. ##
## FAST SYNC without and with 16 Tags on 100MB file. ##
We would like to know what performance you get from YOUR system and have for
this reason included the "bonnie" sources in the driver sources TAR file
(there is a shell script that runs a few interesting tests in the bonnie dir).
If you get some nice results, then let us know.
--
Stefan Esser Internet: <se@MI.Uni-Koeln.DE>
Mathematisches Institut Tel: +49 221 4706010
Universitaet zu Koeln FAX: +49 221 4705160
Weyertal 80
50931 Koeln