Cache L1 vs L2
A memória cache é uma memória especial utilizada pela CPU (Unidade Central de Processamento) de um computador com o objetivo de diminuir o tempo médio necessário para acessar a memória. A memória cache é relativamente menor e também mais rápida, que armazena os dados acessados com mais frequência da memória principal. Quando há solicitação de leitura de memória, a memória cache é verificada para ver se os dados existem na memória cache. Se esses dados estiverem na memória cache, não há necessidade de 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 é normalmente 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 nesta hierarquia de caches. L1 é o cache mais próximo da memória principal e é o cache que é verificado primeiro. O cache L2 é o próximo da linha e o segundo mais próximo da memória principal. L1 e L2 variam em velocidades 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 alto na hierarquia de 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 é integrado ao chip. SRAM (Static Random Access Memory) é usado para a implementação de L1.
Cache L2
O cache L2 (também conhecido como cache secundário ou cache de nível 2) é o cache que está próximo a L1 na hierarquia de cache. L2 geralmente é acessado apenas se os dados que estão procurando 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 (Memória de Acesso Aleatório Dinâmico). Na maioria das vezes, o L2 é soldado na placa-mãe bem próximo ao chip (mas não no chip em si), mas alguns processadores como o Pentium Pro se desviaram desse padrão.
Qual é a diferença entre L1 e L2 Cache?
Embora L1 e L2 sejam memórias cache, elas têm suas principais diferenças. L1 e L2 são o primeiro e o segundo cache na hierarquia de níveis de cache. L1 tem uma capacidade de memória menor do que L2. Além disso, L1 pode ser acessado mais rápido do 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 bem próximo ao 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 podem ser encontrados em L2. No entanto, se os caches forem exclusivos, os mesmos dados não estarão disponíveis em L1 e L2.