Coerência de Cache Márcia A. Santos – RA 47748 Novembro/2005.

Slides:



Advertisements
Apresentações semelhantes
Coerência de Cache em Multiprocessadores
Advertisements

Integridade de Dados em Memórias Cache
Coerência de Cache – Parte 2
Capitulo 6: Entrada e Saída
A Interface entre Processadores e Periféricos
Informática Aplica Prof.: Bruno Rafael de Oliveira Rodrigues.
Recuperação Como garantir a integridade da informação, em caso de avarias de HW ou SW forma de suportar a reposição de um estado consistente da informação.
ARQUITETURAS DE COMPUTADORES II
Coerência de Memórias Cache e Modelos de Consistência de Memória
Coerência de Cache MC722 - Projeto de Sistemas Computacionais Prof Rodolfo Jardim de Azevedo André Costa Felipe Sodré Davi Barbosa
Coerência de Cache MO801/MC972. Visão Geral Caches são essenciais Como garantir que os dados presentes na cache estão coerentes? O que é coerência? Mesmos.
Memórias cache CPU procura por dados em L1, depois em L2 e finalmente na memória principal CPU registradores ALU L1 cache barramento de cache barramento.
Processamento de Transação
Memória Compatilhada Distribuída
Banco de Dados Oracle AESO.
Aulas 11 e 12 08/10/10 (Turma 1 e 2) Profa. Sarita
Rganização de Computadores Multiprocessadores Capítulo 9 – Patterson & Hennessy Organização de Computadores Multiprocessadores Capítulo 9 – Patterson &
Curso Técnico em Manutenção e Suporte em Informática
Sincronização e Comunicação entre Processos
Sistemas Operacionais I
Processadores – Aula 3 Professor: André Luis Meneses Silva
Sistemas Operacionais
Processadores – Aula 3 Professor: André Luis Meneses Silva
Sistemas Operacionais I
Arquitectura de Computadores II
Proteção de Memória O sistema operacional deve impedir que um processo tenha acesso ou modifique uma página do sistema sem autorização. Proteção para páginas.
Monitores.
Airam J. Preto , Celso L. Mendes
Sistemas Operacionais
Sistemas Operacionais
Gerência de Memória Fundamentos Swapping Alocação Contígua de memória
SISTEMAS OPERACIONAIS
Subsistemas de memória
Sistemas Operacionais I
Aveiro, 28 de Abril de Arquitectura de Computadores II Ano lectivo 2003/2004 Nuno
Conteúdo Processos e threads Partes do processo
Aula15: Reduzindo Miss Rate e Hit Time
Aula19: Desempenho de SSM Large-Scale MP Sincronização
Controle de concorrência
Introdução a Sistemas Operacionais. SISTEMAS COMPUTACIONAIS HARDWARESOFTWARE USUÁRIOS.
Sistemas Operacionais
SISTEMAS OPERACIONAIS I Memória Virtual e Paginação
Sistemas Operacionais
Unidade Central De Processamento: Processador
Bruno C. Bourbon Jarbas J. de O. Júnior {bcb, cin.ufpe.br
Sistemas Operacionais
DEPARTAMENTO DE INFORMÁTICA UFPE GRECO Gerenciamento de Memória.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 10: Interface de Sistemas de Arquivos.
Sistemas Operacionais
Tipos De Memória.
Multiprocessadores e Paralelismo nível de Thread
Localidade Princípio da localidade è um programa acessa uma
Ch7b-1 Capítulo Sistemas de Memória - Memória Virtual.
Infra-Estrutura de Software Gerenciamento de Memória.
Prof. André Luis M. Silva Hierarquia de Memória Prof. André Luis M. Silva
Gerenciamento de Memória - Capítulo 7 - Sistemas Operacionais Prof. Dr. José Carlos Becceneri Luciana Sêda Cardoso.
Memória.
Gerenciamento de Memória Sistemas Recentes
Multiprocessadores e Paralelismo nível de Thread
Sistemas de Memória Cache em Multiprocessadores
Infra-estrutura Hardware
Arquitetura de computadores
Memória Cache.
1 Estimativa, Teste e Inspeção de Software Gerência de Projetos: Estimativa de Software Marcos Camada
Modelos de Sistema Prof. Dr. Norian Marranghello Grupo 6 Fábio Hitoshi Ide Gilson Watanabe.
Memória Virtual ARQUITETURAS DE COMPUTADORES II Prof. César Augusto M. Marcon.
Integridade de Dados em Memórias Cache ARQUITETURAS DE COMPUTADORES II Prof. César Augusto M. Marcon.
Hierarquia de Memória – Parte 2 Prof. André Luis M. Silva
Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Sistemas Operacionais FATEC-PB Professor: Gustavo Wagner
 Apenas uma parte relativamente pequena do espaço de endereçamento dos programas é acessada em um instante qualquer  Localidade Temporal  Um item referenciado.
Transcrição da apresentação:

Coerência de Cache Márcia A. Santos – RA Novembro/2005

Agenda Objetivo Visão geral do problema Como manter a coerência Exemplos

Objetivo Apresentar o problema da coerência de cache e os diferentes esquemas utilizados para resolvê-lo.

Visão Geral do Problema sistema com um processador  design mais simples  os dados mantidos na cache são acessados por um único processador  somente uma cópia desse dado existirá na cache. sistema com vários processadores  usam várias caches, uma para cada processador  múltiplas cópias dos mesmos dados em caches diferentes

armazenado 5 em X na memória Mem. Compartilhada X : 5 P1 Cache X: P2 Cache X: Mem. Compartilhada X : 5 P1 Cache X: 5 P2 Cache X: 5 leitura X. Valor é copiado para as caches Mem. Compartilhada X : ? P1 Cache X: 6 P2 Cache X: 7 P1 faz X+1 e P2 faz X+2 Visão Geral do Problema Qual Valor Estará em X?

Como Manter a Coerência Através de esquemas baseados em software ou em hardware.  Software: compilador (estática) ou o sistema operacional (dinâmica) fica responsável por garantir a coerência.  Hardware: as inconsistências são identificadas pelo hardware durante a execução (dinâmica).

Como Manter a Coerência Software x Hardware Software  Mais barato  Menos complexo  Não exige hardware adicional Hardware  Mais caro  Mais complexo  Exige hardware adicional  Atende melhor a sistemas com mais multiprocessadores  Utilizado, principalmente, em multiprocessadores comerciais.

Exemplos Sofware – One Time Identifier  Cada página compartilhada possui um identificador único associado à página, chamado one-time identifier.  Um campo de identificador é adicionado para cada linha da cache e para cada entrada da TLB (registrador de identificadores).  A cada atualização da TLB um novo valor de identificador é colocado no campo de identificador  Compara o valor do identificador one-time da entrada de identificadores da TLB com o valor do identificador da entrada da cache no registro.  Valores iguais, tem-se um hit. Caso contrário, tem-se um miss.  Registros são invalidados quando processador sai da região crítica que protege os dados compartilhados e são copiados novamente quando outro processador acessa os dados compartilhados

Exemplos Hardware – Snoopy Write-invalidate - Synapse  Write-invalidate permite apenas um escritor e vários leitores  invalidação de todas as cópias do dado antes que a escrita se inicie  Synapse faz uso de três estados: Invalid, Valid e Dirty  Qualquer cache que possua uma cópia em estado Dirty é a “dona” do bloco. Caso contrário, memória principal  Read Hit: não há problemas de coerência  Read Miss: o bloco é copiado para a cache e a CPU muda o estado da linha na cache para Valid.  Write Hit: o barramento notifica todos os processadores que a linha é Invalid. A linha na cache é marcada como Dirty e todos os outros processadores marcam suas linhas correspondentes como Invalid.  Write Miss: idêntico ao caso anterior

Para os mais curiosos… …outros protocolos: