Mechanical harddrives - why doesnt peak transferrate scale linear with # of platters?

Npl

Veteran
Well, given that single-platter drivers nowaday reach 100MB/s a drive with 4 platters should be able to provide 400MB/s if those are accessed in parallel.
I dont know why this isnt done on high-performance drives atleast.

Maybe in the past this wasnt done because you would lose 512b sector size and old OSes can have (performance) issues with that. I dont know any other reason why this shouldn't be possible with power-of-two platter drives atleast.
 
If the data you're seeking to transfer is located in the same spot on each platter and you have the i/o throughput it should hit it. The changes of contiguous data at the same spot on four platters is abysmally small though.
 
If the data you're seeking to transfer is located in the same spot on each platter and you have the i/o throughput it should hit it. The changes of contiguous data at the same spot on four platters is abysmally small though.
Thats why talked about "peak", I am aware that it wont help for small files.
And why is the chance small? Using 2 platters in 1 drive should be equal or better than using 2 1-platter drives in RAID. If you read a couple MB of a unfragmented file the platters would provide the odd and even segments, easily hitting the peak?
 
Not just for small files. All of the write heads/arms are attached to a single head actuator. Thus, when the actuator moves to read data from one position on one platter, all of the other heads also move to the same position synchronously. Each individual heads can't be sent to different tracks individually.

You'll need know both the access pattern of what's to be read and the physical layout of the drive to optimize this. I guess the drive could theoretically log reads to some extent and do internal housekeeping to improve speed, but I assume the processing overhead and extra controller logic simply isn't worth it.
 
Im talking about peak, Peak, PEAK transferrate. The same thing you plan to raise if you use RAID 0 Array.

eg. single Platter drive, with 512 Byte sectors:
Code:
               Sector no.:
Platter 1   0    1    2    3    4    5    6    7    8    9   10   11   12   13   14   15  ..

drive with 4 of those platters with interleaved sectors:
effective (what the OS sees) sectors are 4x512B = 2KB
Code:
               Sector no.:
Platter 1   0    4    8   12  ..
Platter 2   1    5    9   13  ..
Platter 3   2    6   10  14  ..
Platter 4   3    7   11  15  ..

reading a continous unfragmented file will be 4 times faster on the 4 platter drive. No significcant extra logic necessary, just read in everything in parallel and interleave - at absolute worst you get the same performance as a single platter drive.
 
Reading one platter = serial stream, no reordering
Reading > 1 platter = reordering
 
Reading one platter = serial stream, no reordering
Reading > 1 platter = reordering
Whatever additional cost there is associated with reordering (just push everything into the cache?) and increasing the throughput I suppose its still less than multiple single-platter harddrives and RAIDing them.. which would yield quite similar increase in peak bandwidth without issues like significant higher latencies in RAID 0. (Some old benches of RAIDed HDDs)
If people build RAID 0 Arrays then theres a market for drives which add a little more silicon for significant higher peak throughput. (handling less than 1 GB/s internal should be no issue nowadays for devices)
 
I don't understand why you're comparing 4 single-platter drives in RAID 0 to 4 platters on one drive.
In the first case you have four independent heads with servos and controls only stabilizing that single head. You have a front-end buffering data from one head only with all data being serial.

In the second case you have 4 hard-linked heads relying on one set of servos and controls - positioning accuracy necessarily decrease - and only one front end for buffering and ordering data.
 
You have a front-end buffering data from one head only with all data being serial.
I dont think think this is significant, pretty cheap to interleave it. RAID can be done even in Software without significant CPU-Load.

In the second case you have 4 hard-linked heads relying on one set of servos and controls - positioning accuracy necessarily decrease - and only one front end for buffering and ordering data.
That might be the problem. so a regular 4 platter drive switches between focusing on its different heads?
I thought that aslong the platters and heads are linked together, if you are correcting one heads position you are also correcting on all other platters/heads. Afterall its the same heads+platters pairs reading and writing, so you only need to recreate the same position each time.. relative differences between heads shouldnt matter.
 
I thought that as long the platters and heads are linked together, if you are correcting one heads position you are also correcting on all other platters/heads. Afterall its the same heads+platters pairs reading and writing, so you only need to recreate the same position each time.. relative differences between heads shouldn't matter.
Yes, but HDD platters aren't perfect. The ideal track for a head isn't the actual one and the drives (at least the modern and high density ones) will constantly be correcting for this. I'm fairly sure that there is a delay for the controller to realign itself when switching between platters as the drive is unable to simply assume that the data underneath of all the drive heads are correct relative to the platter being read currently.
 
so a regular 4 platter drive switches between focusing on its different heads?
I thought that aslong the platters and heads are linked together, if you are correcting one heads position you are also correcting on all other platters/heads.
The track density on any modern harddrive is quite incredible. On a surface only a few cm wide the HDD fits thousands of tracks. This makes the need for accurate tracking imperative. Tiny tiny changes in tolerance affects if the head hits or misses the desired track. Thermal expansion for example will be greater on the lower platter(s) closer to the spindle motor. The difference might be slight, but it's enough.

This means for purely practical reasons you can't read from more than one head at a time because once you "dial in" one track there's basically no telling which track - if any at all! - the other heads will end up hovering over...

Other factors that complicate matters include vibrations etc that also means you can basically only follow one track at a time.
 
The track density on any modern harddrive is quite incredible. On a surface only a few cm wide the HDD fits thousands of tracks.
It's probably a lot more than that. At 400 GB/in^2, bits are 160 square nanometers. If we assume a square bit, that's slightly larger than a millionth of a cm. It's ridiculously dense.

Npl, it's probably possible if you invest enough in head micropositioners, but the low performance benefit wouldn't make it worthwhile. Non-sequential transfer speed is what makes SSDs so fast.
 
Npl, it's probably possible if you invest enough in head micropositioners, but the low performance benefit wouldn't make it worthwhile. Non-sequential transfer speed is what makes SSDs so fast.
Some WD drives (2TB Black) feature "dual actuators", which could in my naive eyes be used to such effect (ie some common coarse positioning and fine per-head correction).

I was coming from the impression that accessing multiple platters at the same time would be more natural than hooking up seperate drives to RAID-Arrays.

If I have to think about the ridiculous measurements used in modern drives I wouldnt even dare to breath if in the same room as a spinning drive. Its mindboggling whats archiveable today and how it just seem to "work with ease" if you look at the end-result.
So there are this incredible ridiculous dense mechanical wonders working right in front (or below) me, forgive me if I`m totally incapable to measure how much more ridiculous my proposed changes would be. I ran out of scales a decade ago :p
 
I'm sure quite a bit of R&D resources have been sunk into the idea of 'single disk striping' over the years. Some company bought by Seagate (Conner?) [Edit: Yup.] had early tech using two separate actuator assemblies, and I've seen some stuff pertaining to the individual movement of arms too. All the major companies making or having made HDDs probably have some tech designed for this in their (patent) portfolios.

My guess is they just never got it cost effective or practical enough, and now SSDs have probably made it moot.

The WD thing doesn't seem to be "two actuators" (for transfer speed), rather a single coarse+fine two-step actuator (for access speed).
 
Last edited by a moderator:
Well, given that single-platter drivers nowaday reach 100MB/s a drive with 4 platters should be able to provide 400MB/s if those are accessed in parallel.
I dont know why this isnt done on high-performance drives atleast.

Maybe in the past this wasnt done because you would lose 512b sector size and old OSes can have (performance) issues with that. I dont know any other reason why this shouldn't be possible with power-of-two platter drives atleast.

Read this.
 
Back
Top