T.R | Title | User | Personal Name | Date | Lines |
---|
2214.1 | More to it than speed ? | HPSCAD::GATULIS | Frank Gatulis | Tue Feb 07 1989 11:15 | 19 |
|
Just a comment!
When I was shopping for a hard drive I always wondered why one drive
for $800 was 40mb while another was $800 for a 65mb. The dealer
answer is standard "higher speed costs more $$". That's probably
true but there's more to it than that. Quality is also an issue.
It's hard to get the numbers but the more expensive drives have
MUCH higher MTBF numbers than others. For example GVP puts several
vendor drives on their hard cards and according to rep I spoke with,
your paying much more reliability than performance. As far as I
can tell, the Quantum Drives (regardless of which controller it's
hooked up to) is one of the best, and most expensive. I have the
GVP 40meg hard card in my A2000 and love it. For the way I plan
to use my system, an 11ms or 28ms drive would make no difference
to me. Compared to those floppies, any hard drive is great.
Frank
|
2214.2 | | MTWAIN::MACDONALD | WA1OMM 7.093/145.05/223.58 AX.25 | Tue Feb 07 1989 11:31 | 2 |
| I also have a GVP 40QS 11ms HardCard. I think you'll find GVP's
tech support to be outstanding as well.
|
2214.3 | bigger is better | SAUTER::SAUTER | John Sauter | Tue Feb 07 1989 13:12 | 13 |
| If those are average seek times, then I would call the two drives equal
in performance. The larger drive presumably has more cylinders, so the
"average" seek is over more cylinders, hence longer. However, if you
put only 40MB of data on the 80MB drive, your seeks will be shorter
than average, because all of your data will be at the front of the
drive.
My conclusion is: the larger drive is a better buy. If you limit
yourself to 40MB you will probably get the same performance as the
smaller drive. In addition, if you need more space you can get it by
paying longer seek times when you access the additional files. A small
price to pay for an additional 40MB, in my opinion.
John Sauter
|
2214.4 | How to speed up a drive | TLE::RMEYERS | Randy Meyers | Wed Feb 15 1989 20:26 | 24 |
| Re: .3
The amplify what John just said:
The average seek time is how long it takes for the read-write head to move
from cylinder zero to the maximum cylinder divided by two.
So if you double the number of cylinders and keep the track to track
time the same, the drive's seek time doubles. The drive can still
seek the same number of cylinders per time interval, it's just that
on a bigger drive (with no partitions), the next piece of data may
be farther away than on a smaller drive.
Likewise, if you half the number of cylinders, the average seek time
is halved.
So, you can speed up the bigger drive by partitioning it.
A Commodore employee on usenet once commented that the quantum drives
did seem more peppier than other drives. (The Amiga folks at Commodore
have lots of different drives laying around for testing their disk
controller.)
So it's pep versus size versus reliability. You still get to decide.
|
2214.5 | "Seeking" the truth. | VCSESU::MOORE | Tom Moore MRO1-3/SL1 297-5224 | Wed Feb 15 1989 20:56 | 18 |
| When you guys start talking about half as many tracks being twice as fast
you seem to forget that seek time is not linear with track offset. The seek
time is the sum of the times to accelerate to max speed, move at constant
velocity, accelerate to zero speed and settle on the track. This may also
include the time to process the command, rotate to the data and transfer the
data if you define the measurement that way. I also thought that average
seek time was just that and not half as long as a full stroke seek or a seek
over half of the tracks. It takes into account the performance of the drive
against a useful distribution of seeks. Making two partitions only helps if
you don't use them all all the time. Then the time to get to your disk is
worse than you seek time because you are seeking over so much empty space.
Of course none of this matters to most people who are just glad that there
is such a big difference between hard disks and floppies.
Maybe some who really understands this will enlighten us. c|(8^)>_
-Tom-
|
2214.6 | Correction | WJG::GUINEAU | | Thu Feb 16 1989 08:55 | 56 |
| re .4:
> The average seek time is how long it takes for the read-write head to move
> from cylinder zero to the maximum cylinder divided by two.
Not at all true. There are several ways to measure average seek time, but
the most common is a 1/3 stroke. So for a 900 cylinder drive, average seek
is how long it takes to go 300 cylinders. (Better yet, take 100 or more sample
1/3 seeks and measure the times and then average them). Another less common
method is to simply random seek over the full range of cylinders for 1000 or
so samples then average all the times.
There are 3 numbers on seek time:
track to track: time to step a single cylinder
full stroke: time from cyl 0 to max cyl
ave seek: time for 1/3 seek
> So if you double the number of cylinders and keep the track to track
> time the same, the drive's seek time doubles. The drive can still
Not true either. The track to track time has nothing to do with average
or full stroke seek. A drive will step from track to track at a fixed rate.
However, when the destination cylinder is not 1 track away, a "seek profile"
is used - or I should say one of many seek profiles is used.
A seek profile is the acceleration profile for the heads. The acceleration
profile has 3 parts: Acceleration, glide, decelleration (sp?). Typically
a drive has 4 or 5 different profiles depending on the length of seek to be made.
So if your going 5 tracks away it uses one profile, 100 tracks away is a
different profile, 300 tracks another, 500 yet another etc. Seek profiles
are optimized to provide the fastest combination of the 3 components for the seek
length involved given the physical constraints of moving the mass of the heads
(inertia,momentum).
With an RD54 doing say 100 seeks at each seek length from cyl zero, you can
*hear* the change in seek profiles!
For example, take a drive with 1000 cylinders and a track to track time of 5ms
(reasonable parms)
If what Randy said were true, the ave seek of this BEAST would be 2.5 SECONDS!
We know this is not true. A drive like this might have a 40ms ave seek. What this
means is the drive took advantage of the fact that it had a long way to go
and accelerated quickly to maximum glide speed then decellerated to land on the
destination.
Randy *is* correct for drives without buffered seek capability (st-506 only)
and those went out with RD50 (5 Mbyte, 5.25" pig) 8 years ago.
John
|
2214.7 | y = ax + b, now divide x by 2 | TLE::RMEYERS | Randy Meyers | Thu Feb 16 1989 15:24 | 53 |
| Re: .5, .6
You folks are correct in your model of seek time, but you have drawn
the wrong conclusions. What I said in .4 is still true.
Typical real world numbers:
600 cylinder drive
28ms "average seek time"
5ms "track to track time"
The average seek time for this drive is the time it takes to move
300 cylinders. That number is NOT 300 times the time it takes to
seek one cylinder.
It is not a true multiple because the heads do have to accelerate,
move to, decelerate, and settle on the track. This is what the seek
time measures. Before you can read data, you must also take into
account the "rotational latency," the amount the time it takes for
the proper data to spin under the head. The average rotational
latency is half the amount of time it take the drive to spin one
complete rotation. That number is not usually included in the seek
time. (The rotational latency is usually a simple statistic: it is
a function of the RPM of the drive. However, more sophisticated
drives, like the Quantum, have track buffers that can cut down on
rotational latency.)
The reasons why half a stroke is used is because, on average, the
next track of data will be half way across the disk.
So, lets assume that all of the track to track time is spent in
starting, stopping, and settling on the track. Those numbers are
roughly a constant for any head movement.
That means of the 28ms to move 300 cylinders, 5ms is not glide time.
If you partition the disk to have half the number of cylinders, then
on average, the next piece of track of data will be half a partition
away. Thus, the typical partition seek time will be 17ms, not 28ms,
not 5ms.
These numbers are rough. The reason why is exactly because of the
different seek profiles for moving the drive head described in .6.
However, as a rough model, it isn't too far off.
>There are 3 numbers on seek time:
>
> track to track: time to step a single cylinder
> full stroke: time from cyl 0 to max cyl
> ave seek: time for 1/3 seek
I have seen drives whose specs did include timings for a variety of
different length seeks. However, I am fairly sure that the average
seek time is the statistical average, 1/2 a full stroke.
|
2214.8 | | ALIEN::POSTPISCHIL | Always mount a scratch monkey. | Fri Feb 17 1989 08:36 | 20 |
| Re .7:
> The reasons why half a stroke is used is because, on average, the next
> track of data will be half way across the disk.
Not unless you're doing something funny. If the head is at one side of
the disk and you want to travel to some other location, that location
will be anywhere from 0 to 1 of the disk away, with 1/2 of the disk
being average. But you are not generally at one side of the disk; the
head is wherever it happened to be last. So you are not traveling from
the edge. You are traveling from one random location to another. A
little math shows the average is 1/3.
In general, disk allocation schemes seek to reduce this even further;
indices are placed in the middle of the disk, files are contiguous when
possible, they are allocated near the middle of the disk, and so on.
This reduces the real-world average even further.
-- edp
|
2214.9 | right | WJG::GUINEAU | | Fri Feb 17 1989 12:49 | 25 |
| re .8 <<< Note 2214.8 by ALIEN::POSTPISCHIL "Always mount a scratch monkey." >>>
Precisely. I checked into a bunch of drive specs (not here with me now)
just to get some REAL numbers. Not a single one has ave = full/2.
In fact, 1/3 stroke is not the most common method of *measuring* it.
Manufactures use the "measure the time to seek between all ordered pairs of
cylinders and average that" method. i.e time from:
0 to 1
0 to 2
0 to 3
.
.
.
0 to max
--------
(sum)/max
This number is consistantly *less* than full/2. And for the exact reason as
.8 states.
John
|
2214.10 | 1/3 is "average" | TLE::RMEYERS | Randy Meyers | Fri Feb 17 1989 18:27 | 21 |
| Re: .8, .9
Last night I tried to see if I could find what I had read about the
max cylinder/2 measurement. I couldn't find any thing that explained
it at all.
So I started doing some math, and established that the number was
under 1/2 when averaged of the set of all initial points of the
disk, with 1/3 looking reasonable.
I concede that the seek time from cylinder 0 to cylinder max/3 is
representative of the true statistical average of the disk.
Of course, that STILL doesn't change the fact that the seek time
in a partition is lower than the seek time in the disk. I did
find seek times on two real disks (modern SCSI disks), and the linear
formula in .7 does closely model the behavior.
So, partition a disk in two, and the average seek time will fall
almost by two (with an even better estimate given by taking treating
the track to track time as a additive constant).
|
2214.11 | Somewhere between 1/4 and 1/2 | TLE::RMEYERS | Randy Meyers | Fri Feb 17 1989 19:30 | 59 |
| Re: .9
>Manufactures use the "measure the time to seek between all ordered pairs of
>cylinders and average that" method. i.e time from:
>
> 0 to 1
> 0 to 2
> 0 to 3
> .
> .
> .
> 0 to max
> --------
> (sum)/max
I think that you meant to say:
0 to 0
.
.
.
max to max
Only averaging seeks starting from 0 leads to the conclusion that
1/2 is more representative than 1/3. It is only when you consider
all ordered pairs to you get 1/3.
You get a total seek time of something like:
n(n+1)a
------- + (n+1)b
2
where n is the max cylinder number and a and b are the constants
which model the movement of the head.
Taking the average of the n+1 seeks in the formula, you get:
na
-- +b
2
Repeating this exercise for all seeks starting from the middle of the
disk yields an average time of:
n(n+2)a
------- +b
4(n+1)
which if n is "big" looks close to na/4+b.
So we know the average seek time is bracketed by the times it takes
to seek 1/4 to 1/2 way through the disk.
Last night I read on how Seagate obtained statistics on their SCSI
drives. They generate 5001 random numbers in the range 0 to
maximum logical block address. They then time the 5000 SCSI seeks
in going from each random block number to the next. The average
of those times is the "average seek time" they report.
|
2214.12 | Filesystem seeks aren't random | TLE::RMEYERS | Randy Meyers | Fri Feb 17 1989 19:40 | 19 |
| Re: .8
> In general, disk allocation schemes seek to reduce this even further;
> indices are placed in the middle of the disk, files are contiguous when
> possible, they are allocated near the middle of the disk, and so on.
> This reduces the real-world average even further.
That is a very good point. Part of the design of any filesystem is
to reduce number of seeks. One of the claims made for the Fast File
System was that it eliminated many seeks the old file system made.
So, an Amiga hard disk run under 1.3 with the fast file system is
less sensitive to seek speeds.
Another thing that occurred to me: Disk geometry affects can decrease
the importance of seek times. The difference between some 32 meg and
48 meg drives from the same manufacturer is that the 30 meg drives
have two platters and the 48 meg drives have three platters. Otherwise
the mechanisms are the same. The 48 meg drive has 50% more storage
capacity in a cylinder, which reduces the need for head movement.
|