Cache L1 vs L2
A memória cache é uma memória especial usada pela CPU (Unidade Central de Processamento) de um computador com a finalidade de diminuir o tempo médio necessário para acessar a memória. A memória cache é uma memória relativamente menor e também mais rápida, que armazena os dados mais frequentemente acessados da memória principal. Quando há solicitação de leitura da memória, a memória cache é verificada para verificar se esses dados existem na memória cache. Se esses dados estiverem na memória cache, não será necessário acessar a memória principal (que leva mais tempo para ser acessada), diminuindo o tempo médio de acesso à memória. Normalmente, existem caches separados para dados e instruções. O cache de dados geralmente é configurado em uma hierarquia de níveis de cache (às vezes chamados de caches multinível). L1 (Nível 1) e L2 (Nível 2) são os principais caches nessa hierarquia de caches. L1 é o cache mais próximo da memória principal e é o cache verificado primeiro. O cache L2 é o próximo da fila e é o segundo mais próximo da memória principal. L1 e L2 variam em velocidade de acesso, localização, tamanho e custo.
Cache L1
O cache L1 (também conhecido como cache primário ou cache de nível 1) é o cache mais importante na hierarquia dos níveis de cache de uma CPU. É o cache mais rápido da hierarquia. Ele tem um tamanho menor e um atraso menor (estado de espera zero), porque geralmente é embutido no chip. SRAM (Static Random Access Memory) é usada para a implementação de L1.
Cache L2
O cache L2 (também conhecido como cache secundário ou nível 2) é o cache ao lado de L1 na hierarquia de cache. L2 geralmente é acessado apenas se os dados que procuram não forem encontrados em L1. L2 é geralmente usado para preencher a lacuna entre o desempenho do processador e a memória. L2 é normalmente implementado usando uma DRAM (Dynamic Random Access Memory). Na maioria das vezes, o L2 é soldado na placa-mãe muito perto do chip (mas não no próprio chip), mas alguns processadores como o Pentium Pro se desviaram desse padrão.
Qual é a diferença entre o cache L1 e L2?
Embora L1 e L2 sejam memórias de cache, elas têm suas principais diferenças. L1 e L2 são o primeiro e o segundo cache na hierarquia dos níveis de cache. L1 tem uma capacidade de memória menor que L2. Além disso, L1 pode ser acessado mais rapidamente que L2. L2 é acessado apenas se os dados solicitados não forem encontrados em L1. L1 é geralmente embutido no chip, enquanto L2 é soldado na placa-mãe muito perto do chip. Portanto, L1 tem um atraso muito pequeno em comparação com L2. Como L1 é implementado usando SRAM e L2 é implementado usando DRAM, L1 não precisa ser atualizado, enquanto L2 precisa ser atualizado. Se os caches forem estritamente inclusivos, todos os dados em L1 também poderão ser encontrados em L2. No entanto, se os caches forem exclusivos, os mesmos dados não estarão disponíveis nos L1 e L2.