MatewPauls

8 vs 16 MB Cache really better?

6 posts in this topic

More cache makes recently opened programs load faster. It doesn't increase hard drive speeds in reality, but simply allows you to open recently used programs fairly quickly as it doesn't have to access the hard drive.

Share this post


Link to post
Share on other sites

LED ZEPPELIN, isn't the OS caching that works that way? What is read, is stored to RAM for some time (in case it's read again).

Drives cache has two funtions:

read-ahead cache and write cache.

Read-ahead means that while reading sectors, the HDD controller decides to read more sectors than what host asked so that they will be ready on the HDDs internal cache if they are requested. Sectors read are next to the sectors asked.

When doing fast sequential reading (like file copying), cache doesn't matter, as new IO requests arrive so fast the HDD will be the bottle neck and never manages to read-ahead (i.e being faster than the host requesting the files).

In slow sequential reading (like playing an MP3 or video), cache doesn't matter, as the software (probably) has some read-ahead function as well and uses system RAM (much bigger than 16MB) to cache it.

In perfectly random sector accesses, read-ahead doesn't matter as read-ahead read the next sectors from accessed ones. In random access environment the cache hit ratio is incredibly low (16MB cache but up to 750GB of data. Cache is 46875 times smaller).

What cache helps is launching applications and handling several transfers at a time. When sector X is asked, the drive starts to seek that sector. Sector Y (of different data stream) is asked before X is retrieved. HDD reads sector X and notices that to access sector Y there's noticeable rotational latency and HDD controller therefore decides it has spare time to read sectors X+1, X+2, ..., X+N. Then it seeks to sector Y. If sector X+1 is requested (possibly even before sector Y is retrieved), the data is returned from cache memory with no seeking.

Obviously, HDDs (even 15krpm SCSI ones) would be extremely sluggish in multistreaming without the read-ahead caching function. The question of whether 8MB and 16MB have a big difference, is another question. Increasing from 2MB to 8MB did have significant advantage, but that was 4 times the original. 8MB -> 16MB is just 100% increase. Also, the HDDs internal transfer rate defines how much cache is really useful, and firmware has to be optimized.

It's impossible to compare effect of 8MB and 16MB cache unless the drives are otherwise identical. No comparing 7K400 to 7K500 for example. WDxxxxJS versus WDxxxxKS (same manufacturer, same base model, same capacity points, same interface) could be a good comparison to find the answer.

Share this post


Link to post
Share on other sites

I have seen the real application benchmarking on the same testbed for the same series Seagate drives with 8MB vs 16MB cache. Usually the advantage of 16MB cache was from 0% to 5%, an average 2%. So it is not very essential thing to consider in choosing the drive. Of course, it may be that some other manufacturer has better firmware optimizations, but it's also possible that they are using different firmwares for 8MB and 16MB drives, so it is not comparable then again...

Share this post


Link to post
Share on other sites

I would also think that the difference of 8 or 16MB cache would also be dependent on the acces pattern of the programs, it will probably be a bigger difference for higher que depth patterns then for linear single que depth patterns. So I gues servers would benefit more. Since the price differences are very small I would allways go for the bigger cache versions

Share this post


Link to post
Share on other sites

I would think that the biggest advantage would be in delayed writes. But how much of disk I/O is writting?

Don't get me wrong; more cache is better, but 8 to 16MB is so marginal, especially considering drive sizes. Drive caches could easily be in excess of 128MB, which might be of considerably more performance advantage.

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