Sign in to follow this  
Followers 0
DiracDeBroglie

HDD performance <-> Allocation unit size

46 posts in this topic

Hi,

In an attempt to find out the relationship between HDD performance and Allocation unit size (AUS), I formatted a 1 GB partition with a range of AUSs going from 512 bytes to 64 KiB and for every AUS I ran the ATTO Disk Benchmark software (32 bit) to determine the Read/Write performance of that 1GB partition as a function of AUS.

Strangely enough the R/W transfer rate saturated at 120 MB/sec for every AUS starting from 4 KiB to 64 KiB. So whatever the AUS (between 4KiB and 64KiB) the HDD transfer rate (performance) remained approximately the same at 120 MB/sec. This is not what I expected; I was hoping to have a performance that would go through the roof at an AUS of 64 KiB, but apparently that is not the case.

Is there anybody who can confirm such a "flat" relationship between HDD performance and Allocation unit size??

regards

0

Share this post


Link to post
Share on other sites

BAHAHAHAH!!!! Jaclaz is going to have fun with this one!

First, the Rotation Speed is a factor. Second, the Buffer Size is a factor. Third, UDMA is a factor. Fourth, Bus Speed is a factor. Fifth, CPU Speed is a factor.

AUS is not the "leading factor" for I/O Speed. Basically, "it all depends"...

...and more (I'm sure I'll be corrected if wrong).

Edited by submix8c
0

Share this post


Link to post
Share on other sites

Before I moved to SSD, I did similar tests and found out that even the difference between 512b and 4096b was negligable. There is some difference, but nowhere as big as when we read various documents on the subject. I didn't want to discuss about it because:

1) it would show I'm a cheapskate

2) It was not 'scientifically' tested and I wasn't sure if I made a mistake.

But I still hold the opinion that you can't gain noticeable performance from increasing AUS and that such stories are overrated. Excluding RAID stripe size and SSDs.

GL

0

Share this post


Link to post
Share on other sites

The HDD I have is a Seagate 1TB, Model ST31000524AS. The specs can be found at http://www.seagate.com/staticfiles/support/docs/100636864b.pdf

The 120MB/s data transfer rate I measured is consistent with the specs from Seagate where the Sustained data transfer rate OD (max) = 125MB/s. It's just that I was expecting to see the maximum data transfer rate at an AUS of 64KiB only. Instead, I see that 120MB/s for a whole range of AUSs. (Note that the 1GB test partition is not even located on the outermost tracks of the HDD). Well ok, good then. I just wonder why is there the introduction of large AUSs if a smaller AUS has the same data rate?

From my tests I assume ATTO Disk Benchmark software (32 bit) measures the Sustained data transfer rate OD (max). I was wondering if there exists any software/utilities to measure the maximum burst data rate of the HDD? (So using data packs smaller than the HDD buffer size, which is 32MB in my HDDs case)?

regards

Johan

0

Share this post


Link to post
Share on other sites

There are tools like linux the hdparm or hdtach (for windows). Also i think the raw performance speed given by seagate are right for a raw drive (i.e. not formated /partitioned). Hdtach can test an unformated drive.

Jaclaz will probably add many other tools that may be a lot better.

0

Share this post


Link to post
Share on other sites

HDTune is one of the most used tools to measure mechanical drives. It's used in most of the reviews, so you can quickly compare your results. HDTach is outdated (except maybe for IDE drives) because it's single-threaded and doesn't know about queue depths and other SATA things.

GL

0

Share this post


Link to post
Share on other sites

Just did a test with HDTune pro 5.0 trial version, more specifically I used File Benchmark. The *Sustained data transfer rate OD (max)* comes very close to 120MB/s, as I measured with Atto disk benchmark. HDTune shows burst rates of up to 240MB/s, which is still a lot less than the *I/O data-transfer rate (max)* of 600MB/s (SATA III). I wonder if there are any other software tools more effective (than HDTune) in measuring burst rates.

johan

Edited by DiracDeBroglie
0

Share this post


Link to post
Share on other sites

Jaclaz actually is not getting much fun with this. :(

The whole point is that benchmarks are - generally speaking - benchmarks ;) and they are ONLY useful to compare different settings (or different OS or different hardware), BUT the results need to be verified.

In no way thy are (or can be) representative of "real usage".

In other terms, it is perfectly possible that the result of a benchmark (which is an "absract" set of copying data with a given method) seem "almost the same" but on real usage a BIG difference is actually "felt", or viceversa, it is perfectly possible that in a benchmark a given setting produces an astoundingly "better" result, but then when the setting is applied in "real life" no (or very little difference) is "felt".

I personally find that most of the bla-bla about sector/cluster size and alignment is just "bla-bla" and one setting that gives SOME advantages in a given usage will produce a few disadvantages in another usage (or will have anyway some strings attached).

In some cases some advantages can be found "all round", example:

http://reboot.pro/16775/

http://reboot.pro/16783/

but quite obviously the actual relevance only is noticeable with implicitly "slow" devices :ph34r:.

The only thing that I can say is ;):

http://www.imdb.com/title/tt0097216/quotes?qt=qt0362962

jaclaz

0

Share this post


Link to post
Share on other sites
I wonder if there are any other software tools more effective (than HDTune) in measuring burst rates.

I often see some benchmarking sites use Iometer for advanced analysis. For me, it's a bit more than I'd really want to know. :wacko:

GL

0

Share this post


Link to post
Share on other sites

Jaclaz actually is not getting much fun with this. :(

In no way thy are (or can be) representative of "real usage".

Hi Jaclaz, how're doing,

I know that benchmarks can sometimes be only little representative for "real world" applications. I'm using benchmarks merely to get an idea about hardware specs, and check if hardware specs come close to what manufactures claim in their marketing specs. The system drive of mine is a SATAIII (600MB/s) drive, but I haven't seen yet any indication of that in the benchmarks. I did some tests with HDTune Pro v.5, IOmeter, CrystalDiskMark and HDSpeed (all the latest versions, and where possible the 64-bit version). They all give me the same result: Sustained data transfer rate of 120MB/s, which is ok compared to the specs in the documentation of Seagate.

The problem, however, is measuring the burst transfer rate on the SATA link of the drive; that measurement should give me at least an idea about the absolute maximum bandwidth of the HDD and the chipset on the motherboard. With HD Tune Pro, tab |File Benchmark|, the top graph shows peaks up to 240MB/s. I just wonder if that can be considered as the burst rate? I have no idea how reliable the graph is. Then, there is also the first tab |Benchmark|, which gives a burst rate figure in a little [burst rate] bar on the right side of the pane, along with Access time and Transfer rate: Minimum, Maximum, Average. In my test the [burst rate] figure was lower than the Maximum Transfer rate, and sometimes even lower than the Average Transfer rate. Has anyone seen something similar with HDTune Pro??

johan

0

Share this post


Link to post
Share on other sites

The problem, however, is measuring the burst transfer rate on the SATA link of the drive; that measurement should give me at least an idea about the absolute maximum bandwidth of the HDD and the chipset on the motherboard.

Maybe, just maybe, this fits (if you have a suitable nvidia chipset):

http://www.sevenforums.com/performance-maintenance/127138-what-actual-sata-tranfer-rate-real-world.html

And now, some BAD :( news, actual instruments needed to actually measure Disk/SATA speed (among many other things) :ph34r: (example):

http://www.lecroy.com/oscilloscope/oscilloscopeseries.aspx?mseries=343

http://www.lecroy.com/oscilloscope/oscilloscopeseries.aspx?mseries=331

Please take a seat before reading the price tag :w00t:

jaclaz.

0

Share this post


Link to post
Share on other sites

Yes, I just had a look about the Lecroy equiment, turns out very costly: $100,000 !? This is 4 times the price of a normal car, and ... 100 times my notebook.

With HD Tune pro v.5, tab |Benchmark|, I managed to get a burst of 155MB/s; the graphical data, on the other hand, shows bursts up to 240MB/s. However that is still a long way from the SATA III burst speed.

Maybe I could give it one more last try with HDparm from *allen2*. It seems to be a Linux utility, but is there any recent up to date version for Windows 7 available?

johan

Edited by DiracDeBroglie
0

Share this post


Link to post
Share on other sites

Maybe I could give it one more last try with HDparm from *allen2*. It seems to be a Linux utility, but is there any recent up to date version for Windows 7 available?

Cannot say about it, in the sense that Windows 7 and "direct disk" access are "long time enemies" :ph34r:, but yes, there is a Hdparm port to win32 (cannot say about 64) see:

http://reboot.pro/13601/

http://reboot.pro/13601/page__st__125#entry119855

http://hdparm-win32.dyndns.org/hdparm/

that does work under Windows 7 too, but really cannot say if *all* functions will be accessible/working/whatever.

jaclaz

0

Share this post


Link to post
Share on other sites

I tested the Win32 version of HDparm on Win7; note that you need to run HDparm as "(right click) Run as administrator" . A plus point is that it can show the Disk ID, features and settings. Minus point is that there is no grip on the size of the test file, nor on its block size (at least, I could not find any info about it). Also I couldn't find any test features to verify the burst transfer rate over the SATA link of the drive. I just wonder if the most recent LINUX version of HDparm is available somewhere on a Live CD (running on some Linux kernel)?? Maybe the most recent Linux version does more than the Win32 version.

I've also found some other, maybe interesting, HDD performance tester called HDDScan: see http://hddguru.com/software/2006.01.22-HDDScan/ Also that app you need to "Run (it) as administrator". It can also show Disk ID, features and settings, but also with this utility I couldn't find any feature measuring the burst transfer rate.

johan

0

Share this post


Link to post
Share on other sites

Hey, it wasn't me suggesting hdparm as a benchmark tool, was I? :unsure:;)

Most Linux distro's will have hdparm included, BUT (isn't there always a "but") probably it won't get you much nearer to your goal.

You can try parted magic (which is a fairly "light" LiveCD):

http://partedmagic.com/doku.php

JFYI:

http://www.linuxinsight.com/how_fast_is_your_disk.html

http://www.coker.com.au/bonnie++/

and (for NO apparent reason :w00t: - if not to scare :ph34r: you some more after the "equipment price shock" ;)):

http://etbe.coker.com.au/2009/04/22/vibration-strange-sata-performance/

jaclaz

0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.