<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
<br>
<br>
Adam Nielsen wrote:
<blockquote cite="mid:4B734FEA.8060500@uq.edu.au" type="cite"><br>
  <pre wrap="">I am curious as to why this type of battery-backed cache is important. 
The OS would do a large amount of caching (Linux can have a disk cache 
of many gigabytes) which I am sure would be far more effective than the 
small caches on many RAID cards.

Given that the OS, if configured properly, should provide the best type 
of caching possible, why is it still necessary to have RAID cache and 
on-drive cache?  Surely these would provide no additional benefit?

  </pre>
</blockquote>
<br>
While the other posts are accurate, one thing wasn't clarified. And
that is you're confusing read cache and write cache. The "several
gigabytes" are file that linux has <b>read </b>into memory from disk
- allowing quicker access if it needs them again. Most linux file
systems maintain a small write cache and flush it to disk every few
seconds. This ensures file system consistency in the event of a crash
or power loss.<br>
<br>
As the other posters have mentioned, the cache on the RAID cards is
there to improve write performance by making up for (or hiding) the
mechanical limitations of disks. To give you an example, an application
that requires a sync after every operation (like ISC's DHCP server
offering a lease) could only give out a theoretical maximum (actual
results were about 50%) of 250 leases per second (this is the number of
revolutions of a 15k RPM disk drive). By enabling the write cache on a
PERC controller, ISC's DHCP server was able to give out between 1000
and 2000 leases per second (until it became CPU limited) in my testing.<br>
<br>
<br>
</body>
</html>