logotipo

1 de janeiro de 2024

O que é hierarquia de memória?

Diverso

Na arquitetura de computadores, tipos diferentes de memória são frequentemente usados em conjunto para otimizar o tempo gasto na leitura e inserção de dados. Isso é crucial, pois, um computador gasta boa parte do tempo fazendo esse tipo de tarefa. Os dados mais críticos podem ser armazenados com uma memória mais eficiente e mais próximo de onde estão sendo requeridos, enquanto as informações não cruciais no momento podem ficar em um nível mais baixo da pirâmide, onde é mais lento, porém seu custo é reduzido.

Falando de uma maneira bem simplista, para o computador executar um programa, este deve pesquisar o código executável na sua memória, geralmente em um disco rígido (HD) ou unidade de estado sólido (SSD). Em seguida, esse programa é carregado na memória RAM. Quando o processador precisa de algum dado, ele faz uma requisição para a memória RAM. O problema é que essas requisições são custosas em termos de tempo! Se todas às vezes que o processador precisasse de algum dado, ele tivesse que “perguntar” a memória RAM, o tempo de execução dos programas seria muito maior.

Para resolver isso, existem camadas de memória que guardam as informações importantes mais próximas de onde estão sendo usadas. O primeiro nível de “cache” é a L1. Esse é um tipo de memória extremamente rápida e cara, e serve para guardar dados críticos para o registrador do processador.

O registrador, localizado no topo da pirâmide, é responsável por fornecer dados diretamente ao processador. Em seguida, no terceiro segmento da pirâmide, há o cache para L1, a memória L2, e em seguida o cache para L2, L3. E não para por aqui, daí vêm RAM, o HD/SDD, servidor externo, etc. Essa hierarquia permite manter os dados mais críticos para o CPU em um lugar de acesso rápido, enquanto os não essenciais podem ficar em algum lugar mais baixo da hierarquia, mais barato e, consequentemente, maior.

A regra geral é que, quanto mais próximo do topo, maior a rapidez, e quanto mais longe, mais lenta e barata é a memória.

Abaixo está uma imagem que ilustra essa hierarquia.

Pirâmide hierarquia de memória

Referência

Fonte da imagem: Randal E. Bryant (Author), David R. O'Hallaron (Author), Computer Systems: A Programmer's Perspective, Global Edition 3rd Edition

Voltar para todos os artigos