S.ENGINE

Custom Search

RAM(copied)

The Relationship Between Cache and Main Memory
The purpose of this document is to explain the relationship betweencache memory and main memory and what this means when considering an upgradeof your system’s main memory. This is not intended to be an exhaustiveexplanation of all main memory upgrade considerations.
System Memory: Cache and Main Memory
Your Pentium® processor-based system has two types of system memory- cache memory and main memory (main memory is often
referred to as DRAM). Your system memory is a bin for holding instructionsand data for the applications and operating systems you
are running on your PC. The Pentium processor "grabs" the informationfrom this bin, as needed, to perform the operations according to instructionsgiven by the applications you are running. Main memory is the primary binfor holding the instructions and data the processor is using.
The cache memory is similar to the main memory but is a smaller binthat performs faster. The cache memory performs faster by accessing informationin fewer clock cycles. There are two types of cache memory present in themajority of systems shipped. The Level 1 (L1) cache is in the Pentium processor,the Level 2 (L2) cache memory is optional and found on the motherboardof most Pentium processor-based systems.
Consider the following analogy concerning carpenters. The carpenterperforms a number of tasks, using many different tools. Those tools usedmost frequently for the job at hand are likely stored on the tool benchwithin reach for quick access; tools used less frequently are kept in thetool box, requiring more time to retrieve. In this analogy, the carpenteris the processor which is performing operations or tasks; the small groupof frequently used tools on the bench is the cache memory -- within reachfor fast access by the processor. The tools in the tool box are like thedata and instructions stored in main memory, accessible for processing,but requiring more time to retrieve.
Memory and System "Cacheability"
Operating systems and applications use cache memory to store data orinstructions that the processor is working with at the time, or is predictedto work with shortly; this allows the processor to get information quicklyfrom the faster cache memory. The net result is a more efficient and fasterrunning system. To keep the data and the instructions current, the systemcontinuously updates the cache memory, moving information from your system’smain memory to the cache memory. The processor works with the operating
system, application and chipset to predict what data and instructionsthe processor will want to access in the near future. Going back to ourcarpenter analogy, we are switching the tools on the bench with those inthe tool box, to get on the bench in close reach those tools the carpenterwill be using in the near future.
The main memory in your system that can move its information into yoursystem’s cache memory is called the "cacheable memory." Memory in yoursystem that is not cacheable performs as if your system is cacheless, movinginformation as needed directly to the processor without the ability touse the cache memory as a fast retrieval storage bin. All systems havea main memory cacheable limit,
typically 64MB or greater; consult your PC supplier if you have questionson your system's main memory cacheable limit.
Operating System Use of Main Memory and Cacheability
Your operating system, along with the active applications, determinesthe loading of instructions and data into main memory, loading the mainmemory from your hard drive, CD ROM drive, disk drive, or whatever inputdevices your system has. Most of today's mainstream operating systems performthis l oading of main memory beginning from the top main memory "location"and working down.
Refer to this example of "loading from the top" for a system with mainmemory within cacheable limits: Suppose your system has a cacheable mainmemory limit of 64MB and has 16MB of main memory installed and you arerunning an application and operating system that needs 6MB of main memory.If you were to diagnose what main memory was being utilized, you wouldmost likely find
that your system’s 16MB, 15MB,...11MB main memory locations were filled,with your system’s 1MB-10MB main memory remaining empty, ready for moreinformation that may need to be loaded. In this example, all the main memoryinstalled is cacheable and thus this process of loading main memory "fromthe top" is typically transparent to you, the user.
But, suppose you loaded your system with main memory above the cacheablelimits. The loading process of main memory -- loading "from the top" --would mean that your non-cacheable main memory would be loaded first. Oncethe non-cacheable main memory is filled, the cacheable main memory wouldbe loaded. Another example illustrates this point: Suppose your system’smain memory cacheable limit is 64MB again, but now your system has beenloaded to 80MB of main memory (16MB above the cacheable limit) and youwere to run that same application and operating system ran in the previousexample (the one requiring 6MB of main memory). The load "from the top"process, would mean that main memory locations 80MB-75MB would be filled.Since these main memory "locations" are above the main memory cacheablelimit, the information stored at these main memory locations are not cacheable,and cannot use the cache memory as a fast retrieval storage bin. In thisexample, you will likely see a drop in system performance by exceedingthe cacheable main memory limits of the system.
Considerations When Upgrading Main Memory
As noted in the preceding paragraphs, your system’s processor, mainmemory, and cache memory interaction are heavily dependent on each otherto achieve optimal system functionality. The original manufacturer of yourPC takes this into consideration when designing and choosing the partsfor the system. If you plan to upgrade your system’s main memory above64MB, we recommend that you consult your PC supplier to understand yoursystem’s main memory cacheability limits and the implication of exceedingthose limits.
For Intel PCIsets, we offer a portfolio of solutions supporting differentcacheability limits:
Chipsets for the Pentium Processor Family
430VX = 64MB 430HX = 512MB 430TX = 64MB
Chipsets for the Pentium® Pro Processor Family
440FX = 1024MB
This limit is included in the product specifications and technical documentationprovided to our OEM customers. For typical systems
and applications, we do not recommend upgrading main memory above theselimits as a path to increase performance. If you have questions on whichchipset is in your system, consult your PC supplier or system documentation.If you want to learn more on the features of Intel's PCIsets visit URLdeveloper.intel.com/design/pcisets/. If you wish to read Intel PCIsetsspecification sheets, go to developer.intel.com/design/pcisets/specupdt/.

No comments: