Want to make creations as awesome as this one?

Transcript

Start

memória cache

Introdução

Características técnicas

Aplicação

sumámrio

A memória cache é uma camada de armazenamento de dados de alta velocidade, que se localiza entre a unidade de processamento central e a memória RAM guarda subconjuntos de dados, geralmente temporário. Essa memória tem como principal função acelerar o acesso a dados e instruções que são frequentemente usadas pelo processador, reduzindo assim o tempo de acesso à memória RAM, ela faz isso armazenando temporariamente cópias de dados ou instruções que pode ser necessário à CPU futuramente. A eficácia da memória cache é baseada no princípio da localidade, que se divide em localidade temporal e espacial

Introdução

Localidade Espacial:

Os dados próximos que foram acessados têm probabilidade de serem requisitados novamente, então a memória armazena informações relacionadas às ao que está sendo acessado.

Localidade Temporal:

Significa que dados e instruções acessados recentemente têm uma maior probabilidade de serem acessados novamente em um curto espaço de tempo, por isso a memória cache os armazena para um aceso mais rápido.

  • Essa memória possui um sistema de camadas hierárquicas que são divididas em L1, L2 e L3. Cada nível desses possui as suas próprias características e ao decorrer que aumentam, elas ficam mais distante da CPU, fazendo assim com que elas fiquem mais lentas.
Cache L1 (Nível 1): A cache L1 é a mais próxima da CPU, por isso é a mais rápida levando em consideração o acesso. Tem uma pequena capacidade, entretanto, possui uma alta eficiência de entrega de dados, por conta disso, ela é geralmente utilizada para instruções de alta prioridade.Cache L2 (Nível 2): A cache L2 é a segunda camada mais distante da CPU, tem uma maior capacidade em comparação a L1, que a deixa mais eficaz para armazenar dados e instruções, ela é dividida em duas partes, a unificada, que armazena dados e informações e a cache separada, que armazena dados ou instruções. Cache l3 (Nível 3): É a cache que fica mais distante da CPU, tem a maior capacidade de hierarquia, é utilizada para armazenar dados compartilhados entre vários núcleos de CPU e ajuda a melhorar o desempenho da máquina.

representação

A análise de tempo da cache, também conhecida como análise de complexidade temporal de cache, é uma técnica usada para avaliar o desempenho de algoritmos e programas em relação ao uso eficiente da memória cache de um computador. O objetivo é entender como os padrões de aceso à memória impactam o desempenho devido hierarquia de cache. A análise de tempo de cache envolver considerar fatores como localidade espacial e localidade temporal para determinar como os dados são buscados e armazenados na cache. Esses padrões ajudam na otimização de algoritmos e de estruturas de dados, fazendo com que os acessos à memória principal estejam mais otimizados.

  • A memória cache possui diversas características técnicas que influenciam no seu desempenho e eficácia na arquitetura de computadores, aqui serão apresentadas as principais dessas características:
Tamanho da Cache: Geralmente medida em quilobytes (KB) ou megabytes (MB), é a capacidade de armazenamento da memória cache, que a L1 possui uma menor quantidade e a L2 e L3, tem uma maior capacidade. Taxa de Acertos (Hit Rate): A taxa de acertos é a porcentagem de vezes em que os dados procurados estão presentes no cache quando são acessados. Um alto índice de acertos é fundamental para melhorar o desempenho, pois reduz a necessidade de acessar a memória principal mais lenta.

Características técnicas:

  • Associação: É a forma com que os dados são mapeados na cache. Ela possui três associações:
Cache Diretamente Mapeada: Cada bloco de memória principal é mapeado para um local específico na cache. Por conta da sua simplicidade pode causar colisões, onde dois blocos de memória competem pelo mesmo local na cache. Cache Associativa por Conjunto: Os blocos de memória são mapeados em conjuntos e cada conjunto pode conter um bloco. Isso reduz as colisões. Cache Totalmente Associativa: Cada bloco de memória pode ser armazenado em qualquer local da cache. É altamente flexíve, mas mais complexo de implementar. Política de Escrita: A política de escrita determina como as operações de escritas são tratadas na cache. Write-Through: A operação de escrita na memória cache é imediatamente refletida na memória principal (memória RAM). Write-Back: As operações são inicialmente escritas na cache e posteriormente são escritas na memória principal substituindo o bloco. Políticas de Substituição: Quando a cache está cheia e uma nova linha de dados precisam ser armazenadas, é necessário substituir uma linha existente. Políticas de substituição, como a política Least Recently Used (LRU) ou First-In, First-Out (FIFO), determinam qual linha será substituída. Latência: A latência de cache é o tempo que leva para acessar dados na cache, quanto menor a latência, mais rápido o acesso. Geralmente as caches L1 têm uma menor latência.
  • A análise de tempo de cache desempenha um papel crítico em várias áreas de ciência da computação e engenharia de sistemas. Ela é usada para entender o desempenho de sistemas de cache e otimizar o uso de caches e otimizar o uso de caches em várias aplicações. Por exemplo:
Arquitetura de Processadores: Nos processadores, a análise de tempo cache projeta hierarquias de cache eficazes, determinando o tamanho e a estrutura de cada nível de cache, bem como as políticas de substituição e de escrita mais adequadas para o máximo desempenho. Redes de Computadores: Em redes, analisa-se para otimizar o armazenamento em cache de informações acessadas frequentemente acessados, por exemplo em páginas web, para reduzir a carga de servidores e melhorar o tempo de resposta. Desenvolvimento de Jogos: Desenvolvedores o utilizam para otimizar o carregamento de ativos dos jogos, como texturas e modelos 3D. Ajudando no desempenho e experiência do usuário.

Aplicação:

THANKS!