Department of Energy Argonne National Laboratory Office of Science NEWTON's Homepage NEWTON's Homepage
NEWTON, Ask A Scientist!
NEWTON Home Page NEWTON Teachers Visit Our Archives Ask A Question How To Ask A Question Question of the Week Our Expert Scientists Volunteer at NEWTON! Frequently Asked Questions Referencing NEWTON About NEWTON About Ask A Scientist Education At Argonne Cache Memory
Status: Other
Age: 20s
Location: N/A
Country: N/A
Date: Around 1999


Computers operate at very high speeds. Current CPU's operate at speeds of 400 million cycles per second or more. What this means is, every 2.5 nanoseconds, the computer can execute a complete processing loop. On modern computers, this means usually executing one or two instructions. This is the speed you will see advertised on a computer--a Pentium III 400.

The problem is, while the computer can operate at this speed, it has to get the program and data to execute from somewhere.

What happens is the program and data is loaded from the hard drive into RAM. From RAM it is loaded into cache RAM, and from there it is executed by the CPU.

Hard drives are very slow compared to the CPU. RAM is much faster than a hard drive, but still 4-5 times slower than your CPU. Also, RAM is erased if the power goes off. Cache RAM is extremely fast--it is capable of delivering data at or near the speed of the CPU.

Cache RAM and normal RAM are very similar in the way they work. Cache is just extremly fast, and expensive.

That is why there is so very little of cache RAM available--it is expensive. In order to reduce the cost of computers, hard drives are used to store huge amounts of data because they are so cheap--some drives cost less than a penny for a megabyte of storage.

RAM is much more expensive--about a dollar for a megabyte of storage. This is over 100 times more expensive than a hard drives.

Cache RAM is a lot more expensive than regular RAM--about $15-20 per megabyte of storage.

In order to reduce the cost of computers, engineers have designed controllers that load data and instructions from the hard drive when they may be needed into RAM. When they are not needed in RAM, something else is loaded. Then, as the computer runs, whatever is needed for that time is loaded into cache. When the controller does a pretty good job at predicting what is needed, the computer will operate at close to its full speed. When the controllers don't do a good job, things will slow down while the CPU waits for data to be loaded from the hard drive to RAM, and then into the cache before it can continue.

Now, to anser your question, cache memory is where the computer gets the program and data it needs to execute. If the cache is slower than your CPU, your computer will be slow. But if it is faster, your computer won't speed up. So you want to make sure the cache is fast enough for your computer, but getting faster cache memory is a waste of money.

Second, the amount of cache memory also affects the speed of your computer. In general, the more cache, the faster your computer will go. Most computers have a fairly small limit on the amount of cache RAM possible. Generally, make sure your computer has as much cache RAM as it can handle.

Hope this helps,
--Eric Tolman

A cache is a short-term storage place. Main computer memory is way slower than microprocessor chips, and they can spend most of their time waiting to get a value from memory to operate on. You could speed up all memory, but this costs lots of money and power. If you can only afford to speed up a small fraction of the total memory, it's a good idea to arrange for the computer to use the fast memory more often than it uses the slow memory. A memory cache is one way to do this.

Tim Mooney

Click here to return to the Computer Science Archives

NEWTON is an electronic community for Science, Math, and Computer Science K-12 Educators, sponsored and operated by Argonne National Laboratory's Educational Programs, Andrew Skipor, Ph.D., Head of Educational Programs.

For assistance with NEWTON contact a System Operator (, or at Argonne's Educational Programs

Educational Programs
Building 360
9700 S. Cass Ave.
Argonne, Illinois
60439-4845, USA
Update: June 2012
Weclome To Newton

Argonne National Laboratory