SUMMARY - slow SCSI

From: tony@cosc.canterbury.ac.nz
Date: Sun Sep 08 1991 - 20:40:53 CDT


OK, summary time. What a great list this is - most responses came in <12
hours.

1. Firstly, I wanted to know why my disc (a Micropolis 1548) wouldn't
format.
Everyone said for the format.dat entry "ncyl + acyl == pcyl", and on some
discs there is a mff (magic fudge factor :-) on the LHS as well. But none
of this helped :-( I already had tried knocking the size of the disc right
down and no dice. Judging by the error message format spits out it looks
like the actual "format unit" SCSI command would work, if format could get
that far. But it barfs on writing to the disc beforehand, I think (anyone
got the source for 4.1.1 format? What does it actually do for the "format
disc" command?)

Anyway, I'm going to just label the disc and see how it goes. If you think
this is a rather dodgy move, you're right :-) Hey, I can read and write
the thing, what else do you need? ;-)

THERE IS NO DOCUMENTATION FOR FORMAT.DAT :-( :-( :-( :-( :-( :-( :-( :-(
:-(

2. Disc speed. Some interesting and worthwhile answers to this:

(a) No Sun in production has the hardware to do more than 4-5 Mbytes/Sec.
The protocols needed for 10 Mbytes/Sec are either "fast SCSI" (tighter bus
timing for double the speed) or "wide SCSI" (16-bit data path) There are
3rd-party boards to do these protocols I'm told, but I haven't researched
this.

(b) Anyway, (a) doesn't really matter because the 3600RPM Micropolis can't
read the disc faster than ~2 Mbytes/Sec (see Wolfgang Thaler's reply),
although the caching on the disc would help some. Reading from /dev/sd0b I
got up to 1.9Mbytes/Sec. Maybe a twirlier disc (like Suns 5400RPM Elite)
would help.
--------------------------------------------------------------------------

Many thanks to all who responded, especially the knowledgeable guys at Sun:

jan@eik.ii.uib.no
wolfgang.thaler@Germany.Sun.COM, who supplied the most information.
jpmg@engineering.cambridge.ac.uk
chris@lslsun4.epfl.ch
miker@sbcoc.com
stern@sunne.East.Sun.COM Does Mr Stern ever sleep? :-)
kpc!cdr@uunet.UU.NET
kevin.sheehan@fourx.Aus.Sun.COM Ditto for Mr Sheehan :-)
proton!baumann@ucrmath.ucr.edu
keves@meaddata.com

Here is my edited version of the replies:
--------------------------------------------------------------------------
From: jan@eik.ii.uib.no

I don't believe you can get 10MB/s on either the ELC or an SS2. You need
a SCSI-2 controller, and to my knowledge Sun doesn't support this yet.

--------------------------------------------------------------------------
From: wolfgang.thaler@Germany.Sun.COM

>2. It doesn't go fast enough for me!

This needs some explaination! "SCSI-2 at up to 10 Mb/sec" is confusing!!!
You have to distinguish between the transfer rate of your SCSI bus
(bytes/sec you get over the SCSI bus bewteen 2 controllers) and the
transfer
rate of your disk (bytes/sec you get off your disk surface). The SCSI spec
(I'm now talking about the SCSI bus, not your disk) allows for "normal"
transfer with an option for sync scsi. You will see (in theory)
5-6Mbytes/sec
over the SCSI bus. The SCSI-2 spec supports also an option for "fast" SCSI.
This will give you (in theory) 10Mbytes/sec over the SCSI Bus. Maybe your
disk contr. does support "fast" SCSI, SUN does only support "normal" sync
SCSI.
This is not a bug, because "fast" SCSI is an option and not mandatory (and
as
you will see, it's useless for your disk!) That's for the SCSI bus, and now
to
your disk.
During boot up, the SUN and your disk **controller** are negotiating a sync

transfer rate that might be slower than the max transfer rate of the bus
(4.0 mb/sec versus 5-6mb/sec). That means, your disk controller and the SUN
will transfer data with a max speed 4Mbytes/sec over the bus. What is more
important is, how fast can your disk feed the SCSI Bus. (It's useless to
have a very fast SCSI connection (controller) if you cant't get the data
off
your disk). The max data transfer rate off you disk (raw access, no file
system overhead) is often calculated as:

        (number of secs/track) * 512Bytes * (revs per second)

        (This assumes, that you will only read from one head in parallel)

If you take your numbers: nsect = 107, rpm = 3600 you will get a data
transfer rate off your disk at:

        107 * 512 * 3600 ~ 2Mbytes/sec

(If you enable your cache, that might be higher, but depends also on
random or sequential access!).

So, it doesn't matter, if your interface supports 5 or 10Mbytes, you can't
feed the bus fast enough! (This holds for one disk on the bus, it's a
little
bit more complicated, if you have more disks on your bus and longer cables
and .... You see, I/O performance isn't trivial at all!)

hope this helps,
wolfgang

P.S.: 3600 revs/sec isn't state of the art. There are disks around with
      5400 revs/sec (like SCSI ELITE from SUN ;-)
--------------------------------------------------------------------------
From: Patrick Gosling <jpmg@engineering.cambridge.ac.uk>

There was a patch to the format program mentioned in sun-managers some time
quite recently, that was supposed to stop it truncating block addresses to
21 bits ...

Patch-ID# 100343-01
Keywords: 1GB greater
Synopsis: SunOS 4.1.1 needs patch to access scsi drive capacity beyond 1GB.
--------------------------------------------------------------------------
From: Mike Raffety <miker@sbcoc.com>

My understanding is that Suns don't do SCSI-2, they're doing SCSI-1
synchronously (optionally). Also, the speed is limited to about 5
Mb/sec by the SCSI driver chip on the CPU board, I think. For the
format entry, just keep upping the cylinders/heads/sectors until you
get an error writing the disk label or bad block info; remember that
SCSI disks present one linear, error-free, range of blocks, and that
the cylinder/head/sector numbers don't matter, just their product has
to be less than or equal to the size of the disk. A good use for
/usr/games/factor, I heard said once. (;-)

The SS-2 may get it up to 5 Mb/sec; better SCSI chips, maybe.
--------------------------------------------------------------------------
From: stern@sunne.East.Sun.COM

as for the disk going at 10 Mb/sec, i think the interpretation
of "SCSI-2" given in the literature you read must imply
"fast+wide SCSI-2". SCSI-2 by itself is merely a command
set that you implement; it's a bus protocol. SCSI-2
is sometimes taken to mean also using fast+wide busses:
differential drivers, 16 or 32 data lines.

there aren't any suns (today) that do this. too many
pins on the little connectors (that's part of it)
--------------------------------------------------------------------------
>From kpc!cdr@uunet.UU.NET Thu Sep 5 05:40:29 1991

10 MB/sec is either fast SCSI or wide SCSI, and either would need a new
host adapter and driver on the host side. I believe there are 3rd party
boards that offer these, but I haven't seen anything from Sun yet.

(Fast SCSI tightens the timing to double the speed; wide SCSI uses
a 16-bit data path instead of 8-bits. The SCSI-2 standard also
defines a 32-bit wide data path, and you can combine fast & wide,
which means SCSI-2 is defined up to 40 MB/sec. I haven't heard of
anyone with more than 10, yet.)

--------------------------------------------------------------------------
Reply-To: kevin.sheehan@fourx.Aus.Sun.COM

> 2. It doesn't go fast enough for me! Would it go
> faster on our Sparc 2, do you think?

No - the limitation is single ended SCSI. Also, the xfer rate is probably
not the limiting factor - it's probably gettings the bits off oxide, and
the
command/status phase of an xfer.

--------------------------------------------------------------------------
From: proton!baumann@ucrmath.ucr.edu

Now, here is the problem I see.
 Pcyl usually is ncyl + acyl +mff (magic fudge factor)
 With esdi drives using the MD21, the mff is at least 4 (required by
 the controller apparently) I dunno about SCSI for sure. Anyway
 given your choice of 2 acyl, with pcyl at 2048 - the maximum
 ncyl (excluding mff) is 2082 - so yes you are running off the
 end of the disk. It seems that the choice of ncyl is PFM wrt to
  SCSI -good luck.

(note: one problem I had was a drive with 52 sectors would not format
    unless nsect=51)
--------------------------------------------------------------------------
From: keves@meaddata.com

I don't know what Micropolis is talking about but SCSI-2 has a top rate of
about 5 MB/Sec. Maybe only 4 MB/sec. I would say it looks as fast as it
is going to get.
--------------------------------------------------------------------------



This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:06:19 CDT