Register to reply

L1 and L2 cache? Question

by otomanb
Tags: cache
Share this thread:
otomanb
#1
Dec7-11, 12:36 PM
P: 59
Hello!

According to many sites L1 is internal cache
and Level 2 cache, cache memory that is external to the microprocessor.

but according to this intel core2duo box (photo) , intel is selling this L2 cache on processor not on another chip.

http://i40.tinypic.com/i4fu4n.jpg

why is this so ?
Phys.Org News Partner Science news on Phys.org
Bees able to spot which flowers offer best rewards before landing
Classic Lewis Carroll character inspires new ecological model
When cooperation counts: Researchers find sperm benefit from grouping together in mice
rcgldr
#2
Dec7-11, 04:27 PM
HW Helper
P: 7,048
Some Intel core i7 processors have 3 levels of cache:

http://www.legitreviews.com/article/824/1/
mikeph
#3
Dec8-11, 05:47 AM
P: 1,212
Can you give the links? I thought L1-L3 were always on the chip. It's just faster than having to look up a basic instruction from the RAM every time you need it.

MATLABdude
#5
Dec8-11, 07:09 AM
Sci Advisor
P: 1,724
They're all probably referencing the same source:
http://xkcd.com/978/

L1 is the cache that's used first and most frequently, L2 is used second most, and L3 third most.

I believe that Intel and AMD stopped doing external L2 caches over a decade ago:
http://en.wikipedia.org/wiki/Athlon#...d_.28T-Bird.29
http://en.wikipedia.org/wiki/Pentium_iii#Coppermine
D H
#6
Dec8-11, 07:27 AM
Mentor
P: 15,067
Quote Quote by otomanb View Post
According to many sites L1 is internal cache
and Level 2 cache, cache memory that is external to the microprocessor.

but according to this intel core2duo box (photo) , intel is selling this L2 cache on processor not on another chip.
There is nothing saying that the L2 cache needs to be on another chip, or if it is on the same chip, that it needs to be distinctly separate from the core processor. Putting cache of any type on a chip other than the CPUs would drastically reduce the advantage of having a cache. The primary reason cache exists is because main memory access is so very slow compared to the rate at which the CPU operates. If memory access was just as fast as the CPU itself there would be little need for cache at all. (If main memory was just as fast as the CPU, it might still be handy to have separate data and memory caches so that the machine could be Harvard architecture at its core (faster) but Von Neumann architecture to the outside world (simpler).)

Specialized memory can be made that has very high clock rates. This specialized memory is necessarily small, and increasing the size decreases the operating speed. Hence multiple levels of cache. Primary cache, or L1 cache, is very small but very fast. Because L1 cache is so small, it is helpful to have an intermediate cache(s) to bridge the gap between main memory and the CPU. L2 cache is significantly larger than but is also slower than the primary L1 cache. Because the gap between main memory and CPU operating speeds has widened, some newer machines even have a tertiary cache on the same chip as the CPUs.
fedaykin
#7
Jan10-12, 12:02 AM
P: 124
It's my understanding that L2 caches were often external when they first came out but have since been added to the same die on newer processors. On most multicore systems, theyre actually part of the core, and L3 cache is shared between cores. I think I had a pentium system that had an external L2 cache chip that looked similar to SDRAM in a DIMM package, but I can't find any documentation and it's late.
Cosmo Novice
#8
Jan10-12, 09:33 AM
P: 366
Quote Quote by fedaykin View Post
It's my understanding that L2 caches were often external when they first came out but have since been added to the same die on newer processors. On most multicore systems, theyre actually part of the core, and L3 cache is shared between cores. I think I had a pentium system that had an external L2 cache chip that looked similar to SDRAM in a DIMM package, but I can't find any documentation and it's late.
Thats correct, L2 cache tended to be external on early CPU models, specifically some Intel models. Additionally some L2 cache used to actually sit in RAM direct onto the MOBO.
William Tu
#9
Jan10-12, 11:08 AM
P: 9
I designed a memory controller before. Let me try to explain. Processors or micro controllers run at a much higher clock rate than its peripherals. Accessing instructions or data outside the processor reduces the overall performance because the processor has to stop and wait for its peripherals to respond. A built-in cache inside a processor is a trade off between the cost of a large high speed RAM inside the processor and the hit rate of the instruction/data requests. The higher the hit rate, the better the overall performance, i.e., CPU doesn't need to stop and wait for stuff from the outside. More layers of the cache increases the hit rate, but also increases the cost, because internal high speed RAM, such as SRAM, is more expensive than external slow pace RAM, such as SDRAM. An L2 cache outside of the processor is cheaper than a built-in one. Whether a built-in one is needed depends on your application.
Borek
#10
Jan10-12, 11:44 AM
Admin
Borek's Avatar
P: 23,396
External caches were a hit around the 386/486 times, when processors became fast enough that the memory access was becoming a bottleneck. 386 didn't have an internal cache, so there was only external, one level cache. 486 had an internal cache and could be built without cache on the motherboard (that was the idea behind), in practice most of the computers sold at the time had an external L2 cache on the mobo (although in some cases L2 cache was a fake). I guess that's what people refer to when they speak about L2 external cache. In general external L2 caches disappeared after the introduction of Pentium (on die L2).

http://en.wikipedia.org/wiki/L2_cach...icroprocessors


Register to reply

Related Discussions
Set associative cache Computers 0
Why is Level 1 cache located on the RAM Programming & Computer Science 1
Cache in python? Programming & Computer Science 4
GNW's fact cache Current Events 6
Do microcontrollers have cache? Electrical Engineering 4