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

Tamanho: px
Começar a partir da página:

Download "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"

Transcrição

1 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 identificação Actualização: substituição e escrita c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 2/51

2 Porque são efectivas as memórias cache? Hierarquias de memória Caracterização do desempenho Princípio da proximidade Cache: Uma memória rápida que guarda as instruções/dados usados mais recentemente. Princípio da proximidade: Programas tendem a re-utilizar os dados e as instruções usados recentemente ou mais próximos (90% do tempo em 10% das instruções?). Existem 2 tipos de proximidade: 1. proximidade temporal elementos acedidos recentemente têm maior probabilidade de ser acedidos a seguir; 2. proximidade espacial elementos colocados em posições de memória próximas tendem a ser acedidos em instantes consecutivos. Objectivo: Obter a rapidez de acesso da memória rápida e a capacidade da memória mais lenta. c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 3/51 Porque são efectivas as memórias cache? Hierarquias de memória Caracterização do desempenho Hierarquia de memória Como a memória mais rápida é mais cara, a memória é geralmente organizada numa hierarquia de vários níveis: cada nível tem menor capacidade, é mais rápido e mais caro ( /bit) que o seguinte. Frequentemente cada nível está contido no seguinte (mas nem sempre). A hierarquia de memória também é responsável pela verificação de endereços (já que tem de mapear endereços nos níveis correctos). A importância da hierarquia de memória tem aumentado com os avanços de CPU. (Porquê?) c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 4/51

3 Porque são efectivas as memórias cache? Hierarquias de memória Caracterização do desempenho Hierarquia de memória: situação típica (No ano 2000.) c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 5/51 Porque são efectivas as memórias cache? Hierarquias de memória Caracterização do desempenho Desempenho de CPU vs. memória c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 6/51

4 Porque são efectivas as memórias cache? Hierarquias de memória Caracterização do desempenho Características da hierarquia de memória Nível Nome registos cache memória principal memória de massa Tamanho < 1 KB < 16 MB < 16 GB > 100 GB típico Tecnologia memória multiporto, CMOS SRAM CMOS DRAM disco magnético CMOS Acesso (ns) Largura de banda (MB/s) 10 5 Gerido por compilador hardware OS OS/admin Backup cache memória principal memória de massa CD/banda c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 7/51 Porque são efectivas as memórias cache? Hierarquias de memória Caracterização do desempenho Termos básicos cache hit CPU encontra item na cache (acerto). cache miss CPU não encontra item na cache (falha). bloco conjunto de dados (de tamanho fixo) que é obtido de memória e colocado em cache (contém o item pedido). A proximidade temporal implica que o item será utilizado de novo dentro de pouco tempo; a proximidade espacial implica que haja uma probabilidade elevada de que os outros dados do bloco sejam usados dentro de pouco tempo. O tempo necessário para processar uma falha depende da latência e da largura de banda da memória. A latência determina o tempo necessário para obter o primeiro elemento do bloco. A largura de banda determina o tempo necessário para obter (transferir) o resto do bloco. c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 8/51

5 Porque são efectivas as memórias cache? Hierarquias de memória Caracterização do desempenho Aspectos elementares de desempenho Tempo de execução (CPU): t Ciclos de relógio (CPU): n c Período de relógio: T = 1/f Ciclos de protelamento no acesso a memória: n m Número de acessos a memória: n a Número de falhas: n f Taxa de falhas: t f = n f /n i Número de instruções: n i Penalidade de falha (em ciclos): p f Assumindo que: (a) n c inclui o tempo de tratamento de cache hit; (b) CPU protela durante cache miss. t = (n c + n m ) T n m = n f p f = n i n f n i p f = n i n a n i t f p f c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 9/51 Porque são efectivas as memórias cache? Hierarquias de memória Caracterização do desempenho Aspectos elementares de desempenho (cont.) Os elementos da última equação podem ser medidos com relativa facilidade. Taxas de falhas podem ser avaliadas por simulação usando um address trace (listagem dos endereços ordenados por ordem temporal de acessos). [Não é constante... ] Uma alternativa: contadores embutidos no CPU. Assume-se que taxas de falhas e penalidade de acesso são iguais para leituras e escritas; uma equação mais detalhada deve distinguir as duas situações. Formulação alternativa de taxa de falhas (t f ): n f /n i = f i e então f i = t f n a n i = t f n a n i f i é frequentemente dada em falhas/1000 instruções. c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 10/51

6 Colocação e identificação Actualização: substituição e escrita Quatro questões sobre hierarquias de memória As questões mais importantes sobre um nível da hierarquia de memória são: 1. Onde é colocado um bloco? [colocação] 2. Como determinar se um bloco está presente? [identificação] 3. Que bloco deve ser substituído quando ocorre uma falha? [substituição] 4. O que acontece durante a escrita? [estratégia de escrita] c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 11/51 Colocação e identificação Actualização: substituição e escrita Localização dos dados A localização dos dados em cache permite distinguir 3 categorias de organização: 1. Um bloco tem apenas um lugar possível: mapeamento directo [direct mapped cache]. 2. Um bloco pode ser colocado em qualquer posição: memória totalmente associativa. 3. Um bloco pode ser colocado em qualquer posição de num conjunto restrito: memória associativa por conjuntos. A associatividade é caracterizada por N, o número de elementos de um conjunto [n-way set associative cache]. As implementações mais frequentes têm associatividade 1 (mapeamento directo), 2 ou 4. c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 12/51

7 Colocação e identificação Actualização: substituição e escrita Associatividade c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 13/51 Colocação e identificação Actualização: substituição e escrita Identificação de um bloco em cache A cada bloco está associada uma etiqueta (parte do endereço). As etiquetas de todas as posições possíveis são verificadas em paralelo. Posições válidas são assinaladas por um bit de validade. Estrutura de um endereço de memória: c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 14/51

8 Colocação e identificação Actualização: substituição e escrita Estratégia de substituição Mapeamento directo Não há escolha, já que um bloco apenas pode residir numa posição. Para memórias associativas, a escolha do elemento do conjunto a ser substituído por ser feita: aleatoriamente a escolha é feita (pseudo-)aleatoriamente. least-recentely used (LRU) Usa o passado para predizer o futuro: o bloco não usado (acedido) há mais tempo é substituído (corolário do princípio da proximidade). first-in, first-out (FIFO) Aproximação a LRU: substituir o bloco mais velho. A implementação de LRU é a mais complicada, pelo que se usa frequentemente um método aproximado (principalmente FIFO). c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 15/51 Colocação e identificação Actualização: substituição e escrita Influência da estratégia de substituição no desempenho Exemplo para cache de dados com blocos de 64 bytes (Alpha 21264). Associatividade 2-way 4-way 8-way Tam. LRU Aleat. FIFO LRU Aleat. FIFO LRU Aleat. FIFO 16 KB KB KB Em falhas por milhar de instruções. c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 16/51

9 Colocação e identificação Actualização: substituição e escrita Estratégia de escrita (1/2) Leituras são muito mais numerosas que escritas ( 21% das instruções que acedem à cache de dados). O ênfase é colocado na leitura, que é a operação mais fácil. Existem duas grandes estratégias de escrita: 1. write through A informação é escrita simultaneamente em cache e na memória do nível seguinte. 2. write back A informação é escrita apenas em cache: o bloco modificado é escrito em memória quando é substituído. É usado um bit para indicar se o bloco em cache foi modificado: dirty bit. Um bloco não modificado limpo não precisa de ser escrito em memória aquando da substituição. c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 17/51 Colocação e identificação Actualização: substituição e escrita Estratégia de escrita (2/2) Vantagens de write back: 1. escritas à velocidade da cache; 2. múltiplas escrita no mesmo bloco requerem apenas um acesso à memória (reduz consumo de largura de banda e de potência). Vantagens de write through: 1. memória cache sempre limpa (uma falha de leitura não resulta em escritas na memória de nível seguinte); 2. o nível seguinte mantém a versão mais recente dos dados. Com write through, o CPU pode protelar à espera que uma escrita termine (write stall) usar um write buffer. Comportamento numa falha de escrita: 1. write allocate um bloco é alocado para guardar o novo valor; 2. no-write allocate Apenas a memória de nível seguinte é actualizada; a cache não é afectada. write back + write allocate, write through + no-write allocate c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 18/51

10 Colocação e identificação Actualização: substituição e escrita Examplo: Cache de dados do Alpha c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 19/51 Colocação e identificação Actualização: substituição e escrita Exemplo: Cache unificada vs. caches separadas Tamanho (KB) Instruções Dados Unificada Falhas por 1000 instruções; referências a instruções: 74%; 2-way; blocos de 64 bytes. c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 20/51

11 Colocação e identificação Actualização: substituição e escrita Mais aspectos de desempenho de memória cache A taxa de falhas não constitui um bom índice de desempenho (o número de instruções executadas também não). O tempo médio de acesso a memória t m é melhor: t m = t h + t f p f em que t h é o tempo gasta em acesso à cache (h=hit). Para CPU com execução em ordem, t m é um bom índice de previsão do desempenho. (Convenção: o tempo t h é incluído no tempo de execução de instruções.) Falhas de acesso têm um efeito duplo sobre o desempenho: 1. Quanto menor for o CPI (de execução), tanto maior é o impacto relativo de um número fixo de ciclos de penalização por falha. 2. Para duas hierarquias de memória idêntica, o CPU mais rápido tem uma penalidade maior (em ciclos). c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 21/51 Aumentar o número de níveis As equações de desempenho indicam que melhorias da penalidade de falha são tão benéficas como melhorias da taxa de falhas. A crescente diferença de desempenho entre memórias e CPU leva a um aumento do custo relativo das penalidades. Técnica 1: Acrescentar níveis intermédios de memória cache. O tempo médio de acesso é: t m = t h1 + t f 1 (t h2 + t f 2 p f 2 ) taxa de falhas local N o de falhas a dividir pelo n o de acessos. taxa de falhas global N o de falhas a dividir pelo n o de acessos gerados pelo CPU. Número médio de falhas por instrução é f i = f i1 t h2 + f i2 p f 2 c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 22/51

12 Medidas empíricas para caches multinível (1/2) c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 23/51 Medidas empíricas para caches multinível (2/2) c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 24/51

13 Leitura inteligente de blocos Técnica 2: Não esperar pela leitura do bloco completo antes de satisfazer o pedido do CPU. Palavra crítica primeiro Obter a palavra desejada de memória e enviá-la para o CPU; posteriormente ler as restantes palavras da linha. Early restart Obter as palavras por ordem normal; assim que a palavra pretendida estiver disponível, enviá-la para o CPU. Estas técnicas só trazem benefícios para memórias caches com blocos compridos. Caso próxima leitura seja do mesmo bloco, pode ocorrer nova falha. c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 25/51 Conceder prioridade às operações de leitura Técnica 3: Dar prioridade às operações de leitura sobre as operações de escrita. Para caches write-through, é importante a existência de um write buffer; mas mesmo memórias write-back beneficiam da sua existência. Contudo: write buffer pode conter valor de uma posição necessária para satisfazer uma falha de leitura. Altenativas: 1. Falha de leitura só é satisfeita depois de o write buffer ser esvaziado ( protelamento). 2. O conteúdo do write buffer é verificado (em paralelo) para se detectarem e resolverem eventuais colisões; abordagem usada em quase todos os CPUs não embutidos. c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 26/51

14 Combinação de operações de escrita Técnica 4: Combinar operações de escrita para posições próximas. Quando o write buffer está cheio e é necessário proceder a uma escrita, a memória cache (e o CPU) devem esperar que surja uma vaga. Se o write buffer contiver blocos, verifica-se se o novo bloco é contíguo a algum dos existentes, procedendo-se à sua combinação (merging write buffer). Esta técnica aproveita o facto de ser frequentemente mais rápido escrever dados de rajada. c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 27/51 Combinação de escritas: exemplo c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 28/51

15 Usar uma cache de vítimas Técnica 5: Manter os blocos descartados. Como os blocos descartados já foram lidos, podem ser reutilizados a baixo custo. Requer uma pequena memória cache adicional, completamente associativa. A cache de vítimas guarda apenas blocos descartados por causa de falhas (as vítimas ). Esta cache é verificada antes de se proceder ao acesso ao próximo nível de memória. Exemplo: uma cache de vítimas com 4 posições pode evitar 25% das falhas de uma memória cache de dados de 4 KB, direct-mapped. c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 29/51 Caches de vítimas: exemplo c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 30/51

16 Classificação de falhas Falhas podem ser classificadas segundo os três C s: compulsórias O primeiro acesso a um bloco não pode ter sucesso (falhas de arranque a frio). capacidade Falhas causadas pela ausência de blocos que já estiveram em cache mas foram retirados por falta de espaço. conflito São falhas causadas pela impossibilidade de ocupação simultânea de uma posição ou conjunto (falhas de colisão ou interferência). Falhas compulsórias ocorrem mesmo em caches infinitas. Falhas compulsórias e de capacidade ocorrem em caches completamente associativas. Memórias associativas por conjuntos também têm falhas de conflito. c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 31/51 Repartição de taxas de falhas por categoria (1/2) Cache de 4 kb: Assoc. Total Compulsórias Capacidade Conflito (%) (%) (%) Cache de 512 kb: Assoc. Total Compulsórias Capacidade Conflito (%) (%) (%) c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 32/51

17 Repartição de taxas de falhas por categoria (2/2) Associatividade 1 : Tam. (kb) Total Compulsórias Capacidade Conflito (%) (%) (%) Associatividade 8: Tam. (kb) Total Compulsórias Capacidade Conflito (%) (%) (%) c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 33/51 Aumentar a dimensão dos blocos A maneira mais simples de reduzir a taxa de falhas é aumentar a dimensão dos blocos (aproveitamento da proximidade espacial). Desvantagens: aumenta a penalidade de falhas; pode aumentar o número de falhas por conflito; pode aumentar as falhas de capacidade (em caches pequenas). A escolha da dimensão dos blocos também depende das características do nível seguinte de memória: baixa latência blocos pequenos (p. ex.). c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 34/51

18 Dimensão dos blocos: medidas empíricas c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 35/51 Dimensão dos blocos vs. tempo de acesso Tamanho da cache Bloco (B) Penal. 4 kb 16 kb 64 kb 256 kb Técnica 2: Aumentar o tamanho da memória cache. Aumento de custo e de tempo de acesso. c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 36/51

19 Aumentar a associatividade Aumentar a associatividade melhora a taxa de falhas mas aumenta o tempo médio de acesso. Regras empíricas: 1. Para efeitos práticos, associatividade 8 = infinito. 2. Uma memória direct mapped de tamanho N tem a mesma taxa de falhas que uma memória de associatividade 2 e de tamanho N/2. Associatividade Tamanho (kb) c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 37/51 Predição de elemento do conjunto Objectivo: Reduzir n o de falhas de conflito mas manter o tempo de acesso de memórias direct mapped. Manter informação para predizer que elemento de um bloco vai ser usado no próximo acesso. Quando a predição falha, é necessário verificar os outros blocos do conjunto. Alpha [assoc 2 I-cache]: Cada bloco tem um bit a indicar qual dos dois blocos (do conjunto que vier a ser seleccionado) a usar no acesso seguinte. Predição correcta: 1 ciclo; incorrecta: 3 ciclos. Taxa de acertos: 85%. c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 38/51

20 Optimizações de software Técnica 5: Compilador modifica código para aproveitar melhor as memórias cache. Exemplo: reordenação de subrotinas para reduzir falhas de conflito [redução de 75% para cache de 8 kb]. Troca de ciclos /* Pior */ /* Melhor */ for (j=0; j<100; j++) for (i=0; i<5000; i++) for (i=0; i<5000; i++) for (j=0; j<100;j++) x[i][j]=2*x[i][j]; x[i][j]=2*x[i][j]; Porquê? c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 39/51 Exemplo: Multiplicação de matrizes (1/2) for (i = 0; i < N; i++) for (j = 0; j < N; j++) { r = 0; for (k=0; k < N; k++) r = r + y[i][k] * z[k][j]; x[i][j] = r; } c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 40/51

21 Exemplo: Multiplicação de matrizes (2/2) for (jj = 0; jj < N; jj=jj+b) /* x[][] a zero, bloco BxB */ for (kk = 0; kk < N; kk = kk+b) for (i = 0; i < N; i++) for (j = jj; j < min(jj+b, N); j++) { r = 0; for (k = kk; k < min(kk+b,n); k++) r = r + y[i][k] * z[k][j]; x[i][j] = r; } c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 41/51 Acessos a memória sem protelamento Outra abordagem para aumentar o desempenho de sistemas com caches consiste em sobrepor temporalmente a actividade da hierarquia de memória e do CPU. Técnica 1: Usar uma memória que não protela nas falhas de leitura (só interessa com execução fora de ordem). A memória continua a responder a pedidos que resultem em acertos enquanto processa uma falha (hit under miss). Extensão: Suportar múltiplas falhas simultâneas; o interesse desta abordagem depende da capacidade do nível seguinte da hierarquia. Desvantagens: 1. Elevada complexidade de implementação. 2. Dificuldade de avaliação de desempenho. c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 42/51

22 Non-blocking caches: medidas empíricas c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 43/51 Obtenção prévia de instruções e dados Técnica 2: A estratégia de obter um bloco antes de ele ser necessário pode ser aplicada a instruções e dados. Os blocos colocados em cache ou num buffer externo. Blocos de instruções são geralmente tratados pelo processador que obtém dois blocos quando existe uma falha. O bloco pedido é enviado para a cache; o outro é guardado no instruction stream buffer. Um ISB apanha cerca de 15%-25% das falhas de uma cache DM, 4 kb, 16 B/bloco. Se o ISB tiver capacidade para 16 blocos, a taxa sobe para 72%. Para acessos a dados, um valor de 25% é típico (4 kb, DM). É possível ter múltiplos DSB a fazerem obtenção prévia de dados de endereços diferentes: 42%. c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 44/51

23 Obtenção prévia controlada por software Técnica 3: O compilador inclui instruções de prefetch para pedir dados antes de estes serem necessários. Register prefetch: carregar valor para um registo; cache prefetch: carregar valor apenas para cache. Estas instruções são geralmente usadas com memórias cache que não protelem nas falhas de leitura. Este técnica é particularmente efectiva no processamento de ciclos. Desvantagem: Overhead de instruções; contudo, os benefícios são geralmente superiores. c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 45/51 Redução do tamanho da cache O tempo de acesso à cache limita o ciclo de relógio da maioria dos processadores. Técnica 1: Usar caches simples e pequenas. Preferir caches do tipo direct access. Preferir caches suficientemente pequenas para ficarem on-chip. Manter etiquetas de L2 on-chip. A dimensão das caches L1 tem vindo a manter-se constante nas gerações mais recentes de processadores. Pentium III (I-cache): 16 k B; Pentium 4: 8 kb. c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 46/51

24 Tempo de acesso em caches CMOS: estimativas c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 47/51 Evitar conversão de endereços na indexação Caches devem lidar com a conversão entre endereços virtuais e físicos. Caches de endereços virtuais (caches virtuais) tornam mais simples as leituras. Desvantagens de caches virtuais: 1. permissões conversão virtual real implica verificar permissões; sol.: copiar informação de TLB. 2. gestão de processos cada troca de contexto obriga a limpar a cache; sol: incluir etiquetas de processo. 3. aliases s.o. e programas podem referenciar a mesma posição física por diferentes endereços virtuais (simultaneamente); sol: verificar se não existem endereços físicos repetidos. 4. E/S interacção com periféricos requer uso de endereços físicos. c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 48/51

25 Taxa de falhas para endereços virtuais: medidas c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 49/51 Caches com índices virtuais e endereços físicos Pipeline Técnica 3: (solução de compromisso) Usar a parte comum a endereços reais e virtuais (o deslocamento) para indexar a cache; a comparação de endereços usa endereços reais (entretando convertidos) para comparação de etiquetas. Limitação: Uma cache DM não pode ser maior que o tamanho da página. (Porquê?) Solução: Aumentar a associatividade. Pentium III: páginas de 8 kb, com cache 2-way de 16 kb. IBM 3033 (cache): pág. de 4 kb, 64 kb de cache, 16-way. Técnica 3: Implementar acesso pipelined à cache; obter um item demora vários ciclos (não reduz latência). c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 50/51

26 Caches de rastos Técnica 4: A cache regista sequências dinâmicas de instruções executadas, incluindo saltos tomados. (trace cache). Predição de saltos tem de ser incluída na cache. Desvantagens: 1. Complexidade: os endereços não estão alinhados em potências de A mesma instrução pode estar em várias posições da cache. Vantagem: Melhor utilização da cache: blocos longos não desperdiçam partes devido a saltos. Exemplo: AMD Athlon pode ter instruções num bloco de 64 B; saltos com frequência de 1 em cada 5-10 instruções. c JCF, 2004 ASPD (FEUP/LEEC) Memórias cache 51/51

Memórias cache: uma introdução

Memórias cache: uma introdução Memórias cache: uma introdução João Canas Ferreira Dezembro de 2006 Contém figuras de Computer Architecture: A Quantitative Approach, J. Hennessey & D. Patterson, 3ª. ed., MKP 2006 AAC (FEUP/MIEIC) Memórias

Leia mais

Hierarquias de memória

Hierarquias de memória Hierarquias de memória João Canas Ferreira Novembro de 2004 Contém figuras de Computer Architecture: A Quantitative Approach, J. Hennessey & D. Patterson, 3 a. ed., MKP c JCF, 2004 AAC (FEUP/LEIC) Hierarquias

Leia mais

Hierarquia de Memória

Hierarquia de Memória Hierarquia de Memória Organização da cache AC1 Hierarquia da Memória: Organização 1 Mapeamento Directo A cada endereço de memória corresponde apenas uma linha da cache. linha = resto (endereço do bloco

Leia mais

Arquitectura de Computadores

Arquitectura de Computadores Arquitectura de Computadores Hierarquia de Memória; Memória Cache (13.2 e 13.3) José Monteiro Licenciatura em Engenharia Informática e de Computadores Departamento de Engenharia Informática (DEI) Instituto

Leia mais

SSC0611 Arquitetura de Computadores

SSC0611 Arquitetura de Computadores SSC0611 Arquitetura de Computadores 5ª e 6ª Aulas Revisão de Hierarquia de Memória Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br 1 Memória Memória Todo componente capaz de armazenar bits de informação

Leia mais

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 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

Leia mais

Memórias cache. Tópicos. João Canas Ferreira 2007-11-15. Tópicos de Arquitectura de Computadores. 1 Aspectos elementares

Memórias cache. Tópicos. João Canas Ferreira 2007-11-15. Tópicos de Arquitectura de Computadores. 1 Aspectos elementares Memórias cache João Canas Ferreira 2007-11-15 Tópicos de Arquitectura de Computadores Assuntos Tópicos 1 Aspectos elementares 2 Alternativas de implementação e desempenho 3 Melhoramento do desempenho de

Leia mais

SSC0112 Organização de Computadores Digitais I

SSC0112 Organização de Computadores Digitais I SSC0112 Organização de Computadores Digitais I 20ª Aula Hierarquia de memória Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br 1 Princípios básicos Definição: Tamanho da cache Tamanho do bloco Função de

Leia mais

Hierarquia de Memória

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,

Leia mais

Princípio da Localidade Apenas uma parte relativamente pequena do espaço de endereçamento dos programas é acessada em um instante qualquer Localidade

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

Leia mais

Arquitectura de Computadores (ACom)

Arquitectura de Computadores (ACom) Arquitectura de Computadores (ACom) MEAer Acetatos das Aulas Teóricas Versão 4.0 - Português Aula N o 22: Título: Sumário: cache; cache por blocos; Política de substituição; Tratamento das operações de

Leia mais

ELECTRÓNICA DE COMPUTADORES. Sumário

ELECTRÓNICA DE COMPUTADORES. Sumário ELTRÓNICA DE COMPUTADORES Aulas nº14 e15 Memórias tampão (s) 12.1 Sumário Princípio da localidade espacial e temporal Organização das caches s de dados: políticas de escrita e estratégias de alocação Interligação

Leia mais

Memoria. UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática

Memoria. UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática Arquitectura de Computadores II Engenharia Informática (11545) Tecnologias e Sistemas de Informação (6621) Memoria Fonte: Arquitectura de Computadores, José Delgado, IST, 2004 Nuno Pombo / Paulo Fazendeiro

Leia mais

Infraestrutura de Hardware. Explorando Desempenho com a Hierarquia de Memória

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

Leia mais

Arquitetura e Organização de Processadores. Aulas 9 e 10. Memória cache

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

Leia mais

Arquitetura de Computadores

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

Leia mais

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. 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

Leia mais

Arquitectura de Computadores

Arquitectura de Computadores Arquitectura de Computadores Memória Cache; Memória Secundária (13.3) José Monteiro Licenciatura em Engenharia Informática e de Computadores Departamento de Engenharia Informática (DEI) Instituto Superior

Leia mais

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. 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

Leia mais

Arquitectura de Computadores (ACom)

Arquitectura de Computadores (ACom) Arquitectura de Computadores (ACom) MEAer Acetatos das Aulas Teóricas Versão 5.0 - Português Aula N o 23: Título: Sumário: - II ; memória virtual - caches. 2015/2016 Nuno.Roma@tecnico.ulisboa.pt Arquitectura

Leia mais

Organização e Arquitetura de Computadores. Ivan Saraiva Silva

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

Leia mais

Arquitetura e Organização de Computadores 2. Organização Hierárquica da Memória. Uma afirmação antiga, mas perfeitamente atual

Arquitetura e Organização de Computadores 2. Organização Hierárquica da Memória. Uma afirmação antiga, mas perfeitamente atual Arquitetura e Organização de Computadores 2 Organização Hierárquica da Memória Hierarquia da Memória Uma afirmação antiga, mas perfeitamente atual Ideally one would desire an indefinitely large memory

Leia mais

Organização de Computadores

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

Leia mais

Memória Cache. Aula 24

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

Leia mais

Capítulo 7 Sistemas de Memória. Ch7a 1

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)

Leia mais

Memória Cache. Memória Cache. Localidade Espacial. Conceito de Localidade. Diferença de velocidade entre Processador/MP

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 debora@midiacom.uff.br Memória Cache Capítulo 5 Livro do Mário Monteiro Conceituação Princípio da localidade

Leia mais

SSC0112 Organização de Computadores Digitais I

SSC0112 Organização de Computadores Digitais I SSC0112 Organização de Computadores Digitais I 18ª Aula Hierarquia de memória Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br 1 Memória Cache Método de Acesso: Associativo Localização de dados na memória

Leia mais

5 de Maio de Aula 15

5 de Maio de Aula 15 5 de Maio de 2005 1 Caches I Aula 15 Estrutura desta aula Hierarquia de memórias Tecnologia das memórias Fundamentos de caches Organização em blocos Colocação dos blocos Identificação dos blocos Políticas

Leia mais

Memória Cache: Funcionamento

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

Leia mais

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 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

Leia mais

Microprocessadores. Memórias

Microprocessadores. Memórias s António M. Gonçalves Pinheiro Departamento de Física Covilhã - Portugal pinheiro@ubi.pt Arquitectura de Microcomputador Modelo de Von Neumann Barramento de Endereços µprocessador Entrada/Saída Barramento

Leia mais

Correção de Erros. Erros de memória de semicondutores podem ser:

Correção de Erros. Erros de memória de semicondutores podem ser: Correção de Erros Erros de memória de semicondutores podem ser: Erros graves que constitui um defeito físico permanente; Erros moderados, onde a(s) célula(s) não são capazes de armazenar os dados ou fazem

Leia mais

Arquitectura de Computadores

Arquitectura de Computadores Arquitectura de Computadores Memória Secundária (13.4) José Monteiro Licenciatura em Engenharia Informática e de Computadores Departamento de Engenharia Informática (DEI) Instituto Superior Técnico 29

Leia mais

Memória Cache. Walter Fetter Lages.

Memória Cache. Walter Fetter Lages. Memória Cache Walter Fetter Lages w.fetter@ieee.org 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

Leia mais

Arquitectura de Computadores (ACom)

Arquitectura de Computadores (ACom) Arquitectura de Computadores (ACom) MEAer Acetatos das Aulas Teóricas Versão 4.0 - Português Aula N o 24: Título: Sumário: - II ; memória virtual - caches. 2014/2015 Nuno.Roma@tecnico.ulisboa.pt Arquitectura

Leia mais

Arquitectura de Computadores (ACom)

Arquitectura de Computadores (ACom) Arquitectura de Computadores (ACom) MEAer Acetatos das Aulas Teóricas Versão 4.0 - Português Aula N o 23: Título: Sumário: Memória paginada; Tabela de páginas; Tabela de páginas hierárquica. 2014/2015

Leia mais

Gerência de Memória. Paginação

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

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Memória Cache Slide 1 Introdução Tamanho Função de Mapeamento Política de Escrita Tamanho da Linha Número de Memórias Cache Cache em Níveis Slide 2 Introdução

Leia mais

Sistemas de Memória II

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

Leia mais

Arquitectura de Computadores

Arquitectura de Computadores Arquitectura de Computadores Memória Secundária (13.4) José Monteiro Licenciatura em Engenharia Informática e de Computadores Departamento de Engenharia Informática (DEI) Instituto Superior Técnico 18

Leia mais

Arquitetura de Computadores. Hierarquia de Memória. Prof. Msc. Eduardo Luzeiro Feitosa

Arquitetura de Computadores. Hierarquia de Memória. Prof. Msc. Eduardo Luzeiro Feitosa Arquitetura de Computadores Hierarquia de Memória Prof. Msc. Eduardo Luzeiro Feitosa efeitosa@dcc.ufam.edu.br 1 Introdução Conteúdo Exemplo da biblioteca Princípio da localidade Hierarquia de memória Cache

Leia mais

Hierarquia de Memória

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

Leia mais

Gerenciamento de memória

Gerenciamento de memória Gerenciamento de memória O que faz? Controla o uso dos espaços em memória Controla os modos de endereçamento dos processos Como funciona a memória? Hierarquia de memória A falta de desempenho A velocidade

Leia mais

Cache. Cache. Direct Mapping Cache. Direct Mapping Cache. Internet. Bus CPU Cache Memória. Cache. Endereço Byte offset

Cache. Cache. Direct Mapping Cache. Direct Mapping Cache. Internet. Bus CPU Cache Memória. Cache. Endereço Byte offset -- Internet Bus Memória Fully Associative Direct Mapping Direct Mapping Direct Mapping 7 Endereço Byte offset Hit Tag Endereço Byte offset Index Block offset bits 8 bits bits bits V Tag Valid Tag K entries

Leia mais

Sistemas de Memória. CES-25 Arquiteturas para Alto Desmpenho. Paulo André Castro

Sistemas de Memória. CES-25 Arquiteturas para Alto Desmpenho. Paulo André Castro Sistemas de Memória Arquiteturas para Alto Desmpenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Memória: O Gargalo de Von Neuman Memória principal: considerada como sendo

Leia mais

Infraestrutura de Hardware. Explorando a Hierarquia de Memória

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

Leia mais

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 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

Leia mais

Gerência de Memória. Endereçamento Virtual (1) Paginação. Endereçamento Virtual (2) Endereçamento Virtual (3)

Gerência de Memória. Endereçamento Virtual (1) Paginação. Endereçamento Virtual (2) Endereçamento Virtual (3) Endereçamento Virtual (1) Gerência de Memória Paginação Espaço de endereçamento dos processos não linearmente relacionado com a física Cada vez que são usados, os endereços virtuais são convertidos pela

Leia mais

Memória Virtual. Prof. M.Sc. Bruno R. Silva CEFET-MG Campus VII

Memória Virtual. Prof. M.Sc. Bruno R. Silva CEFET-MG Campus VII Prof. M.Sc. Bruno R. Silva CEFET-MG Campus VII Permitir o compartilhamento seguro e eficiente da memória entre vários programas Remover os transtornos de programação de uma quatidade pequena e limitada

Leia mais

Projeto de Caches. Projeto de memórias cache (ii)

Projeto de Caches. Projeto de memórias cache (ii) Projeto de Caches Mapeamento de endereços (hashing) [bytes] tamanho de bloco [palavras] associatividade (mais hashing) três tipos de faltas tempo médio de acesso à memória UFPR BCC CI22 26-2 projeto de

Leia mais

É um sinal elétrico periódico que é utilizado para cadenciar todas as operações realizadas pelo processador.

É um sinal elétrico periódico que é utilizado para cadenciar todas as operações realizadas pelo processador. Universidade Estácio de Sá Curso de Informática Disciplina de Organização de Computadores II Prof. Gabriel P. Silva - 1 o Sem. / 2005 2 ª Lista de Exercícios 1) O que é o relógio de um sistema digital?

Leia mais

Hierarquia de memória

Hierarquia de memória Hierarquia de memória Capítulo 6, Secção.{3..} Caches Slides adaptados dos slides do professor Pedro Pereira Centro de Cálculo Instituto Superior de Engenharia de Lisboa João Pedro Patriarca (jpatri@cc.isel.ipl.pt)

Leia mais

Memória 21/05/2010. Introdução. Hierarquia de Memória. Hierarquia de Memória. Arquitetura de Computadores

Memória 21/05/2010. Introdução. Hierarquia de Memória. Hierarquia de Memória. Arquitetura de Computadores Introdução Arquitetura de Computadores Profa. Delfa H. Zuasnábar A memória pode ser definida como um local para armazenamento de informações, onde as duas únicas ações possíveis são a leitura e a escrita.

Leia mais

Organização e Arquitetura de Computadores

Organização e Arquitetura de Computadores Organização e Arquitetura de Computadores Hierarquia de Memória: Introdução Alexandre Amory Edson Moreno Nas Aulas Anteriores Computação Organização interna de CPU Parte operativa: Lógica combinacional

Leia mais

Sistemas Operacionais Gerenciamento de Memória. Carlos Ferraz Jorge Cavalcanti Fonsêca

Sistemas Operacionais Gerenciamento de Memória. Carlos Ferraz Jorge Cavalcanti Fonsêca Sistemas Operacionais Gerenciamento de Memória Carlos Ferraz (cagf@cin.ufpe.br) Jorge Cavalcanti Fonsêca (jcbf@cin.ufpe.br) Memória Física vs. Memória do Programa Memória P Física Tamanho dos softwares

Leia mais

Memória cache. Sistemas de Computação

Memória cache. Sistemas de Computação cache Sistemas de Computação Princípio da localidade Programas tendem a reutilizar dados e instruções perto daqueles que foram utilizados recentemente Localidade temporal: Itens recentemente referenciados

Leia mais

Memória cache (cont.) Sistemas de Computação

Memória cache (cont.) Sistemas de Computação Memória cache (cont.) Sistemas de Computação Memórias cache CPU procura por dados em L, depois em L2 e finalmente na memória principal CPU registradores barramento de cache L cache ALU barramento de sistema

Leia mais

MEMÓRIA CACHE FELIPE G. TORRES

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

Leia mais

Hierarquia de memória

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

Leia mais

FUNDAMENTOS DE ARQUITETURAS DE COMPUTADORES MEMÓRIA CACHE CAPÍTULO 5. Cristina Boeres

FUNDAMENTOS DE ARQUITETURAS DE COMPUTADORES MEMÓRIA CACHE CAPÍTULO 5. Cristina Boeres FUNDAMENTOS DE ARQUITETURAS DE COMPUTADORES MEMÓRIA CACHE CAPÍTULO 5 Cristina Boeres Introdução! Diferença de velocidade entre Processador e MP O processador executa uma operação rapidamente e fica em

Leia mais

Memória e Hierarquia de Memória. Memória Vs. Armazenamento

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

Leia mais

Arquitectura de Computadores II

Arquitectura de Computadores II 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 pmarques@dei.uc.pt 2 Hierarquia

Leia mais

Pipelines. João Canas Ferreira. Mar-Abr Contém figuras de: Computer Organization & Design, D. A Patterson e J. L. Hennessy, 2 a ed. (cap.

Pipelines. João Canas Ferreira. Mar-Abr Contém figuras de: Computer Organization & Design, D. A Patterson e J. L. Hennessy, 2 a ed. (cap. Pipelines João Canas Ferreira Mar-Abr 2004 Contém figuras de: Computer Organization & Design, D. A Patterson e J. L. Hennessy, 2 a ed. (cap. 6) c JCF, 2004 ASPD (FEUP/LEEC) Pipelines 1/52 Conceitos básicos

Leia mais

Tecnologia dos Microprocessadores. António M. G. Pinheiro Universidade da Beira Interior Covilhã - Portugal

Tecnologia dos Microprocessadores. António M. G. Pinheiro Universidade da Beira Interior Covilhã - Portugal Tecnologia dos Microprocessadores António M. G. Pinheiro Covilhã - Portugal pinheiro@ubi.pt PIPELINES; SUPERESCALARIDADE. MEMÓRIAS CACHE. MICROPROCESSADORES RISC VERSUS CISC. PIPELINES CONSISTE NA SUBDIVISÃO

Leia mais

Instituto Superior Técnico Departamento de Engenharia Electrotécnica e de Computadores Arquitectura de Computadores. 2º sem.

Instituto Superior Técnico Departamento de Engenharia Electrotécnica e de Computadores Arquitectura de Computadores. 2º sem. Instituto Superior Técnico Departamento de Engenharia Electrotécnica e de Computadores Arquitectura de Computadores º sem. / // º Teste Duração:, horas Grupo I Superpilining [ valores] Admita que tem um

Leia mais

Tempo de processador desperdiçado a fazer nada. Processor register 1 clock cycle (0.5 2 GHz) $??? DRAM semiconductor memory ns $10 $20

Tempo de processador desperdiçado a fazer nada. Processor register 1 clock cycle (0.5 2 GHz) $??? DRAM semiconductor memory ns $10 $20 Caches Cache Acesso à memória é lento Tempo de processador desperdiçado a fazer nada CPU Memória Memory technology Typical access time $ per GiB in 2012 Processor register 1 clock cycle (0.5 ns @ 2 GHz)

Leia mais

Níveis de memória. Diferentes velocidades de acesso. Memória Cache. Memórias Auxiliar e Auxiliar-Backup

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

Leia mais

Gerenciamento de Memória

Gerenciamento de Memória Gerenciamento de Memória Prof. Clodoaldo Ap. Moraes Lima Paginação Espaço de endereço de um processo pode ser não contíguo; ao processo é alocado memória física sempre que disponível. Divide memória física

Leia mais

Arquitetura e Organização de Processadores. Aula 4. Pipelines

Arquitetura e Organização de Processadores. Aula 4. Pipelines 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 Aula 4 Pipelines 1. Introdução Objetivo: aumento de

Leia mais

Arquitectura de Computadores (ACom)

Arquitectura de Computadores (ACom) Arquitectura de Computadores (ACom) MEAer Acetatos das Aulas Teóricas Versão 4.0 - Português Aula N o 20: Título: Sumário: Sistema de primária (ciclo de acesso, memória estática, memória dinâmica, planos

Leia mais

I. Considere os seguintes processadores A e B, ambos com arquitectura em pipeline, conforme ilustrado

I. Considere os seguintes processadores A e B, ambos com arquitectura em pipeline, conforme ilustrado Arquitectura de Computadores 2 o Semestre (2013/2014) MEAer 2 o Teste - 19 de Junho de 2014 Duração: 1h30 + 0h15 Regras: Otesteésemconsulta, apenas tem disponível o anexo que lhe deverá ter sido entregue

Leia mais

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. 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)

Leia mais

Instituto de Matemática e Estatística - USP MAC Organização de Computadores EP1. Experimentos com o cache. Tiago Andrade Togores

Instituto de Matemática e Estatística - USP MAC Organização de Computadores EP1. Experimentos com o cache. Tiago Andrade Togores Instituto de Matemática e Estatística - USP MAC0412 - Organização de Computadores EP1 Experimentos com o cache Tiago Andrade Togores - 6514230 30 de setembro de 2010 Sumário 1 Introdução 2 1.1 O que é

Leia mais

SSC0640 Sistemas Operacionais I

SSC0640 Sistemas Operacionais I SSC0640 Sistemas Operacionais I 15ª Aula Gerenciamento de Memória Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Slides adaptados de Marcos José Santana / Regina H. C. Santana / Luciana A. F. Martimiano

Leia mais

Experimentos com o Cache Organização de Computadores

Experimentos com o Cache Organização de Computadores Experimentos com o Cache Organização de Computadores Bruno Milan Perfetto - n o USP : 6552421 Steven Koiti Tsukamoto - n o USP : 6431089 Departamento de Ciência da Computação Instituto de Matemática e

Leia mais

Fundamentos de Sistemas Operacionais

Fundamentos de Sistemas Operacionais Fundamentos de Sistemas Operacionais Aula 19: Memória Virtual: Introdução Diego Passos Última Aula Paginação Método de gerenciamento de memória mais usado hoje. Espaço de endereçamento de um processo é

Leia mais

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 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

Leia mais

Memória Cache. Adriano J. Holanda. 12 e 16/5/2017

Memória Cache. Adriano J. Holanda. 12 e 16/5/2017 Memória Cache Adriano J Holanda 12 e 16/5/2017 Memória: princípios físicos Revisão: Hierarquia de memória; Memória RAM: estática, dinâmica; Memória ROM: PROM, EPROM, EEPROM; Memória flash Memória: fundamentos

Leia mais

Memória. Memória Cache

Memória. Memória Cache Memória Memória Cache Revisão - Memória Principal Memória que armazena os dados e programas em linguagem de máquina em execução corrente Razoavelmente barata Tempo de acesso da ordem de nano-segundos a

Leia mais

http://www.ic.uff.br/~debora/fac! 1 Capítulo 4 Livro do Mário Monteiro Introdução Hierarquia de memória Memória Principal Organização Operações de leitura e escrita Capacidade 2 Componente de um sistema

Leia mais

Barramento. Prof. Leonardo Barreto Campos 1

Barramento. Prof. Leonardo Barreto Campos 1 Barramento Prof. Leonardo Barreto Campos 1 Sumário Introdução; Componentes do Computador; Funções dos Computadores; Estrutura de Interconexão; Interconexão de Barramentos Elementos de projeto de barramento;

Leia mais

Memória Principal. Tiago Alves de Oliveira

Memória Principal. Tiago Alves de Oliveira Memória Principal Tiago Alves de Oliveira tiago@div.cefetmg.br Memória Principal Capítulo 4 Livro do Mário Monteiro Introdução Hierarquia de memória Memória Principal Organização Operações de leitura e

Leia mais

GERENCIAMENTO DE MEMÓRIA

GERENCIAMENTO DE MEMÓRIA GERENCIAMENTO DE MEMÓRIA Sistemas Operacionais Gerenciamento de memória O que vem em sua cabeça quando pensa em memória? Cache RAM Velocidade Custo Memória Secundária Capacidade 2 Hierarquias de Memórias

Leia mais

Memória cache segunda parte. Organização de Computadores. Aula 17. Memória cache segunda parte. 1. Mapeamento completamente associativo

Memória cache segunda parte. Organização de Computadores. Aula 17. Memória cache segunda parte. 1. Mapeamento completamente associativo Universidade Federal do Rio Grande do Sul Instituto de Informática Memória segunda parte Organização de Computadores 1. Mapeamento completamente associativo 2. Mapeamento direto 3. Mapeamento conjunto

Leia mais

Memória virtual. Pedro Cruz. EEL770 Sistemas Operacionais

Memória virtual. Pedro Cruz. EEL770 Sistemas Operacionais Memória virtual Pedro Cruz EEL770 Sistemas Operacionais Avisos Menos de um mês para a 1ª apresentação do trabalho Dia 22/9/2017 O que fizeram até agora? Análises Estratégias Problemas Soluções Presenças

Leia mais

Memória Cache endereço de memória

Memória Cache endereço de memória Memória Cache O modelo de Von Neumann estabelece que para ser executado, o programa deve estar armazenado na memória. A memória é organizada em grupos de bits chamados células (ou palavras), onde as informações

Leia mais

ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO4: MEMÓRIAPRINCIPAL

ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO4: MEMÓRIAPRINCIPAL ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO4: MEMÓRIAPRINCIPAL MEMÓRIA Componente de um sistema de computação cuja função é armazenar informações que são manipuladas pelo sistema para que possam ser recuperadas

Leia mais

Memória para CAD. Aleardo Manacero Jr.

Memória para CAD. Aleardo Manacero Jr. Memória para CAD Aleardo Manacero Jr. Introdução Na aula de hoje examinaremos como o subsistema de memória afeta o desempenho de um sistema computacional Veremos um pouco da sua arquitetura Veremos também

Leia mais

Sistemas de memória. João Canas Ferreira. Arquitectura de Computadores FEUP/LEIC

Sistemas de memória. João Canas Ferreira. Arquitectura de Computadores FEUP/LEIC Sistemas de memória João Canas Ferreira Arquitectura de Computadores FEUP/LEIC Contém figuras de Computer Organization and Design (cap. 7, Ap. B), D. Patterson & J. Hennessey, 3ª. ed., Elsevier Tópicos

Leia mais

Aula 16: Memória Principal e Memória Virtual

Aula 16: Memória Principal e Memória Virtual Aula 16: Memória Principal e Memória Virtual Memória Principal Performance na memória principal: Latência: Miss Penalty na Cache Access Time: tempo entre requisição e retorno de palavra Cycle Time:

Leia mais

Sistemas de Memória. CES-25 Arquiteturas para Alto Desmpenho. Paulo André Castro

Sistemas de Memória. CES-25 Arquiteturas para Alto Desmpenho. Paulo André Castro Sistemas de Memória Arquiteturas para Alto Desmpenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Memória: O Gargalo de Von Neuman Memória principal: considerada como sendo

Leia mais

Memória virtual. Sistemas de Computação

Memória virtual. Sistemas de Computação Memória virtual Fundamentos Memória virtual separação da memória lógica do usuário da memória física somente uma parte do programa precisa estar na memória para execução espaço de endereçamento lógico

Leia mais

ü Capítulo 4 Livro do Mário Monteiro ü Introdução ü Hierarquia de memória ü Memória Principal ü Memória principal ü Memória cache

ü Capítulo 4 Livro do Mário Monteiro ü Introdução ü Hierarquia de memória ü Memória Principal ü Memória principal ü Memória cache Departamento de Ciência da Computação - UFF Principal Profa. Débora Christina Muchaluat Saade debora@midiacom.uff.br Principal ü Capítulo 4 Livro do Mário Monteiro ü Introdução ü Hierarquia de memória

Leia mais

Espaço de Endereçamento

Espaço de Endereçamento Gestão de Memória Parte I - mecanismos Sistemas Operativos 2015 / 2016 Espaço de Endereçamento Conjunto de posições de memória que um processo pode referenciar E se referenciar outras posições de memória?

Leia mais

Aula 16: Memória Principal e Memória Virtual

Aula 16: Memória Principal e Memória Virtual Aula 16: Memória Principal e Memória Virtual Memória Principal Performance na memória principal: Latência: Miss Penalty na Cache Access Time: tempo entre requisição e retorno de palavra Cycle Time: tempo

Leia mais

AULA Nº 11 SISTEMAS OPERACIONAIS. Técnicas de Memória Virtual

AULA Nº 11 SISTEMAS OPERACIONAIS. Técnicas de Memória Virtual AULA Nº 11 SISTEMAS OPERACIONAIS Técnicas de Memória Virtual 1 Contextualizando Vimos Introdução ao Gerenciamento de Memória Agora Técnicas de Memória Virtual 2 O que é Memória Virtual (MV)? É uma técnica

Leia mais

Desempenho de caches

Desempenho de caches Cache (cont) Sistemas de memória Memória cache organização leitura escrita otimizações Memória Virtual endereçamento paginação TLB excessões UFPR-CI32,CI702 205-08 otimização de caches Revisão Localidade

Leia mais

CEFET-RS Curso de Eletrônica

CEFET-RS Curso de Eletrônica CEFET-RS Curso de Eletrônica 3.2 - Cache Profs. Roberta Nobre & Sandro Silva robertacnobre@gmail.com e sandro@cefetrs.tche.br Cache Wait States CPU Principal Durante o processamento normal, o processador

Leia mais