Desempenho de caches

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

Download "Desempenho de caches"

Transcrição

1 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,CI otimização de caches Revisão Localidade Temporal objeto será referenciado novamente no futuro próximo: pilha, código LocalidadeEspacial objetos vizinhos serão referenciados no futuro próximo: vetores, instruções Taxa de Acertos = núm acertos / núm referências Taxa de Faltas = Taxa de acertos 3 Cs: faltas compulsórias, por conflitos, por capacidade compulsórias: são compulsórias... conflitos: endereços mapeiam no mesmo bloco associatividade capacidade: conj de dados > cache ; tamanho Poĺıticas de escrita escrita forçada, escrita preguiçosa, fila de escrita nas faltas: aloca espaço, não-aloca espaço store buffer antes da cache ; write buffer depois da cache UFPR-CI32,CI otimização de caches 2 Desempenho de caches Tempo médio de acesso à memória: Tmem = Tacerto + txfaltas penalidade tempo de CPU = #Instr CPI ciclo #Instr (CPIexec + CPImem) ciclo CPImem = numrefs instr (Tacerto + txfaltas penalidade) UFPR-CI32,CI otimização de caches 3

2 Melhoria no desempenho de caches Tempo médio de acesso a memória = tempo de acerto + taxa de faltas penalidade nas faltas Para melhorar o desempenho é necessário: reduzir a taxa de faltas reduzir a penalidade nas faltas reduzir o tempo de acerto Estratégia mais simples é projetar a cache primária maior possível, sem alongar o ciclo de relógio, e sem estágios adicionais no pipeline isso pode ser complicado com emissão fora-de-ordem detalhes adiante UFPR-CI32,CI otimização de caches 4 Reduzir a taxa de faltas Faltas compulsórias: primeira referência a um bloco (a frio) faltas que ocorreriam numa cache infinita Faltas por capacidade: cache não comporta conjunto de trabalho faltas que ocorreriam mesmo com poĺıticas perfeitas de alocação e de reposição de blocos Faltas por conflito: colisões no mapeamento de blocos na cache faltas que não ocorreriam se a cache fosse totalmente associativa e reposição fosse com LRU podem ocorrer com cache não-cheia UFPR-CI32,CI otimização de caches 5 Reduzir a taxa de faltas parâmetros de projeto capacidade = tambloco numblocos associatividade = numelementos numconjuntos elmtos/conjunto Capacidade aumentar matriz de dados reduz faltas por capacidade e por conflito tempo de acerto pode aumentar Tamanho do bloco matriz de dados mais larga localidade espacial reduz faltas compulsórias menor número de blocos pode aumentar conflitos = capacidade bloco maior pode aumentar penalidade para preencher bloco Associatividade conjuntos com mais elementos reduz faltas por conflito (até associatividade 4-8) pode aumentar tempo de acesso UFPR-CI32,CI otimização de caches 6

3 . Reduzir a taxa de faltas Tamanho do Bloco taxa de faltas vs tamanho do bloco K 4K 6K 64K 256K tamanho do bloco [bytes] localidade espacial reduz faltas compulsórias para mesma capacidade menor número de blocos aumenta conflitos bloco maior aumenta tempo de preenchimento e penalidade UFPR-CI32,CI otimização de caches 7 2. Reduzir a taxa de faltas Associatividade Regra 2: taxa de faltas de uma cache com mapeamento direto de tamanho N taxa de faltas de cache com associatividade binária de tamanho N/2 Achtung: desempenho é medido pelo tempo de execução!! maior associatividade pode aumentar tempo de acesso Simulação com CACTI, tecnologia 20nm, 32 bytes/bloco cacti C 32 {,2} tempo de acesso com map. direto X assoc. binária CACTI escolhe a melhor geometria capac T MD ns T MD /T 2w 6K K K K K UFPR-CI32,CI otimização de caches 8 3. Reduzir a taxa de faltas Cache de Vítimas CPU L dados expulso da L L2 unificada acerto na VC (falta na L) victim cache assoc, 4bl expulso da VC Cache de Vítimas é uma cache associativa pequena (4-8 blocos), ligada à cache com mapeamento direto para conter linhas recentemente expurgadas [Jouppi90]: CdV com 4 elementos remove de 20% a 95% dos conflitos numa cache de 4 Kbytes com mapeamento direto usado no Alpha e máquinas da HP UFPR-CI32,CI otimização de caches 9

4 3. Reduzir faltas Cache de Vítimas (cont) CPU L dados expulso da L L2 unificada acerto na VC (falta na L) victim cache assoc, 4bl expulso da VC Procura na L; se falta, procura da cache de vítimas; se encontrou, troca linha por aquela que vai ser expulsa da L; se falta na CdV, vítima na L CdV; vítima na CdV Efeito combinado: tempo de acesso do mapeamento direto com redução nas faltas por conflito. UFPR-CI32,CI otimização de caches 0 4. Reduzir tx faltas Busca antecipada por hardware Busca antecipada de instruções Alpha 2064 busca dois blocos numa falta bloco extra é colocado num stream buffer numa falta, procura no stream buffer todos os x86 fazem busca antecipada necessário porque codificação das instruções é irregular [Jouppi90] Busca antecipada de dados stream buffer para dados resolve 25% das faltas [Jouppi90] numa cache de 4KB; 4 stream buffers resolvem 43% para aplicações científicas, 8 strbfrs resolvem 50-70% das faltas com duas caches de 64KB, assoc-quaternária [Palacharla94] Busca antecipada necessita de sistema de memória com muita vazão sobrando e que possa ser utilizada sem aumentar penalidade; pode causar poluição da cache com blocos/palavras inúteis UFPR-CI32,CI otimização de caches 5. Reduzir tx faltas Busca antecipada por software Busca antecipada de dados carregar dados em registrador (HP PA-RISC) carregar dados para a cache (MIPS-4, PowerPC) instruções de busca antecipada não podem causar faltas de página forma de execução especulativa Executar instruções de busca antecipada custa tempo custo da busca antecipada é menor que os ganhos pelos acertos? processadores super-escalares gulosos facilitam despacho destas instruções Busca antecipada causa poluição na cache melhor carregar blocos em stream buffers (SBs) e não na cache numa falta, carrega SBs com blocos para além do faltante numa falta, procura na cache e nos SBs SB é bom para instruções 4..8 SBs para dados por que? UFPR-CI32,CI otimização de caches 2

5 6. Reduzir tx faltas Otimização pelo compilador Instruções reordenar funções na memória para reduzir faltas por conflito observar perfil de execução para descobrir conflitos, e então re-ligar aplicativos Dados agrupar vetores: acessos a vetor de elementos compostos tem melhor localidade espacial que 2 vetores alocados separadamente troca de loops: mudar aninhamento dos loops para acessar dados na ordem de armazenamento em memória row major fusão de loops: combinar 2 loops independentes com comportamento similar e uso repetido das variáveis blocagem: melhorar a localidade temporal ao acessar blocos de dados repetidamente ao invés de percorrer linhas/colunas inteiras bom se bloco cache UFPR-CI32,CI otimização de caches 3 Exemplo: agrupamento de vetores / Antes: 2 vetores / int val[tam]; int key[tam]; / Depois: vetor de estruturas / struct agrup { int val; int key; } struct agrup keyval[tam]; Agrupamento de val[] e key[] melhora localidade espacial e pode reduzir conflitos de mapeamento na cache e simplifica código para calcular endereços UFPR-CI32,CI otimização de caches 4 Exemplo: troca de loops for (k=0; k < 00; k++) / Antes / 2 for (j=0; j < 00; j++) 3 for (i=0; i < 5000; i++) 4 x[i][j] = 2 * x[i][j]; / passo =00 / 5 for (k=0; k < 00; k++) / Depois / 6 for (i=0; i < 5000; i++) 7 for (j=0; j < 00; j++) 8 x[i][j] = 2 * x[i][j]; / passo = / Acessos seqüenciais ao invés de passadas de 00 palavras melhora localidade espacial passada stride UFPR-CI32,CI otimização de caches 5

6 Exemplo: fusão de loops / Antes: duas faltas por acesso em a[] e c[] / for (i=0; i < N; i++) // N= for (j=0; j < N; j++) 3 a[i][j] = /b[i][j] * c[i][j]; 4 for (i=0; i < N; i++) 5 for (j=0; j < N; j++) 6 d[i][j] = a[i][j] + c[i][j]; / Depois: uma falta por acesso em a[] e em c[] / 7 for (i=0; i < N; i++) 8 for (j=0; j < N; j++) { 9 a[i][j] = /b[i][j] * c[i][j]; a d[i][j] = a[i][j] + c[i][j]; b } / re-uso e melhor localidade espacial / UFPR-CI32,CI otimização de caches 6 Exemplo: blocagem (i) for (i=0; i < N; i++) / Antes / 2 for (j=0; j < N; j++) { 3 for (r=0.0, k=0; k < N; k++) 4 r = r + y[i][k] * z[k][j]; 5 x[i][j] = r; 6 } Dois loops internos: lê todos os NxN elementos de z[] lê N elementos de uma linha de y[] repetidamente escreve N elementos de coluna de x[] Faltas por capacidade são função de N e tamanho da cache núm faltas = 2N 3 + N 2, se não ocorrerem conflitos... Idéia: computar sub-matriz que cabe na cache UFPR-CI32,CI otimização de caches 7 Exemplo: blocagem (ii) for (i=0; i < N; i++) / Antes / 2 for (j=0; j < N; j++) { 3 for (r=0.0, k=0; k < N; k++) 4 r = r + y[i][k] * z[k][j]; 5 x[i][j] = r; 6 } k j z k y i i j x não tocado tocado há muito tocado há pouco UFPR-CI32,CI otimização de caches 8

7 Exemplo: blocagem (iii) for (jj=0; jj < N; jj = jj+b) / Depois / 2 for (kk=0; kk < N; kk = kk+b) 3 for (i=0; i < N; i++) 4 for (j = jj; j < min(jj+b,n); j++) { 5 for (r = 0.0, k = kk; k < min(kk+b,n); k++) 6 r = r + y[i][k] * z[k][j]; 7 x[i][j] = x[i][j] + r; / x[i][j] parcial / 8 } B é chamado de fator de blocagem Faltas por capacidade caem de 2N 3 + N 2 para 2N 3 /B + N 2 ganho pela redução nas faltas é maior que ganho algorítmico Faltas por conflito talvez diminuem UFPR-CI32,CI otimização de caches 9 Exemplo: blocagem (iv) for (jj=0; jj < N; jj = jj+b) / Depois / 2 for (kk=0; kk < N; kk = kk+b) 3 for (i=0; i < N; i++) 4 for (j = jj; j < min(jj+b,n); j++) { 5 for (r = 0.0, k = kk; k < min(kk+b,n); k++) 6 r = r + y[i][k] * z[k][j]; 7 x[i][j] = x[i][j] + r; } / x[i][j] parcial / k j z k y i i j x UFPR-CI32,CI otimização de caches 20 Melhoria no desempenho de caches Tempo médio de acesso a memória = tempo de acerto + taxa de faltas penalidade nas faltas Para melhorar o desempenho é necessário: reduzir a taxa de faltas parâmetros de projeto: número, tam blocos, associatividade cache de vítimas, stream buffers, busca antecipada otimização do código: agrupamento, troca de índices, fusão, blocagem reduzir a penalidade nas faltas reduzir o tempo de acerto UFPR-CI32,CI otimização de caches 2

8 A. Reduzir a penalidade hierarquia de caches Memória não pode ser simultaneamente grande e rápida; hierarquia com caches maiores mais longe do processador registradores processador n DRAM cache L2 cache L n2 n3 n4 tempo de acesso disco n5 capacidade da memória em cada nível UFPR-CI32,CI otimização de caches 22 A.a Reduzir a penalidade hierarquia de caches CPU L L2 DRAM Taxa de faltas local = faltas na cache / acessos à cache Taxa de faltas global = faltas na cache / referências pelo processador T mem = ta L + F L P L = ta L + F L [ta L2 + F L2 P DRAM ] onde ta é o tempo de acerto, F Li é taxa de faltas no nível i, e P Li é a penalidade por falta no nível i UFPR-CI32,CI otimização de caches 23 A.b Reduzir a penalidade hierarquia de caches CPU L L2 DRAM Propriedade de Inclusão: Conteúdo das caches maiores inclui o conteúdo das menores cache menor contém cópias dos dados na cache maior qual a relação entre associatividade, tamanho e inclusão? qual a relação entre bits de tag/índice e assoc, tamanho e inclusão? [Baer,Wang88] On the Inclusion Properties for Multi-Level Cache Hierarchies Caches exclusivas trocam linhas numa falta L novo; L2 velho UFPR-CI32,CI otimização de caches 24

9 A.c Reduzir a penalidade hierarquia de caches Hierarquia no Itanium-2 L: 2 x 6KB, assoc 4, linhas com 64 bytes, quatro portas (2-load + 2-store), latência de ciclo L2: 256KB, assoc 4, linhas com 28 bytes, quatro portas (2-load + 2-store), latência de 5 ciclos L3: 3MB, assoc 2, linhas com 28 bytes, uma porta de 32 bytes, latência de 2 ciclos DRAM: latência 00 ciclos UFPR-CI32,CI otimização de caches 25 Perguntas P: Se CPU executa 4 instruções por ciclo, quantas oportunidades de executar instruções são perdidas numa falta na L (penalidade=+5c)? na L2 (penalidade=+5+2c)? na L3 (penalidade= c)? P2: O que se pode dizer quanto a código que foi cuidadosamente otimizado para conter montes de referências através de apontadores: a b, a b c, a b c d, a b c d e,...? Dãh... qual é o problema com apontadores? UFPR-CI32,CI otimização de caches 26 B. Red penalidade prioridade para faltas de leitura Escrita forçada com fila de escrita cria risco RAW processador tenta ler dado que está na fila de escrita solução ruim: espera até que fila esvazie e então continua LOAD aumenta penalidade nas faltas de leitura solução melhor: verifica se m dependências; se não, LOAD prossegue sem bloquear memory disambiguation Escrita preguiçosa: falta na leitura substitui bloco sujo solução ruim: escreve bloco sujo e então busca bloco faltante solução melhor:. escreve bloco sujo num buffer/fila, 2. lê bloco faltante e entrega ao processador, 3. então envia bloco sujo para próximo nível + rápido porque CPU prossegue assim que ler bloco faltante UFPR-CI32,CI otimização de caches 27

10 C. Reduzir a penalidade minimizar tempo de carga Tempo de preenchimento do bloco é longo...mas não precisa esperar até que todo o bloco seja preenchido Early restart assim que instrução requisitada chegar da memória, entrega ao processador, que continua a executar Critical word first busca palavra requisitada primeiro e a entrega ao processador assim que chegar da memória processador continua enquanto bloco está sendo preenchido técnica é útil com blocos grandes processador requisita p2: p0 p p2 p3 p2 é entregue, e bloco é preenchido com p2 p3 p0 p localidade espacial indica que próximo acesso será na palavra seguinte, que chegará em breve UFPR-CI32,CI otimização de caches 28 D. Reduzir a penalidade cache não-bloqueante Cache não-bloqueante entrega dados enquanto trata de uma falta cache registra ender, UF dest e despacha ref para memória necessário para processador com execução fora-de-ordem necessita memória com múltiplos bancos cache & DRAM [Kroft8] Lock-up Free Instruction Fetch/Prefetch Cache Organization acerto sob falta (hit under miss) reduz penalidade efetiva porque cache fornece dados, ao invés de bloquear processador na falta acerto sob múltiplas faltas (miss under miss) reduz penalidade ainda mais ao sobrepor tratamento de múltiplas faltas complexidade do controlador da cache é maior por causa dos acessos concomitantes à memória necessita de memória com múltiplos bancos cache & DRAM PentiumPro permite até 4 faltas pendentes projeto é muito popular porque eficaz UFPR-CI32,CI otimização de caches 29 D. Reduzir a penalidade cache não-bloqueante Fração do tempo médio perdido em referências à memória 00% 90% 80% 70% 60% 50% 40% 30% 20% 0%... ponto flutuante inteiros. hit under miss hit under 2 misses hit under 64 misses swm256 fppp hydro2d tomcatv su2cor ora expresso eqntott xlisp compress UFPR-CI32,CI otimização de caches 30

11 Melhoria no desempenho de caches Tempo médio de acesso a memória = tempo de acerto + taxa de faltas penalidade nas faltas Para melhorar o desempenho é necessário: reduzir a taxa de faltas reduzir a penalidade nas faltas hierarquia de caches priorizar faltas na leitura (critical word first, early restart) cache não-bloqueante reduzir o tempo de acerto UFPR-CI32,CI otimização de caches 3 I. Reduzir o tempo de acerto caches simples e pequenas Tempo de acerto curto se: cache pequena reduz tempo de acesso cache simples mapeamento direto Alpha 264 tem 8KB para dados e 8KB para instruções, 96KB cache secundária, unificada, associatividade ternária, e relógio muito rápido! UFPR-CI32,CI otimização de caches 32 II.i Reduzir o tempo de acerto evitar tradução de endereços Cache endereçada com: endereço virtual vs endereço físico a cada troca de contexto deve expurgar a cache ou efetuar seu equivalente lógico senão ocorrem falsos-acertos do proc. que entra e caos processo que entra no processador sofre montes de faltas compulsórias conseqüência da troca de contexto pode durar 0 5 ciclos solução: usar identificador de processo na etiqueta na cache pid, tag UFPR-CI32,CI otimização de caches 33

12 II.ii Reduzir o tempo de acerto evitar tradução de endereços Cache endereçada com: endereço virtual vs endereço físico como trata de sinônimos? dois endereços virtuais que mapeiam no mesmo endereço físico solução: garantir que indexação da cache ocorre com bits que coincidem no EV e EF restringir compartilhamento à fronteira de página? EVirtual núm página virtual deslocamento ender na cache índice EFísico núm página física deslocamento Por que caches L de CPUs recentes ( 6 K) tem associatividade alta ( 4)? UFPR-CI32,CI otimização de caches 34 II.iii Reduzir T de acerto evitar tradução de ender CPU CPU CPU TLB EV EF etiq c/ endvirt cache EV EV etiq c/ endfis EV cache TLB EF cache TLB mem EF EF núm página deslocamento mem organização simples mem cache ender virtual traduz somente nas faltas etiqueta índice bloco sobrepõe indexação com tradução EV-EF índice não pode mudar durante tradução cache = página UFPR-CI32,CI otimização de caches 35 III.i Reduzir o tempo de acerto escritas em pipeline Escrita consome dois ciclos (SE NÃO FOR escr forçada-alocate on miss) compara etiqueta ; escreve na cache melhor se armazena dados,endereço em buffer ; escreve dados na cache durante comparação de etiqueta na próxima escrita ou no próximo ciclo vago risco RAW entre leitura e escrita atrasada adiantamento SE cache emprega escrita forçada com alocate on write miss escrita consome um ciclo só: escreve na cache SEM verificar se acerto ou falta (re-aloca o bloco se for falta) UFPR-CI32,CI otimização de caches 36

13 III.ii Reduzir tempo de acerto escritas em pipeline load hit? compara etiqueta tags store hit? clk load delayed addr store escreve dado anterior clk delayed data load/store WRen ender Dout dados CPU Din UFPR-CI32,CI otimização de caches 37 Resumo melhorar desempenho de caches T méd acesso mem = T acerto + tx faltas x penalidade/falta Para melhorar o desempenho é necessário: reduzir a taxa de faltas parâmetros de projeto: número, tam blocos, associatividade cache de vítimas, stream buffers, busca antecipada otimização do código: agrupamento, troca de índices, fusão, blocagem reduzir a penalidade nas faltas hierarquia de caches priorizar faltas na leitura (critical word first, early restart) cache não-bloqueante reduzir o tempo de acerto caches simples e pequenas não traduzir endereço virtual para físico escritas em pipeline UFPR-CI32,CI otimização de caches 38

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

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

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

Avaliação de Desempenho, Área e Energia de Caches com Controle de Poluição

Avaliação de Desempenho, Área e Energia de Caches com Controle de Poluição Avaliação de Desempenho, Área e Energia de Caches com Controle de Poluição Richard R de Souza, Giancarlo C Heck, Renato Carmo & Roberto A Hexsel 30 de outubro de 2009 WSCAD-SSC 2009 São Paulo, SP, Brasil

Leia mais

Investigação de Técnicas de Projeto de Cache de Dados para Sistemas Embarcados

Investigação de Técnicas de Projeto de Cache de Dados para Sistemas Embarcados Investigação de Técnicas de Projeto de Cache de Dados para Sistemas Embarcados 28 de outubro de 2009 Orientador: Prof. Roberto A. Hexsel WSCAD-CTD 2009 São Paulo, SP, Brasil Agenda Introdução Ambiente

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

ORGANIZAÇÃO DE COMPUTADORES

ORGANIZAÇÃO DE COMPUTADORES ORGANIZAÇÃO DE COMPUTADORES 2017/2018 1 o Semestre 1 o Teste 20 de Novembro de 2018 Duração: 1h15 - O teste é sem consulta e sem calculadora. - Resolva o teste no próprio enunciado, o espaço reservado

Leia mais

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

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

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

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

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

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

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

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

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Gerência de Memória Memória virtual Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Slides baseados nas apresentações dos prof. Tiago Ferreto e Alexandra Aguiar

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

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

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

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

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

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

UFRJ IM - DCC. Sistemas Operacionais I. Unidade III Memória Primária. 29/04/2014 Prof. Valeria M. Bastos

UFRJ IM - DCC. Sistemas Operacionais I. Unidade III Memória Primária. 29/04/2014 Prof. Valeria M. Bastos UFRJ IM - DCC Sistemas Operacionais I Unidade III Memória Primária 29/04/204 Prof. Valeria M. Bastos ORGANIZAÇÃO DA UNIDADE Processador - Escalonamento Memória Primária Fundamentos Formas de Particionamento

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

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

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

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

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

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

É 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

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

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

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

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

1. A pastilha do processador Intel possui uma memória cache única para dados e instruções. Esse processador tem capacidade de 8 Kbytes e é

1. A pastilha do processador Intel possui uma memória cache única para dados e instruções. Esse processador tem capacidade de 8 Kbytes e é 1. A pastilha do processador Intel 80486 possui uma memória cache única para dados e instruções. Esse processador tem capacidade de 8 Kbytes e é organizado com mapeamento associativo por conjuntos de quatro

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

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

Contexto. UFPR BCC CI hierarquia de memória 3. Sistemas de Memória interface CPU-mem. E00-Enn eval. eval. dval. Sistemas de Memória leitura

Contexto. UFPR BCC CI hierarquia de memória 3. Sistemas de Memória interface CPU-mem. E00-Enn eval. eval. dval. Sistemas de Memória leitura Contexto Até agora:, controle e circ de controle circuito de entrada saída Próximo assunto: controle entrada sistema de circuito de saída UFPR BCC CI22 206-2 hierarquia de Sistemas de Memória interface

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

Capítulo 8: Memória Principal. Operating System Concepts 8 th Edition

Capítulo 8: Memória Principal. Operating System Concepts 8 th Edition Capítulo 8: Memória Principal Silberschatz, Galvin and Gagne 2009 Objetivos Fornecer uma descrição detalhada das várias formas de organizar a memória do computador Discutir várias técnicas de gerenciamento

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

1.0 val. (b) Determine o CPI do processador na execução do código indicado. Num.: Nome: Pág. 1. Arquitecturas Avançadas de Computadores (AAC)

1.0 val. (b) Determine o CPI do processador na execução do código indicado. Num.: Nome: Pág. 1. Arquitecturas Avançadas de Computadores (AAC) 1. Considere um processador in-order com 5 estágios (IF, ID, EX1, EX2, WB) sem qualquer mecanismo de forwarding de dados, e o seguinte troço de código. Memória de instruções Operação MOV R1,R0 ; R1 R0

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

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

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

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

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

Infraestrutura de Hardware. Melhorando Desempenho de Pipeline Processadores Superpipeline, Superescalares, VLIW

Infraestrutura de Hardware. Melhorando Desempenho de Pipeline Processadores Superpipeline, Superescalares, VLIW Infraestrutura de Hardware Melhorando Desempenho de Pipeline Processadores Superpipeline, Superescalares, VLIW Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem

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

Hierarquia de memória. Melhorando o desempenho

Hierarquia de memória. Melhorando o desempenho Hierarquia de memória Melhorando o desempenho Desempenho de uma CPU CPU time_sem_mem = #instruções x CPI x Clk_período CPU time = CPU time_sem_mem + Memória time CPU time = (CPU ciclos_sem_mem + Memória

Leia mais

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

Aula 12. Gerência de Memória - Paginação Aula 12 Gerência de Memória - Paginação 11 Gerência de memória- o contexto da paginação 12 O que é a paginação 13 Implementação 14 Referências: Capítulo 9 (94) O contexto da paginação Revisão de gerência

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 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 Operacionais: Memória Virtual

Sistemas Operacionais: Memória Virtual Sistemas Operacionais: Memória Virtual Memória virtual Memória virtual: separação entre a visão lógica do usuário e a memória física Somente uma parte do programa necessita estar na memória para executar

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

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

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

ci212 E/S (i): interface com CPU e SO Entrada e Saída

ci212 E/S (i): interface com CPU e SO Entrada e Saída Entrada e Saída Tipos e Características de Dispositivos Dispositivos, Interfaces com CPU e com Sist Operacional Modelo de dispositivo Espaços de endereçamento e hierarquia de barramentos Modos de acesso

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

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

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

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

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

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

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

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

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

Memória Virtual. Ciclo 4 AT2. Prof. Hermes Senger

Memória Virtual. Ciclo 4 AT2. Prof. Hermes Senger Memória Virtual Ciclo 4 AT2 Prof. Hermes Senger Nota O presente material foi elaborado com base no material didático do livro Sistemas Operacionais, 3ª edição, de H.M.Deitel, P.J. Deitel, D.R. Choffnes,

Leia mais

1. Considere a execução do seguinte troço de código num processador com ISA compatível

1. Considere a execução do seguinte troço de código num processador com ISA compatível 1. Considere a execução do seguinte troço de código num processador com ISA compatível com o MIPS64. loop: L.D F0,0(R1) ; F0 M[R1+0] L.D F2,8(R1) ; F2 M[R1+8] L.D F4,0(R2) ; F4 M[R2+0] SUB.D F0,F0,F2 ;

Leia mais

Segmentação com paginação Intel 386. Esquema de tradução de endereço Intel 386

Segmentação com paginação Intel 386. Esquema de tradução de endereço Intel 386 Segmentação com paginação Intel 386 O processador Intel 386 usava segmentação com paginação para gerenciamento de memória com um esquema de paginação em dois níveis. Esquema de tradução de endereço Intel

Leia mais

Que abstrações são providas por um SO moderno? Processos

Que abstrações são providas por um SO moderno? Processos Que abstrações são providas por um SO moderno? Processos memória infinita multiprogramação sistema de arquivos unificado recursos compartilhados processador memória principal (DRAM) memória secundária,

Leia mais

Arquitetura e Organização de Processadores. Aulas 06 e 07. Superescalaridade

Arquitetura e Organização de Processadores. Aulas 06 e 07. Superescalaridade 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 06 e 07 Superescalaridade 1. Introdução princípios

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

Arquitetura e Organização de Processadores. Aula 08. Arquiteturas VLIW

Arquitetura e Organização de Processadores. Aula 08. Arquiteturas VLIW 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 08 Arquiteturas VLIW 1. Introdução VLIW é Very

Leia mais

Sistemas Operacionais

Sistemas Operacionais Introdução Memória virtual Trabalho sob a Licença Atribuição-SemDerivações-SemDerivados 3.0 Brasil Creative Commons. Para visualizar uma cópia desta licença, visite http://creativecommons.org/licenses/by-nc-nd/3.0/br/

Leia mais

ORGANIZAÇÃO DE COMPUTADORES

ORGANIZAÇÃO DE COMPUTADORES ORGANIZAÇÃO DE COMPUTADORES 2015/2016 1 o Semestre Repescagem 1 o Teste 1 de Fevereiro de 2016 Duração: 1h00 - O teste é sem consulta e sem calculadora. - Resolva o teste no próprio enunciado, o espaço

Leia mais

Memória. Conceitos gerais Hierarquia de memórias

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.

Leia mais

EA960 Memória virtual

EA960 Memória virtual EA960 Memória virtual Faculdade de Engenharia Elétrica e de Computação (FEEC) Universidade Estadual de Campinas (UNICAMP) Prof. Levy Boccato 1 Motivação Vimos no tópico anterior como a memória cache pode

Leia mais

Arquitetura e Organização de Computadores

Arquitetura e Organização de Computadores UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO DEPARTAMENTO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIA DA COMPUTAÇÃO Arquitetura e Organização de Computadores Suporte ao Sistema Operacional Prof. Helcio

Leia mais

Sistemas de Computação. Gerenciamento de memória

Sistemas de Computação. Gerenciamento de memória Gerenciamento de memória Localização de processos Um programa fica armazenado em disco como um arquivo executável binário e tem que ser colocado na memória para começar a ser executado Os processos podem

Leia mais

Organização e Arquitetura de computadores

Organização e Arquitetura de computadores Organização e Arquitetura de computadores Revisão: hierarquia de memória Utilização do conceito da localidade para apresentar ao usuário toda a quantidade de memória disponível no sistema processador 4-8

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

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

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

Gerenciamento de Memória

Gerenciamento de Memória Gerenciamento de Memória Conceitos básicos Swapping Alocação contígua Paginação Segmentação Segmentação com paginação Atribuição de endereços (ligação) de código e dados na memória A atribuição de endereços

Leia mais

Divisão da lacuna em espaços na base 2: Eficiente quanto à velocidade e Ineficiente quanto à fragmentação.

Divisão da lacuna em espaços na base 2: Eficiente quanto à velocidade e Ineficiente quanto à fragmentação. % % & & Sistema Buddy Divisão da lacuna em espaços na base 2:! 1, 2, 4, 8,, até o limite da memória Até encontrar uma lacuna suficiente! Eficiente quanto à velocidade e Ineficiente quanto à fragmentação

Leia mais

Sistemas operacionais P A G I N A Ç Ã O D E M E M Ó R I A

Sistemas operacionais P A G I N A Ç Ã O D E M E M Ó R I A Sistemas operacionais P A G I N A Ç Ã O D E M E M Ó R I A O Espaço de Endereçamento lógico de um processo pode ser não contínuo; aloca-se memória física ao processo sempre que esta é disponível. A memória

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

Fundamentos de Sistemas Operacionais

Fundamentos de Sistemas Operacionais Fundamentos de Sistemas Operacionais Aula 6 Gerenciamento de Memória Prof. Galvez Considerações Gerais Multiprogramação implica em manter-se vários processos em memória Memória necessita ser alocada de

Leia mais

MEMÓRIA LÓGICA E FÍSICA (1)

MEMÓRIA LÓGICA E FÍSICA (1) GERÊNCIA DE MEMÓRIA memória = vetor de palavras (ou bytes), cada uma com endereço próprio a memória é usada para armazenar os diversos programas em execução, bem como os dados sobre a execução dos programas

Leia mais

Arquitetura de Computadores

Arquitetura de Computadores Arquitetura de Computadores 2018.1 Relembrando... Memória Virtual Relembrando... Memória Virtual Proteção de Memória Relembrando... Memória Virtual Proteção de Memória TLB Relembrando... Memória Virtual

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

Aula 13: Memória Cache

Aula 13: Memória Cache Aula 13: Memória Cache Diego Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Diego Passos (UFF) Memória: Memória Cache FAC 1 / 53 Memória Cache Diego Passos (UFF) Memória:

Leia mais