O que é um cache de processador?

7

Eu recentemente fiz o download do CPU-Z apenas para verificar as coisas e vi uma guia marcada Cache . Ele mostra o que parece ser tamanhos de memória diferentes, e eu vi processadores sendo anunciados com um cache de tamanho X. Qual é a função disso, e quão grande deve ser trabalhar bem?

    
por Simon Sheehan 15.12.2015 / 13:19

2 respostas

13

Em um computador, você tem várias camadas diferentes de memória, que você pode imaginar "mais perto" ou "mais distante" do processador.

Memórias perto do processador são rápidas, mas pequenas, e memórias distantes do processador são grandes, mas lentas.

A memória mais rápida é composta pelos registros do processador, que podem ser acessados imediatamente pelo processador. Então você tem cache de dados L1, que normalmente é 32K e pode ser acessado em apenas um ciclo de clock, então cache L2 / L3, que são poucos MB (de 2M a 12M) e podem ser acessados em dezenas de ciclos de clock. Em seguida, vem a memória principal, que é muito maior (alguns gigabytes), mas é muito lenta (centenas de ciclos de clock a serem acessados). Em seguida, vem discos, que são centenas de gigabytes grandes, mas muuuuito lentos;)

Isso é comumente conhecido como hierarquia de memória.

O que você deseja, idealmente, são memórias tão grandes quanto discos, mas tão rápidas quanto registros. Para chegar o mais perto possível disso, os dados são continuamente movidos da RAM para registros e vice-versa.

Quem faz tudo isso? Bem, a hierarquia é gerenciada de forma automática de L1 até a memória principal pelo processador, enquanto a memória principal e o disco são gerenciados pelo sistema operacional em cooperação com o processador.

A história completa é muito mais técnica e complicada, mas espero que isso lhe dê algumas ideias;)

    
por 03.06.2011 / 03:21
2

Um cache de processador é uma pequena quantidade de memória no próprio processador ou perto dele que é usado para acelerar o acesso aos dados.

Como os acessos à RAM são significativamente mais lentos que o processamento de dados real, manter os dados mais recentes e usados com frequência próximos ou no processador pode aumentar significativamente o desempenho.

Enquanto a memória principal (RAM) pode ser muito grande (vários gigabytes), a CPU deve esperar vários ciclos de clock antes que possa acessar os dados da memória principal. O cache da CPU pode ser acessado muito rapidamente e geralmente é usado para armazenar os dados usados com mais frequência ou mais recentemente. Quanto maior o cache, menos frequentemente o processador precisará acessar a RAM mais lenta. No entanto, um cache muito grande pode diminuir o acesso, pois o processador precisará de mais tempo para localizar os dados.

Para obter mais informações, consulte o artigo da Wikipédia sobre o cache da CPU . Sinta-se à vontade para adicionar mais detalhes e informações técnicas a essa resposta.

    
por 03.06.2011 / 04:19

Tags