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.

Slides:



Advertisements
Apresentações semelhantes
Pearson Education Slide 1. Pearson Education Slide 2 Cap í tulo 10 Criado por Frederick H. Colclough, Colorado Technical University Ponteiros e Vetores.
Advertisements

Coerência de Cache em Multiprocessadores
Sistemas Operacionais
Estratégias Pipelined
Coerência de Cache – Parte 2
Os esquemas de reprodução de Kalecki
Noções primitivas! O que é um plano? O que é um ponto?
Modos de Transferência Acesso Direto à Memória (DMA)
Sistemas distribuídos Metas de Projeto Prof. Diovani Milhorim
Construção de Algoritmos Professor: Aquiles Burlamaqui Construção de Algoritmos AULA 07 Aquiles Burlamaqui UERN
MÉTODO LIVRE DE INVEJA.
MÉTODO DO DIVISOR ÚNICO
TRABALHANDO COM DADOS PLUVIOMÉTRICOS
Equação de um lugar geométrico (LG)
Algoritmos e Estruturas de Dados Eng. Elétrica – CEFETES Prof. MSc. Luis Eduardo 2006/2.
2PFG/DE/FEM/UNICAMP – FUNDAMENTOS EM CFD jan-14 Prof, Dr, Ricardo Augusto Mazza1 PRIMEIRO WORKSHOP Prof, Dr, Ricardo A, Mazza 2PFG/DE/FEM/UNICAMP.
Gerenciamento do Disco Gerenciamento do Buffer
Conceitos de Programação Paralela - 2
OpenMP MO801/MC972. Visão geral Biblioteca de mais alto nível para programação paralela Prevê memória compartilhada Requer suporte do compilador Exige.
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
Problemas com Threads MO801/MC972. Muitas threads Se algumas threads ajudam o programa, muitas threads devem ajudar mais –Certo? O overhead de escalonamento.
Capítulo 5: Escalonamento de CPU
Introdução à Computação Gráfica Geometria
Uma aproximação no meio dos nossos dois extremos Motivação: – Se nós não sabemos o valor do vem-1, o que podemos fazer? – Quando nós podemos sempre gerar.
Terceira aula de complemento de mecflu 26/08/2008.
LABORATÓRIO DE MECÂNICA DOS FLUIDOS II
Aulas 11 e 12 08/10/10 (Turma 1 e 2) Profa. Sarita
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação SSC SISTEMAS OPERACIONAIS I Aula.
Rganização de Computadores Multiprocessadores Capítulo 9 – Patterson & Hennessy Organização de Computadores Multiprocessadores Capítulo 9 – Patterson &
Rganização de Computadores Hierarquia de Memórias Capítulo 7 – Patterson & Hennessy (seções 7.1 a 7.3) Organização de Computadores Hierarquia de Memórias.
Sincronização de Processos (5) - Monitores -
Objetivo auxiliar designers na concepção de produtos descrição jogo de cartas com tabuleiro que promove a explicitude e estimula o reuso de informação.
Estruturas de Dados Heterogêneas (struct)
MATRIZES REAIS ( 2ª AULA ).
Sistemas Operacionais I
PROPRIEDADES DE UM GRUPÓIDE
Marco Antonio Montebello Júnior
Revisão do conceito de vetores
Identificando segmentos de mercado e selecionando targets
Variáveis, Tipos de Dados e Constantes
RUP - Cap. 2 – Os 4 P’s (Pessoas, Projeto, Produto e Processo)
SISTEMAS OPERACIONAIS
P4 Ao preço p4 > p3 qual a quantidade que os consumidores domésticos estariam dispostos a comprar? E que quantidade seria produzida no país? Em uma economia.
Algoritmo Comandos de entrada e saída
Airam J. Preto , Celso L. Mendes
Representação de Algoritmos
Soluções Laboratório III
CUDA vs OpenCL Introdução.
Melhoria no gerenciamento de usuários
Estrutura de Dados Unidade 6 Simulação do exercício 6.1 Elaborada por Mauricio Falvo.
Algoritmos e Programação I
Copy Deck- Transportes Profissionais e OTR
Família Intel P5 e P6 P5 P6 NetBurst Incluindo cache L2.
Algoritmos 1º Semestre Materia: Informática Profº: Cristiano.
Organização de um computador
Redes de Petri 1° Exercício
Aula19: Desempenho de SSM Large-Scale MP Sincronização
Propriedades Sejam conjuntos de um espaço vetorial Então:
DI UFPE Sistema de Tipos de Eiffel A Proposal for Making Eiffel Type-safe W. R. Cook ECOOP’87 Proceedings Cambridge University Press, 1989.
Algoritmos e Estruturas de Dados I – Ponteiros
Modelização e Linearização
Hardware Description Language Aula 4 -VHDL
Instituto Federal de Santa Catarina
Multiprocessadores e Paralelismo nível de Thread
Localidade Princípio da localidade è um programa acessa uma
Coerência de Cache Márcia A. Santos – RA Novembro/2005.
Multiprocessadores e Paralelismo nível de Thread
Sistemas de Memória Cache em Multiprocessadores
Efeitos Escreve seu problema aqui Causas Causa 1 Efeito 1 Efeito 2 Efeito 3 Efeito 4 Causa 2 Causa 3 Causa 4.
Transcrição da apresentação:

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 mecanismos disponíveis em sistemas multiprocessados –Não é um problema novo

Modelo Genérico Processador 1 Cache Memória Processador 2 Cache Processador 3 Cache Processador 4 Cache

MSI Modified –O dado foi modificado na cache e está inconsistente com a memória. O bloco da cache é responsável por atualizar a memória Shared –O bloco não foi modificado e existe em pelo menos uma cache. A cache pode removê-lo sem ter que escrever na memória Invalid –O bloco está inválido e deve ser buscado na memória ou em outra cache para ser acessado

Exemplo – MSI Processador 1 Cache Memória Processador 2 Cache Processador 3 Cache Processador 4 Cache P1 lê M[1000] P1 escreve M[1000] P2 lê M[1000] P1 escreve M[1000] P3 lê M[1000] P4 escreve M[1000] P2 lê M[1000] M[1000]

Exemplo – MSI Processador 1 Cache Memória Processador 2 Cache Processador 3 Cache Processador 4 Cache P1 lê M[1000] P1 escreve M[1000] P2 lê M[1000] P1 escreve M[1000] P3 lê M[1000] P4 escreve M[1000] P2 lê M[1000] M[1000] - Modified

Exemplo – MSI Processador 1 Cache Memória Processador 2 Cache Processador 3 Cache Processador 4 Cache P1 lê M[1000] P1 escreve M[1000] P2 lê M[1000] P1 escreve M[1000] P3 lê M[1000] P4 escreve M[1000] P2 lê M[1000] M[1000] – Shared

Exemplo – MSI Processador 1 Cache Memória Processador 2 Cache Processador 3 Cache Processador 4 Cache P1 lê M[1000] P1 escreve M[1000] P2 lê M[1000] P1 escreve M[1000] P3 lê M[1000] P4 escreve M[1000] P2 lê M[1000] M[1000]M[1000] - ModifiedM[1000] – Invalid

Exemplo – MSI Processador 1 Cache Memória Processador 2 Cache Processador 3 Cache Processador 4 Cache P1 lê M[1000] P1 escreve M[1000] P2 lê M[1000] P1 escreve M[1000] P3 lê M[1000] P4 escreve M[1000] P2 lê M[1000] M[1000]M[1000] – Shared

Exemplo – MSI Processador 1 Cache Memória Processador 2 Cache Processador 3 Cache Processador 4 Cache P1 lê M[1000] P1 escreve M[1000] P2 lê M[1000] P1 escreve M[1000] P3 lê M[1000] P4 escreve M[1000] P2 lê M[1000] M[1000] - InvalidM[1000] - ModifiedM[1000] - Invalid

Exemplo – MSI Processador 1 Cache Memória Processador 2 Cache Processador 3 Cache Processador 4 Cache P1 lê M[1000] P1 escreve M[1000] P2 lê M[1000] P1 escreve M[1000] P3 lê M[1000] P4 escreve M[1000] P2 lê M[1000] M[1000] - Shared

Exemplo – MSI Processador 1 Cache Memória Processador 2 Cache Processador 3 Cache Processador 4 Cache P1 lê M[1000] P1 escreve M[1000] P2 lê M[1000] P1 escreve M[1000] P3 lê M[1000] P4 escreve M[1000] P2 lê M[1000] M[1000]

Outros Modelos MESI MOSI MOESI

Escalabilidade Quandos processadores? E para muitos processadores? –Mecanismo de dicionário