Central processing unit (CPU) cache is a type of random access memory (RAM) that is built directly into the microprocessor itself of a computer, and is designated as L1 cache. Another variety of CPU cache is limited capacity L2 static RAM (SRAM) chips on the motherboard. Both of these types of memory are the first to be accessed by the microprocessor in performing routine instructions before standard RAM memory is used, and this gives processors improved performance characteristics.
The practice of placing CPU cache memory on microprocessors for immediate access to memory in order to speed up data access for the processor has been done since the creation of the 80486 computer processor made in 1989, which had a rudimentary L1 cache register built into it. Larger levels of L2 cache that were directly integrated into processor functionality came into use in 1995. As of 2011, a third level of CPU cache memory also exists in some computer systems known as L3, which is accessed before the main RAM memory of the system itself is used. Each level of cache is designed to be larger and slower in performance as its distance from the microprocessor increases. The earliest levels of L1 CPU cache were 8 kilobytes in size, with L2 cache on machines as of 2007 already surpassing the 6 megabyte size limit, and some systems as of 2011 having incorporated an L4 cache buffer of up to 64 megabytes in size.
The function of high-speed, low volume cache memory for microprocessors centers around the way that they carry out instructions. As a microprocessor performs operations, it must traditionally send requests for data to main memory across the system bus. In computer terms, this is a very slow process, so CPU designers built in shortcuts for the process for data that is repeatedly accessed by the microprocessor. When frequently accessed data is already loaded into CPU cache, the microprocessor can perform operations at a much faster and more efficient rate. For this reason, this central process unit memory is often referred to as instruction cache or data cache where it is tied directly to the functionality of the microprocessor and hardware of the computer itself. By contrast, much of the data stored in standard RAM on a computer is software cache for the many programs that the computer is running simultaneously.
L1 cache is also often referred to as protected memory, or memory with a no-write allocation, as the data stored in this cache is essential to the function of the computer. If it accidentally gets overwritten, the computer can suffer a general protection fault where it is forced to shut itself down and restart to clear the corrupted CPU cache. Various levels of CPU cache have write buffer functionality, where they will write data stored there back to main memory to free up space in the cache for when more frequently accessed operations need to take a higher priority in processing.
Large amounts of CPU cache will enhance a microprocessor's performance to a point where it can outperform a faster processor that has less cache memory built into the system. The speed of the front-side bus (FSB) is also instrumental in determining microprocessor performance. Bus speeds in general have traditionally been a bottleneck for performance characteristics on personal computers (PCs) where processing has to be channeled back and forth across the bus to memory. High FSB rates as of 2011 for Core 2 processors are at a level of 1,600 megahertz, or 1,600 million cycles per second, of computer instruction sets.