xcel_jkl

Distinguished
Aug 9, 2010
87
0
18,640
Hi,

Im choosing between a samsung spinpoint f3 with 32mb cache 1TB 3Gb/s SATA

vs

Western digital caviar black 1TB SATA 6Gb/s 64mb cache.

Is the latter worth the $20 increase? Need advice thanks!
 
Solution
Cache IS RAM, but it is located on the HDD's PC board and completely dedicated to that one device. It also is managed by the processor on the HDD's board, taking no resources from the main computer CPU and disk controller. But probably most important is how cache on the HDD is used. For example, when a read request arrives from the disk controller, the HDD's processor locates that sector and, on the assumption that your NEXT request might be for more data from that same file, it will read into its own cache an entire track of data, which will be a few hundred sectors. This is very efficient because, to read ANY sector, it must wait for the disk to turn past the stationary head and "look at" most of the entire track anyway just to find...

Paperdoc

Polypheme
Ambassador
Probably yes IF you are doing heavy disk access work. The double cache can actually speed up many disk operations a modest amount, but NOT huge. It is especially beneficial for sequential access - that is, sustained access to long files in sequence. Look around Tom;s for lab tests of HDD performance on a variety of applications and file types.
 

computernewb

Distinguished
Aug 9, 2010
1,025
0
19,360

hi i had a quesion too. Doesn't cache work just like ram? So if you have decent amount of ram does cache on hard drive really matter?

thanks
 

Paperdoc

Polypheme
Ambassador
Cache IS RAM, but it is located on the HDD's PC board and completely dedicated to that one device. It also is managed by the processor on the HDD's board, taking no resources from the main computer CPU and disk controller. But probably most important is how cache on the HDD is used. For example, when a read request arrives from the disk controller, the HDD's processor locates that sector and, on the assumption that your NEXT request might be for more data from that same file, it will read into its own cache an entire track of data, which will be a few hundred sectors. This is very efficient because, to read ANY sector, it must wait for the disk to turn past the stationary head and "look at" most of the entire track anyway just to find the one it wants. It is better simply to copy ALL of the track into the cache within one disk revolution, then address the right cache location (VERY fast) to get the data required. This may take slightly longer than searching and reading only one sector, but not much. THEN on the next read request, the HDD's first action is to check whether the sector now needed is already in the cache. If so, it is supplied from there, GREATLY reducing the response time. If not, then it can go back to the actual disks and read it from there as above.

If you were to try to replicate this by using main board RAM and the disk controller / CPU to do that work, you would use up a lot of resources doing that work. But worse, if it turns out the data is NOT in that cache of mainboard RAM, you've just wasted all those resources! It is better to risk wasting HDD processor / cache resources that are not needed for other work.

One technique used to optimize these operations is called split set associative cache management. Instead of using all of the cache available for the current task, the HDD's processor sets up sub-divisions of that RAM - say, 4 separate areas. Then it assigns dynamically certain areas to certain datasets (files) and only uses them for that purpose; access to another file is assigned to a different area, leaving the data in the first area still available for the next time THAT file is requested. Often this is done by assigning some areas to read operations, and others to writes. For this purpose, a larger total cache size provides slightly improved efficiency (and speed) because the sub-divisions can be larger for each file currently in use, increasing the probability that the data sought will be in its cache area already.

In earlier times before HDD's acquired on-board controllers, cache RAM, etc., they had really minimal cache RAM on board - about 1 or 2 sector's worth. In those days there ware many utilities (some as part of the DOS OS) that DID do this work using mainboard RAM and the CPU, just because even "wasting" those resources this way was a real improvement over using no cache. Putting these additional separate resources on the HDD and dedicating them to that purpose so that no mainboard resources are used is much better than that.
 
Solution
Paperdoc gave a VERY good explanation on cache usage vs using "memory" RAM.

More important, he also mentioned checking out/comparing the performance between drives. When comparing two drives from the same "brand" the 64 mb cache will be sligthly faster. BUT you can not take that for granted when comparing two diff brands.
(1) There are other factors in the performance equation which could make Brand A (32mb) preform better overall than Brand B with 64mb cache such as platter density.
(2) Looking at cache by itself. The algorthim used to determine what is cached in Brand A (32 mb) could (not saying it is) be more effienct than brand B with its 64 mb cache.

Altho normally 64 is better than 32, it is not a given, So I Repeat - paperdoc's recommendation - read performance reviews.

Eddited - Added.
Note the WD is a SATA 6 drive vs the F3 which is a SATA 3 drive. SATA 6 is twice as fast as Sata 3. First, to get the Benifit, you would need to place it on a SATA 6 controller. 2nd and MORE important the WD will NOT really perform much better on sata6 than if you place it on sata3. MORE OF A MARKETING tool than real benifit.- The ONLY benifit is in burst speed. PS I have one installed on a SATA 6 controller - should have saved the cost diff and just got a good sata II HDD.
 

computernewb

Distinguished
Aug 9, 2010
1,025
0
19,360


what are the numbers after sata? I have one hard disk and i hooked it up to sata 1 on the mobo. Does it make a difference where i plug it into?
 
SATA 1 = 1.5 gb/sec (Slightly faster than IDE 133)
Sata II = Sata 3 = 3 gb/sec
Sata III = Sata 6 = 6 gb/sec

All the newer standards for SATA are backword compatable. Most newer HDDs will have better Performance with SATA II, but not benefit with SATA III (even the HDDs biled as SATA 6, only benifit is in burst speed) To take advantage of SATA 6 you would need a SATA 6 SSD.

Older Generation 1 SATA HDDs do not show an improvement going from Sata I to SATA 2 as they did not fully sataurate the Old IDE (PATA) ATA 133.
 

Paperdoc

Polypheme
Ambassador
RetiredChief is right. In fact, the AVERAGE data transfer rate from a SATA 3.0 Gb/s drive can reach the old SATA 1.5 Gb/s MAX burst rate on only a few models. On any new mobo and SATA drive, you won't find old SATA 1.5 Gb/s systems, anyway - it will all be SATA II (3.0 Gb/s) at least. And as Retired Chief says, SATA 6.0 Gb/s is ONLY an advantage with SSD's.

On the numbers, the mobo labels like SATA_0 and SATA_1 and SATA_2 are just port identifiers - they have NOTHING to do with speeds. The speed specs RetiredChief quotes correctly are the MAX Burst rate of data transfer between the HDD's cache RAM and your mobo's controller. sustained average data transfers are slower.
 

J_Sparrow

Distinguished
Sep 7, 2010
123
0
18,690
wow, all this info is making my head hurt!...

so if I was going to buy 2x 1TB hard drives with 32MB buffers and wanted to RAID them would the buffer still make a difference and if it was RAID 0, would it act like 64MB or only like 32MB?
 
In Raid0 the cache on the HDD will still make a difference, But would not act like a 64 mb cache that acts independent - that is split greater than 32 mb for one member. The cache on the individual member will only cache sectors for that member.
Someone can correct me if I'm wrong.
 

pgerv

Honorable
Oct 4, 2012
64
0
10,630
So when buying a HDD or SSD you want to look at brand reviews then look for a high amount of cache(64MB). You can only take advantage of SATA 6 speeds with an mobo that has SATA 3.0 speed with an SSD? or should the mobo support SATA 6.0 speed in order to get 6.0 speed.?
 

Xoninum

Reputable
Feb 23, 2015
1
0
4,510


RAM stores random data that a program that is open needs on a regular basis and is then deleted/saved on the hard drive when the program is closed. The Cache on a hard drive only serves to find, store, send, and organize files usually to and from the RAM and the CPU. Think of it more of as bandwidth, the higher the bandwidth i.e. (64MB cache) means more room for information to flow through.