L1 runs at CPU speeds so there is no waits to access data there. L2 runs much slower and is located off chip, it is much faster than system ram but it seems now with the Pentiums and AMD CPU's the L2's are also on chip. Before we used to put em in to the motherboard and we could put in how much we could afford. The cache memory used to cost as much as the RAM. IE they cost almost 10 times as much. The CPU used to have like 1-8K cache and we used to put in 16K to 64K cache memory.
Even hard drives these days come with cache memory usually 2megs or 8megs.
I am quite not sure why you would need L3 cache unless you are using multi-processing. Since in a server type environment you execute the same code, that can be put inside a small memory area for much faster access and this memory is not changed by the CPU itself so the other CPU's don't have to worry about access violations and data corruptions. Almost like a ram disk where you copy data from the hard drive to ram and execute stuff there which is much faster than reading it and executing it from the hard drive itself.
*www.informit.com/articles/article.asp?p=30907&rl=1
Cache within a CPU is split up into levels, which relate normally both to the size of the cache and its access speed. Level 1 (L1) cache is normally small but fast memory, which acts as the first place for the CPU when it goes to look for data. If a desired bit of data is found in the L1 cache, then you'll see a quick result; otherwise the CPU will seek out the Level 2 (L2) cache. L2 caches are normally larger in size than L1 caches, and there's a solid advantage to this design theory. With a small L1 cache, checking for data is relatively quick; it's only for data outside the L1 cache that you need to look further. A larger L2 cache gives you a sizable reservoir for data in a slower to scan environment, but because it's not the first place the CPU will check, you get a good trade-off between latency (the time taken to perform an operation) and the success rate of searching the cache itself.
There's also a third level of cache. While historically L3 cache has been the province of server CPUs, it's starting to become a feature of some consumer desktop processors -- Intel's P4 Extreme Edition processors, for example, feature L3 cache. As you can expect L3 cache to be hit least, it can afford to be larger -- in the case of the P4 Extreme Edition it has 2MB of cache memory, four times as much as it has L2 cache. As the entire cache is situated on the CPU die itself, it's still considerably quicker for the CPU to search the cache levels sequentially than to refer to external storage such as physical memory or hard drives.
L1 cache - Sometimes also known as primary or level 1 cache, is a small amount of high-speed memory that resides on or very close to the CPU. L1 Cache interacts with the CPU for most frequently requested instructions and data.
L2 cache - A specialized memory unit that enhances DRAM performance by providing the CPU with data at speeds ten times faster than DRAM. L2 cache comprised of Static RAM (SRAM), a high-speed RAM that does not need to be refreshed to retain its data. Most computers have two different memory caches; L1 cache, located on the CPU, and L2 cache, located between the CPU and DRAM. L1 cache is faster than L2, and is the first place the CPU looks for its data. If data is not found in L1 cache, the search continues