Arquitectura de Computadores II
|
|
|
- João Frade Faro
- 9 Há anos
- Visualizações:
Transcrição
1 O Fosso de Performance Arquitectura de Computadores II 5. Hierarquia de Memória 5.1. Cache 2004/2005 Paulo Marques Departamento de Eng. Informática Universidade de Coimbra 2 Hierarquia de Memória Conceitos Básicos (Cache Directamente Mapeada) Velocidade Preço n Princípio da localidade espacial Se eu acedi a estes dados, é provável que aceda aos dados que estão próximos n Princípio da localidade temporal Se eu acedi à pouco tempo a estes dados, é provável que lhes vá aceder dentro de pouco tempo LD R1, Cache Cache Directamente Mapeada 1012 MOD 8 = 4 Registos Cache ~128x32bits, 0.25ns ~1MByte, 10ns $5000/GB Memória Central (RAM) ~512Mbyte, 100ns $100/GB Memória... Memória de Massa (Disco) ~200Gbyte, 5ms $1/GB Tamanho Cache Hit O bloco está na cache Cache Miss O bloco não está na cache 3 4
2 Conceitos Básicos (Cache Directamente Mapeada) Cache Directamente Mapeada LB R1, 1012 Cache Line Memória Associatividade Porquê diferentes tipos de associatividade? n Directamente Mapeada n J Rápida a aceder aos dados (só podem estar num local) n L Sempre que existe um miss, limpa a entrada correspondente (hit rate baixo) n Completamente Associativa n L Lenta a aceder aos dados (têm de se comparar todas as tags) n J Quando existe um miss, podemos escolher qual a entrada a eliminar (hit rate elevado) n [E.g. Caches a nível do sistema operativo] n Associativa Por blocos n O melhor (e/ou pior) de ambos os mundos n [E.g. Caches no processador] 7 8
3 Uma cache associativa em blocos de 4 Efeito da associatividade no miss rate 15% 12% 9% 6% 3% 0 One-way 1 KB 2 KB 4 KB 8 KB 16 KB 32 KB Two-way Associativity 64 KB 128 KB Four-way Eight-way 9 10 Efeito do tamanho do bloco no miss rate O que acontece num cache read miss? 1. Envia o endereço em falta para a memória 2. Ordena à memória que efectue a leitura e espera que a mesma complete 3. Escreve o valor lido na cache, actualizando os dados, tag e ligando o bit valid No caso das caches associativas utiliza-se uma das seguintes técnicas para seleccionar o bloco: n Random n Least-Recently Used (LRU) n First-in, First-out (FIFO) 4. Efectivamente lê o valor, partindo da cache n À medida que o tamanho do bloco aumenta... J Localidade Espacial (reaproveitamento de dados) L Poucos Blocos (competição pelos mesmos blocos) L Penalidade nos misses aumenta (...o tempo de ir buscar os blocos) 11 12
4 O que acontece numa escrita? Considerações sobre Memória n A memória central e a cache devem de estar consistentes n Manter ambas consistentes pode sair bastante caro... n Write-through: Sempre que se escreve na cache, os dados são também enviados para a memória central n Utilização de um write-buffer de actualização da memória central n J Simples de implementar n J Coerência de dados (importante em multi-processadores) n L Pode ser lenta, se os programas têm uma taxa de escritas superior ao o write-buffer aguenta n DRAM = Dynamic Random Access n Ênfase na densidade (bits/cm^2) n Latência de acesso / Velocidade de transferência n Tem de ser refrescada periodicamente (basta ler os bits de uma linha) n Write-back: Apenas se escreve na cache; a memória central só é actualizada quando o bloco tem de ser eliminado da cache n É necessária a presença de um dirty-bit a marcar cada entrada em cache n J Utiliza menos largura de banda com a memória (importante em multiprocessadores) n J Várias escritas num bloco apenas implicam uma escrita em memória n L Read misses podem implicar escritas em memória (e.g. se é necessário substituir um bloco dirty) n L Escritas complicadas (e potencialmente lentas). É necessário verificar se se trata de um hit ou miss antes de actualizar a memória; não se pode simplesmente escrever. Utilização de um store-buffer. 13 RAS = Row Access Strobe CAS = Column Access Strobe 14 Evolução da tecnologia DRAM Como aumentar a largura de banda com a memória? CPU CPU CPU Column Access time Year Chip Size $/MB Total Access Time (RAS + CAS) for an Existing Row (CAS) Mbit $ ns 40 ns Mbit $ ns 40 ns Mbit $15 90 ns 30 ns Mbit $10 60 ns 12 ns Mbit $4 60 ns 10 ns Mbit $1 55 ns 7 ns Mbit $ ns 5 ns Mbit $ ns 3 ns 15 Cache Bus a. One-word-wide memory organization b. Wide memory organization n (a) (b) (c) Multiplexor Cache Bus bank 0 bank 1 Cache Vencer a latência de acesso é complicado; mas é possível melhorar a largura de banda! Abordagem assumida até agora Bus largo, acede a todas as palavras de um bloco simultaneamente Interleaved memory, evita o custo da latência de acesso (embora ainda pague o custo da transferência dos dados) Bus bank 2 c. Interleaved memory organization bank 3 16
5 Algumas técnicas para melhorar a performance Exemplos de Caches 1. Hierarquias de Caches 2. Requested Word First & Early Restart 3. Merge Write Buffer 4. Victim Caches Conceito Arquitectura de Computadores II n A memória física de um computador pode ser considerada apenas como uma cache para os dados em disco n Os dados em disco correspondem à memória virtual swap file 5. Hierarquia de Memória 5.2. Memória Virtual 2004/2005 Paulo Marques Departamento de Eng. Informática Universidade de Coimbra [email protected] 20
6 Mapeamento de endereços Aspecto de um sistema com memória virtual 4Gb 4Gb Mb Disco 0 0 Espaço de Espaço de endereçamento endereçamento do processo A do processo B Tabela(s) de Tradução de Endereços 0 Memória física Atenção: Nada obriga a que os endereços físicos tenham Nota: não existe apenas uma tabela de tradução de endereços, mas várias. A tabela do processo corrente é carregada utilizando um registo especial do processador o mesmo tamanho que os endereços virtuais Considerações Importantes Tabela de Páginas (1) n O tamanho das páginas deve ser grande para amortizar o enorme tempo de acesso ao disco n Hoje são tipos valores de 4KB e 16KB. Começam a surgir sistemas de 32KB e 64KB. n É importantíssimo baixar o miss rate n Abordagens completamente associativas n Quando existe uma page fault, a mesma é resolvida em software e não em hardware n O preço de resolver o problema em software é baixo comparado com o preço de ir a disco e/ou de incorporar tal solução em hardware. Para além disso, podem-se utilizar algoritmos mais sofisticados em software. n Write-thought não é uma opção 23 24
7 Tabela de Páginas (1) Translation-Lookaside Buffer (TLB) O que é que falta neste diagrama??? Exemplo de TLB+Cache (Intrinsity FastMATH) Intrinsity FastMATH, c/ TLB hit Nota: Falta mostrar a tabela de páginas (no caso de TLB miss) 27 28
8 Vários acontecimentos possíveis Alguns Exemplos de Processadores AMD Athlon (2.2GHz) Material para ler n Computer Architecture: A Quantitative Approach, 3rd Ed. n Secções 5.1, 5.2, 5.3 n (Brevemente) 5.4 e 5.5 n Secção 5.8 e a parte de 5.9 que diz respeito à tecnologia DRAM n Secção 5.10 n Alternativamente (ou complementarmente), a matéria encontra-se bastante bem explicada no Capítulo 7 do n Computer Organization and Design, 3rd Ed. D. Patterson & J. Hennessy Morgan Kaufmann, ISBN August
9 Questão Interessante» People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise, the programs they write will be pretty weird «Donald Knuth n Multiplicação de Matrizes, 1024x1024 INT (Dual Xeon 2 GHz) [pmarques@ingrid ~/tmp]./mult 1024 Size = 1024x1024 Total time = 57 sec (Pentium Celeron 1 GHz) [pmarques@t10 ~/tmp]./mult 1024 Size = 1024x1024 Total time = 16 sec O que é que se passa aqui?!?!?!?! Organização da Memória Latência de Acesso a Memória [pmarques@ingrid ~/tmp] cat /proc/cpuinfo (...) model name : Intel(R) XEON(TM) CPU 2.00GHz cpu MHz : cache size : 512 KB bogomips : (...) [pmarques@ingrid ~/tmp] [pmarques@t01 ~/tmp] cat /proc/cpuinfo (...) model name : Celeron (Coppermine) cpu MHz : cache size : 128 KB bogomips : (...) [pmarques@t01 ~/tmp] 1GHz 2GHz 35 36
10 Largura de Banda de Acesso a Memória (MB/s) 1GHz 2GHz 37
Organização e Arquitetura de Computadores. Ivan Saraiva Silva
Organização e Arquitetura de Computadores Hierarquia de Memória Ivan Saraiva Silva Hierarquia de Memória A Organização de Memória em um computador é feita de forma hierárquica Registradores, Cache Memória
Capítulo 7 Sistemas de Memória. Ch7a 1
Capítulo 7 Sistemas de Memória Ch7a 1 Memórias: Revisão SRAM (Static RAM): Valor é armazenado por meio da interligação de um par de inversores Rápido, mas consome mais espaço que DRAM (4 a 6 transistores)
Microprocessadores. Memórias
s António M. Gonçalves Pinheiro Departamento de Física Covilhã - Portugal [email protected] Arquitectura de Microcomputador Modelo de Von Neumann Barramento de Endereços µprocessador Entrada/Saída Barramento
Infraestrutura de Hardware. Explorando Desempenho com a Hierarquia de Memória
Infraestrutura de Hardware Explorando Desempenho com a Hierarquia de Memória Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem de alto nível é entendido e
Infraestrutura de Hardware. Explorando a Hierarquia de Memória
Infraestrutura de Hardware Explorando a Hierarquia de Memória Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem de alto nível é entendido e executado pelo
Memória Cache. Walter Fetter Lages.
Memória Cache Walter Fetter Lages [email protected] Universidade Federal do Rio Grande do Sul Escola de Engenharia Departamento de Engenharia Elétrica Copyright (c) Walter Fetter Lages p.1 Introdução SRAM
Hierarquia de memória
Hierarquia de memória Capítulo 6, Secção.{3..} Caches Slides adaptados dos slides do professor Pedro Pereira Consultar slides originais no moodle Centro de Cálculo Instituto Superior de Engenharia de Lisboa
Memória Cache. Aula 24
Memória Cache Aula 24 Introdução Objetivo: oferecer o máximo de memória disponível na tecnologia mais barata, enquanto se fornece acesso na velocidade oferecida pela memória mais rápida Velocidade CPU
Memória Cache Prof. Rômulo Calado Pantaleão Camara. Carga Horária: 60h
Memória Cache Prof. Rômulo Calado Pantaleão Camara Carga Horária: 60h Memória Cache Memória Principal Vs. Cache Fichário Quadro Pasta O fichário representa o disco rígido. A pasta sobre a mesa representa
FUNDAMENTOS DE ARQUITETURAS DE COMPUTADORES MEMÓRIA CACHE CONTINUAÇÃO CAPÍTULO 5. Cristina Boeres
FUNDAMENTOS DE ARQUITETURAS DE COMPUTADORES MEMÓRIA CACHE CONTINUAÇÃO CAPÍTULO 5 Cristina Boeres Mapeamento Associativo por Conjunto! Tenta resolver o problema de conflito de blocos na mesma linha (mapeamento
Hierarquia de Memória. Sistemas de Computação André Luiz da Costa Carvalho
Hierarquia de Memória Sistemas de Computação André Luiz da Costa Carvalho 1 Introdução l Pode ser definida como um local para armazenamento de informações, onde as duas únicas ações possíveis são a leitura
Memória e Hierarquia de Memória. Memória Vs. Armazenamento
Memória e Hierarquia de Memória Memória Vs. Armazenamento Fichário Pasta O fichário representa o disco rígido, com alta capacidade de armazenamento. A pasta sobre a mesa representa a memória, de acesso
Arquitetura de Computadores. Memórias
Arquitetura de Computadores Memórias Relembrando Arquitetura de Von Neuman Memória Acesso por palavra Programas são armazenados aqui Controlador de memoria Dispositivos de entrada Dispositivos de saída
Memórias Cache. Memória
Memórias Cache Memória Organização da cache de memória Funcionamento: CPU regs controlo da cache memória cache Memória central CPU referencia memória Se está em cache acede à cache Senão acede à memória
Arquitetura e Organização de Processadores. Aulas 9 e 10. Memória cache
Universidade Federal do Rio Grande do Sul Instituto de Informática Programa de Pós-Graduação em Computação Arquitetura e Organização de Processadores Aulas 9 e 10 Memória cache Tendências tecnológicas
Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação.
Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de I Organização e Arquitetura Básicas B de (Parte II)
Infra-estrutura Hardware
Memória e Hierarquia de Memória Roteiro da Aula Hierarquia de Memória Localidade temporal e espacial Memória cache Tipos Princípio de funcionamento Melhorando o desempenho Aumento do bloco Aumento da associatividade
Capítulo 5 Livro do Mário Monteiro Conceituação. Elementos de projeto de memória cache
Capítulo 5 Livro do Mário Monteiro Conceituação Princípio da localidade Funcionamento da memória cache Elementos de projeto de memória cache Mapeamento de dados MP/cache Algoritmos de substituição de dados
Níveis de memória. Diferentes velocidades de acesso. Memória Cache. Memórias Auxiliar e Auxiliar-Backup
Memória Níveis de memória Diferentes velocidades de acesso Pequeno Alto(a) Cache RAM Auxiliar Auxiliar-Backup Memória Cache altíssima velocidade de acesso acelerar o processo de busca de informações na
Arquitetura de Computadores
Departamento de Ciência da Computação Bacharelado em Ciência da Computação Arquitetura de Computadores Hierarquia de Memória Gabriel P. Silva Ementa Unidade 3: Hierarquia de Memória 3.1 Registradores 3.2
Capítulo Sistemas de Memória Memória Virtual. Ch7b 1
Capítulo Sistemas de Memória Memória Virtual Ch7b Memória Virtual Memória principal funciona como uma cache para o armazenamento secundário (disco) Virtual addresses Physical addresses Address translation
Princípio da Localidade Apenas uma parte relativamente pequena do espaço de endereçamento dos programas é acessada em um instante qualquer Localidade
Memória Cache Princípio da Localidade Apenas uma parte relativamente pequena do espaço de endereçamento dos programas é acessada em um instante qualquer Localidade Temporal Um item referenciado tende a
Hierarquia de Memória
No projeto de um sistema digital, deve-se ter em mente que hardware menor geralmente é mais rápido do que hardware maior. A propagação do sinal é uma das principais causas de atrasos. No caso da memória,
Memória cache. Prof. Francisco Adelton
Memória cache Prof. Francisco Adelton Memória Cache Seu uso visa obter uma velocidade de acesso à memória próxima da velocidade das memórias mais rápidas e, ao mesmo tempo, disponibilizar no sistema uma
DCC-IM/NCE UFRJ Pós-Graduação em Informática. Gabriel P. Silva. Microarquiteturas de Alto Desempenho
DCC-IM/NCE UFRJ Pós-Graduação em Informática Microarquiteturas de Alto Desempenho Hierarquia de Memória Gabriel P. Silva Introdução Os programadores sempre ambicionaram ter quantidades ilimitadas de memória
Visão geral do sistema de memória de computadores
Visão geral do sistema de memória de computadores 1 Capacidade da memória Humana Pesquisas concluem que o armazenamento de informações na memória humana se dá a uma taxa de aproximadamente 2 bits por segundo
Sistemas de Memória II
Sistemas de Memória II José Costa Introdução à Arquitetura de Computadores Departamento de Engenharia Informática (DEI) Instituto Superior Técnico 2014-11-21 José Costa (DEI/IST) Sistemas de Memória II
Arquitetura e Organização de Computadores. Capítulo 5 Grande e Rápida: Explorando a Hierarquia de Memória
Arquitetura e Organização de Computadores Capítulo 5 Grande e Rápida: Explorando a Hierarquia de Memória Material adaptado de: Patterson e Henessy, Computer Organization and Design 4 th Edition 2 Static
Memória Cache. Memória Cache. Localidade Espacial. Conceito de Localidade. Diferença de velocidade entre Processador/MP
Departamento de Ciência da Computação - UFF Memória Cache Profa. Débora Christina Muchaluat Saade [email protected] Memória Cache Capítulo 5 Livro do Mário Monteiro Conceituação Princípio da localidade
SISTEMAS OPERACIONAIS. 3ª. Lista de Exercícios
SISTEMAS OPERACIONAIS INF09344 - Sistemas Operacionais / INF02780 - Sistemas Operacionais / INF02828 - Sistemas de Programação II Prof a. Roberta Lima Gomes ([email protected]) 3ª. Lista de Exercícios Data
Tecnologias de Construção de Memórias e Memórias RAM, entrelaçada e Virtual
Tecnologias de Construção de Memórias e Memórias RAM, entrelaçada e Virtual Arquiteturas para Alto Desmpenho Prof. [email protected] Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Tempos de Acesso
Memória. Conceitos gerais Hierarquia de memórias
Memória Conceitos gerais Hierarquia de memórias Memória Componente do computador onde os programas e os dados são guardados. Consistem num conjunto de células, cada uma com um identificador: endereço.
Arquitetura de Computadores
Arquitetura de Computadores Aula 03 Prof. Dr. Saulo Amui 1/16 2/16 Memórias Memória A memória é a capacidade de adquirir (aquisição), armazenar (consolidação) e recuperar (evocar) informações disponíveis,
Sistemas Operacionais Gerenciamento de Memória. Carlos Ferraz Jorge Cavalcanti Fonsêca
Sistemas Operacionais Gerenciamento de Memória Carlos Ferraz ([email protected]) Jorge Cavalcanti Fonsêca ([email protected]) Memória Física vs. Memória do Programa Memória P Física Tamanho dos softwares
Hierarquia de Memória
Hierarquia de Memória Luís Nogueira [email protected] Departamento Engenharia Informática Instituto Superior de Engenharia do Porto Hierarquia de Memória p. Introdução Problema Velocidade do CPU muito
Hierarquia de Memória
Hierarquia de Memória Introdução e Análise do Desempenho AC1 Hierarquia da Memória: Análise do Desempenho 1 Hierarquia de Memória A velocidade dos processadores tem aumentado muito mais rapidamente do
Tecnologias de Construção de Memórias e Memórias RAM, entrelaçada e Virtual
Tecnologias de Construção de Memórias e Memórias RAM, entrelaçada e Virtual Arquiteturas para Alto Desmpenho Prof. [email protected] Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Técnicas para Melhorar
Memória Cache: Funcionamento
Microcontroladores e Interfaces º Ano Eng. Electrónica Industrial Carlos A. Silva º Semestre de 5/6 http://www.dei.uminho.pt/lic/mint Assunto: Memória Cache Aula #9 9Maio6-M Memória Cache: Funcionamento
Organização de Computadores
Organização de Computadores Aula 21 Memória Cache Rodrigo Hausen 21 de outubro de 2011 http://cuco.pro.br/ach2034 1/49 Apresentação 1. Bases Teóricas 2. Organização de computadores... 2.2. Execução de
Gerência de Memória. Paginação
Gerência de Memória Paginação Endereçamento Virtual (1) Espaço de endereçamento dos processos não linearmente relacionado com a memória física Cada vez que são usados, os endereços virtuais são convertidos
Sistemas Operacionais Aula 16 Memória Virtual
Sistemas Operacionais Aula 16 Memória Virtual Ivan da Silva Sendin [email protected] FACOM - Universidade Federal de Uberlândia Sistemas OperacionaisAula 16Memória Virtual p. 1 Memória Virtual - Definição
Sistema de Memórias COMPUTADOR CONTROLE ENTRADA VIA DE DADOS SAÍDA PROCESSADOR MEMÓRIA S E TO R R EC RE CEI TA S T EM S E TO R C A RNE S
Sistema de Memórias COMPUTADOR S E TO R R EC EIT AS 0 16 32 RE CEI TA S 4 8 12 20 24 28 36 40 44 CONTROLE S E TO R T EM PER OS VIA DE DADOS ENTRADA 0 48 52 64 68 80 84 1 56 72 88 2 3 60 76 92 4 S E TO
MEMÓRIA CACHE FELIPE G. TORRES
MEMÓRIA CACHE FELIPE G. TORRES MEMÓRIA CACHE O uso da memória cache visa obter velocidade de memória próxima das memórias mais rápidas que existem e, ao mesmo tempo, disponibilizar uma memória de grande
Memória. Gestão do espaço lógico Paginação Segmentação com paginação
Memória Gestão do espaço lógico Paginação Segmentação com paginação Paginação Divide-se a memória física em pequenos blocos de tamanho fixo chamados de páginas físicas (ou frames) o tamanho é uma potência
SSC0112 Organização de Computadores Digitais I
SSC0112 Organização de Computadores Digitais I 23ª Aula Hierarquia de memória Profa. Sarita Mazzini Bruschi [email protected] 1 Memória Memória Todo componente capaz de armazenar bits de informação Características
Memórias cache. João Canas Ferreira. Abril de Porque são efectivas as memórias cache? Hierarquias de memória Caracterização do desempenho
Memórias cache João Canas Ferreira Abril de 2004 c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 1/51 Porque são efectivas as memórias cache? Hierarquias de memória Caracterização do desempenho Colocação e
SRAM Static RAM. E/L Escrita Leitura. FPM DRAM Fast Page Mode EDO DRAM Extended Data Output SDRAM Synchronous DDR SDRAM Double Data Rate RDRAM Rambus
TIPOS DE MEMÓRIA RAM Random Access Memory E/L Escrita Leitura SRAM Static RAM DRAM Dynamic RAM FPM DRAM Fast Page Mode EDO DRAM Extended Data Output SDRAM Synchronous DDR SDRAM Double Data Rate RDRAM Rambus
Programador/a de Informática
481040 - Programador/a de Informática UFCD - 0770 Dispositivos e periféricos Sessão 4 SUMÁRIO Memórias Primárias RAM ROM Cache Comunicam diretamente com o processador; Armazenam pequenas quantidades de
Hierarquia de memória e a memória cache
Hierarquia de memória e a memória cache MAC 344 - Arquitetura de Computadores Prof. Siang Wun Song Baseado parcialmente em W. Stallings - Computer Organization and Architecture Hierarquia de memória Há
Sistemas de Memória IEC - ITA. CES-25 Arquiteturas para Alto Desmpenho. Paulo André Castro
Sistemas de Memória Arquiteturas para Alto Desmpenho Prof. [email protected] Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Conceitos Úteis A cache é divida em blocos com um número fixo de palavras
Organização de Computadores Processadores, Placa Mãe e Memória RAM. Professor: Francisco Ary Alves de Souza
Organização de Computadores Processadores, Placa Mãe e Memória RAM Professor: Francisco Ary Alves de Souza Processadores Processadores: Microprocessador: 2 Processadores Processadores: Trabalha em altas
Memórias Semicondutoras
Memórias Semicondutoras Walter Fetter Lages [email protected] Universidade Federal do Rio Grande do Sul Escola de Engenharia Departamento de Engenharia Elétrica Copyright (c) Walter Fetter Lages p.1 Introdução
Gerência de Memória. Paginação
Gerência de Memória Paginação Endereçamento Virtual (1) O programa usa endereços virtuais É necessário HW para traduzir cada endereço virtual em endereço físico MMU: Memory Management Unit Normalmente
