Arquitetura de ComputadoresProf a Luiza Mourelle Apesar da evolução tecnológica, as CPUs continuam mais rápidas que a memória. O problema não é tecnológico,

Slides:



Advertisements
Apresentações semelhantes
Espalhamento.
Advertisements

Sistemas Operacionais
SISTEMA BINÁRIO Hardware de Computadores. SISTEMA BINÁRIO Hardware de Computadores.
Modelo planetário: errado Elétrons são descritos por meio de funções de onda Mecânica Quântica : probabilidades.
Prof. Celso Gramática Prof. Celso
FORTRAN 90 Denise Yumi Takamura.
Estruturas de Dados para projeto de SGBD. Estruturas de dados analisadas Estruturas de nível Esparso Denso Combinadas Arvore B+ Tabela de hash.
Subconsultas em SQL. Subconsulta Estrutura geral SELECT.... FROM.... WHERE [at] OPERADOR ( SELECT... FROM... [WHERE... ]) Declaração SELECT localizada.
BARRAMENTOS Iriam Cristiane Damas e Ronaldo Hornburg
Arquitetura de computadores
Arquiteturas de 4, 3, 2, 1 e 0 endereços.
Criptografia Quântica : Um Estudo
(Como implementar multiplicação e divisão uma vez só :-)
Gustavo Vieira Pereira
Criptoanálise Integral Criptoanálise diferencial: diferença (subtração) entre duas cifragens Criptoanálise integral: efeito cumulativo (soma) entre várias.
Compressão por Hardware
Serpent-1 O Serpent-0 refinado Paulo Estima Mello
Profa. Graziela Santos de Araújo Algoritmos e Programação II, 2010
Ch7a-1 Capítulo 7 Sistemas de Memória. Ch7a-2 SRAM (Static RAM): –Valor é armazenado por meio da interligação de um par de inversores –Rápido, mas consome.
1998 Morgan Kaufmann Publishers Ch8-1 Capítulo 8 Sistemas I/O.
Geração de Código Otimizações independentes de máquina.
Diretoria de Ensino – Região de Mogi Mirim. Questões de múltipla escolha: elaboradas por professores e analisadas por especialistas; pré-testadas; realiza.
Fazendo Slides no Power Point
Arquitetura da informação Por Luiz Siqueira. O nome é imponente e a técnica está na moda. Contudo, o importante é o seguinte: a Arquitetura de Informação.
Planejando seu site Objetivos Abordagem Sílvia Dota.
Ibn sina (Avicena ) Necessidade e contingência.
Técnicas de Amostragem
Reconexão por Caminhos Marcone Jamilson Freitas Souza Departamento de Computação Universidade Federal de Ouro Preto
Sistemas de Tutoria Inteligente (STI) Visam proporcionar instrução de forma adaptada a cada aprendiz. STIs adaptam o processo de instrução a determinadas.
CES-11 LAB 03 Bitmap Quadtree
Capítulo IX – Ponteiros 9.1 – Introdução 9.2 – Relação entre ponteiros e variáveis indexadas 9.3 – Alocação dinâmica de memória 9.4 – Variáveis indexadas,
Discos Rigídos 1. Tecnologia Raid
1. Função: - Criar meios para que o processador possa comunicar-se com todos estes componentes com a maior velocidade e confiabilidade possíveis. - Na.
Capítulo I – Conceitos Primários 1.1 – Estrutura de um computador 1.2 – Informações manipuladas por um computador 1.3 – Evolução das linguagens de programação.
Tema I TEMA DE DISCUSSÃO I Prof. Dr. Marcio Lobo Netto 1 o. Período / 2004 Escola Politécnica da USP MBA EPUSP em Gestão e Engenharia do Produto EP018.
Curso Técnico em Informática La Salle - Canoas
FERRAMENTAS DE CRIATIVIDADE
FUNDAÇÃO CARLOS CHAGAS
BlastPhen Aluno: Ricardo Nishikido Pereira
Já definimos o coeficiente angular de uma curva y = f(x) no ponto onde x = x 0. Derivadas Chamamos esse limite, quando ele existia, de derivada de f em.
ALOCAÇÃO DINÂMICA DE MEMÓRIA
BARRAMENTO CPU - MEMORIA
OTIMIZAÇÃO DE DESEMPENHO
Introdução à Codificação de Canal Evelio M. G. Fernández
CÓDIGOS CORRETORES DE ERROS
Resolução de Sistemas Não-Lineares- Parte 1
Sistemas Lineares Parte 2
Organização de Sistemas de Computadores
Introdução à Arquitetura de Computadores
Desempenho A rápida taxa de melhoria na tecnologia de computadores veio em decorrência de dois fatores: avanços na tecnologia utilizada na construção.
Máquina Multinível Um programa pode ser definido como uma seqüência de instruções que descrevem como executar uma determinada tarefa. Uma instrução pode.
Pipeline É possível obter maior desempenho computacional com:
7. INTEGRAÇÃO NUMÉRICA Parte 1
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.
Redes Embutidas - Prof a Luiza Mourelle 1 1 Topologias As topologias de redes intrachip podem ser agrupadas em duas classes principais: as redes diretas.
Laboratório de Programação Prof. Oscar Luiz Monteiro de Farias
Recursividade Estrutura de Dados.
Marco Antonio Montebello Júnior
Prof: Graciano Notação Científica.
Frações Professor: Graciano Pianezzer Beletti.
Otimização Aplicada ao Dimensionamento e Operação de Reservatórios
Curso de Programação em C++ Universidade Federal do Ceará Departamento de Engenharia Estrutural e Construção Civil Prof: Evandro Parente Junior Monitor:
LINGUAGENS DE PROGRAMAÇÃO
04:27 Introdução Tipos de Fluxo de Dados e de Arquivos Manipulação de Arquivos em Java Classes FileReader e FileWriter Classes FileInputStream e FileOutputStream.
Sistemas de Informação Prof. Me. Everton C. Tetila Modelo de dados relacional Banco de Dados I.
Comunicação CLP através do Driver OPC
Introdução Ciência da Computação estudo de algoritmos –ÊNFASE ao estudo de DADOS armazenamento manipulação refinamento (a partir de dados cru) estrutura.
1 Seja o resultado de um experimento aleatório. Suponha que uma forma de onda é associada a cada resultado.A coleção de tais formas de ondas formam um.
8. Uma Função de duas Variáveis Aleatórias
Exercícios de revisão.
Transcrição da apresentação:

Arquitetura de ComputadoresProf a Luiza Mourelle Apesar da evolução tecnológica, as CPUs continuam mais rápidas que a memória. O problema não é tecnológico, mas econômico. pequena quantidade de memória rápida grande quantidade de memória lenta A memória pequena e rápida é chamada cache e está sob o controle do microprograma.

Arquitetura de ComputadoresProf a Luiza Mourelle Se uma dada referência à memória é para o endereço A, é possível que a próxima referência à memória seja nas vizinhanças de A. O princípio da localidade consiste em que referências à memória, feitas em qualquer intervalo curto de tempo, tendem a usar apenas uma pequena fração da memória total. CPU CACHE MEMÓRIA PRINCIPAL barramento

Arquitetura de ComputadoresProf a Luiza Mourelle Considerando: k- nº de vezes que uma palavra é referenciada c- tempo de acesso ao cache m- tempo de acesso à memória principal h- taxa de acerto (hit ratio) 1 - h- taxa de falha (miss ratio) tem-se: h = (k - 1) / k tempo médio de acesso = c + (1 - h) m

Arquitetura de ComputadoresProf a Luiza Mourelle A memória, de 2**m bytes, é dividida em blocos consecutivos de b bytes, totalizando (2**m)/b blocos. Cada bloco tem um endereço, que é um múltiplo de b, e o tamanho do bloco é, normalmente, uma potência de 2. O cache associativo apresenta um nº de posições (slots ou linhas), cada uma contendo um bloco e seu nº de bloco, junto com um bit dizendo se aquela posição está em uso ou não. A ordem das entradas é aleatória.

Arquitetura de ComputadoresProf a Luiza Mourelle nº do blocovalorv (2**24) -1 endereçonº do bloco bits32 bits 1k linhas cache associativo ~~ ~~

Arquitetura de ComputadoresProf a Luiza Mourelle Se o cache estiver cheio, uma entrada antiga terá que ser descartada para deixar lugar para uma nova. Quando aparece um endereço de memória, o microprograma deve calcular o nº do bloco e, então, procurar aquele nº no cache. Para evitar a pesquisa linear, o cache associativo tem um hardware especial que pode comparar simultaneamente todas as entradas com o nº do bloco dado, ao invés de um loop do microprograma. Este hardware torna o cache associativo caro. No cache com mapeamento direto, cada bloco é colocado num slot, cujo nº pode corresponder, por exemplo, ao resto da divisão do nº do bloco pelo nº de slots.

Arquitetura de ComputadoresProf a Luiza Mourelle tagvalorvslot endereços 0, 4096, 8192, 12288,... 4, 4100, 8196, 12292,... 8, 4104, 8200, 12296, , 8188, 12284, 16380,... Um problema com o cache com mapeamento direto é identificar a palavra que está ocupando um dado slot. cache com mapeamento direto

Arquitetura de ComputadoresProf a Luiza Mourelle A solução está em criar um campo tag no slot, que guarda a parte do endereço que não participa do endereçamento do slot. Ex: Seja a palavra no endereço tagslot00 endereço da palavra 12 bits10 bits2 Os dois bits menos significativos são 0, pois os blocos são inteiros e múltiplos do tamanho do bloco (4 bytes). O fato de que blocos múltiplos mapeiam no mesmo slot pode degradar o desempenho do cache, se muitas palavras que estiverem sendo usadas mapeiem no mesmo slot.

Arquitetura de ComputadoresProf a Luiza Mourelle tagvalorvslot tagvalorvtagvalorv... entrada 0entrada 1entrada n-1 No cache associativo por conjunto utiliza-se um cache de mapeamento direto com múltiplas entradas por slot.

Arquitetura de ComputadoresProf a Luiza Mourelle Tanto o cache associativo quanto o de mapeamento direto são casos especiais do cache associativo por conjunto. O cache de mapeamento direto é mais simples, mais barato e tem tempo de acesso mais rápido. O cache associativo tem uma taxa de acerto maior para qualquer dado nº de slots, pois a probabilidade de conflitos é mínima. Uma vantagem de se usar um tamanho de bloco com mais de uma palavra é que existe menos overhead na busca de um bloco de oito palavras do que na busca de oito blocos de uma palavra.

Arquitetura de ComputadoresProf a Luiza Mourelle Uma desvantagem é que nem todas as palavras podem ser necessárias, de modo que algumas das buscas podem ser desperdiçadas. Uma técnica para manipular escritas é denominada write through, quando uma palavra é escrita de volta na memória imediatamente após ter sido escrita no cache (consistência de dados). Outra técnica é denominada copy back, em que a memória só é atualizada quando a entrada é expurgada do cache para permitir que outra entrada tome conta do slot (consistência de dados).

Arquitetura de ComputadoresProf a Luiza Mourelle A técnica write through causa mais tráfego de barramento. A técnica de copy back pode gerar inconsistência se a CPU efetuar uma transferência entre memória e disco, enquanto a memória não tiver sido atualizada. Se a razão de leituras para escritas for muito alta, pode ser mais simples usar write through. Se houver muitas escritas, pode ser melhor usar copy back e fazer com que o microprograma expurgue todo o cache antes de uma operação de entrada/saída.