MAC0412 - Organização de Computadores Gargalo de Memória



Documentos relacionados
Organização e Arquitetura de Computadores

Capítulo 8 Arquitetura de Computadores Paralelos

BARRAMENTO DO SISTEMA

Unidade Central de Processamento (CPU) Processador. Renan Manola Introdução ao Computador 2010/01

Visão Geral da Arquitetura de Computadores. Prof. Elthon Scariel Dias

Organização de Computadores 1

Guilherme Pina Cardim. Relatório de Sistemas Operacionais I

Organização e Arquitetura de Computadores

Máquinas Multiníveis

Introdução à Organização de Computadores. Sistemas da Computação Prof. Rossano Pablo Pinto, Msc. rossano at gmail com 2 semestre 2007

Márcio Leandro Moraes Rodrigues. Frame Relay

Sistemas Operacionais

ROM e RAM. Memórias 23/11/2015

Arquitetura e Organização de Computadores

Edeyson Andrade Gomes

Arquitetura e Organização de Computadores 2. Apresentação da Disciplina

Organização de Computadores

Componentes de um Computador: Modelo Von Neumann

Estruturas do Sistema de Computação

Arquitetura de Computadores Paralelismo, CISC X RISC, Interpretação X Tradução, Caminho de dados

Introdução à Organização de Computadores. Execução de Programas Prof. Rossano Pablo Pinto, Msc. rossano at gmail com 2 semestre 2007

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 8

Introdução à Computação: Arquitetura von Neumann

Memórias Prof. Galvez Gonçalves

Memória principal; Unidade de Controle U C P. Unidade Lógica e Aritmética

PROJETO DE REDES

O processador é composto por: Unidade de controlo - Interpreta as instruções armazenadas; - Dá comandos a todos os elementos do sistema.

RISC X CISC - Pipeline

ARQUITETURA DE COMPUTADORES

Há dois tipos de configurações bidirecionais usados na comunicação em uma rede Ethernet:

O que é Arquitetura de Computadores?

CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA

AULA4: PROCESSADORES. Figura 1 Processadores Intel e AMD.

AULA 1. Informática Básica. Gustavo Leitão. Disciplina: Professor:

Sistemas Operacionais Gerência de Dispositivos

Introdução a Informática. Prof.: Roberto Franciscatto

Organização e Arquitetura de Computadores. Hugo Barros @hugobarros.com.br

IW10. Rev.: 02. Especificações Técnicas

O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware

ANHANGUERA EDUCACIONAL. Capítulo 2. Conceitos de Hardware e Software

Multiplexador. Permitem que vários equipamentos compartilhem um único canal de comunicação

Introdução à Organização de Computadores Memória Principal

Arquitetura de Von Neumann e os Computadores Modernos

ARQUITETURA DE COMPUTADORES

Organização Básica do Computador

Sistemas Operacionais. Prof. André Y. Kusumoto

Introdução às arquiteturas paralelas e taxonomia de Flynn

Introdução à Arquitetura de Computadores. Capítulo 1: Introdução

Memória cache. Prof. Francisco Adelton

Introdução à Informática

Fundamentos de Sistemas Operacionais

Capítulo 2 (Livro Texto*) - Notas de Aula - Parte II

Arquitetura dos Sistemas de Informação Distribuídos

Informática Aplicada à Química. Hardware - armazenamento

Arquiteturas RISC. (Reduced Instructions Set Computers)

Tecnologia PCI express. Introdução. Tecnologia PCI Express

Processos e Threads (partes I e II)

3/9/2010. Ligação da UCP com o barramento do. sistema. As funções básicas dos registradores nos permitem classificá-los em duas categorias:

Disciplina: Introdução à Informática Profª Érica Barcelos

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 10

ANÁLISE ESSENCIAL CESAR BEZERRA TEIXEIRA

INSTITUTO DE EMPREGO E FORMAÇÃO PROFISSIONAL, I.P.

O Hardware Dentro da Unidade do Sistema

Dispositivos de Memória

Estrutura geral de um computador

Organização e Arquitetura de Computadores I. de Computadores

SIS17-Arquitetura de Computadores

ARQUITETURA DE COMPUTADORES

Hardware de Computadores

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

Programação de Sistemas para Tempo Real Capítulo 1. Luiz Affonso Guedes DCA-CT-UFRN

Contil Informática. Curso Técnico em Informática Processadores Core

ESTUDO DE CASO WINDOWS VISTA

Introdução. Software (Parte III)

Introdução à Arquitetura de Computadores

Capítulo 4. MARIE (Machine Architecture Really Intuitive and Easy)

O que é RAID? Tipos de RAID:

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

AUTOMAÇÃO DE ESCRITÓRIOS ADE

Introdução à Computação

Introdução à Organização e Arquitetura de Computadores. Prof. Leonardo Barreto Campos 1

Visão Geral de Sistemas Operacionais

Aula 03 Regras de Segmentação e Switches

Arquitetura de Computadores - Revisão -

Sistemas Operacionais. Roteiro. Hardware. Marcos Laureano

Capítulo 4 Gerenciamento de Memória

MÓDULO 8 ARQUITETURA DOS SISTEMAS DE BANCO DE DADOS

Unidade 13: Paralelismo:

Tipos de sistemas operacionais

Administração de Sistemas de Informação Gerenciais

Arquitetura de Computadores. por Helcio Wagner da Silva

ICORLI. INSTALAÇÃO, CONFIGURAÇÃO e OPERAÇÃO EM REDES LOCAIS e INTERNET

SWITCHING REDE DENSAMENTE POVOADA

Sistemas Operacionais e Introdução à Programação. Módulo 1 Sistemas Operacionais

Capítulo 1 Introdução

Paralelismo. Computadores de alto-desempenho são utilizados em diversas áreas:

Faculdade Lourenço Filho Curso de Redes de Computadores. TRABALHO DE TELEFONIA IP Serviços Diferenciados - QoS

Arquitetura de Rede de Computadores

Medidas de Desempenho e a Lei de Amdahl

for Information Interchange.

Transcrição:

MAC0412 - Organização de Computadores André Jucovsky Bianchi, Cauê Haucke Porta Guerra, Eduardo Menezes, Leandro Moraes, Roberto Piassi Passos Bodo, Marcio Masaki Tomiyoshi, Omar Mahmoud Abou Ajoue, Otavio Nascimento 5 de dezembro de 2008

1 A arquitetura de Von Neumann O problema do gargalo de memória 2 de Software METRIC Técnicas com laços de Hardware Impulse Hardware Performance Monitors 3

Nosso tema inicial Avoiding the Memory Bottleneck through Structured Arrays, Michael J. Flynn

Nosso tema inicial Avoiding the Memory Bottleneck through Structured Arrays, Michael J. Flynn Nosso tema real Gargalo de memória: problema e soluções

A arquitetura de Von Neumann O problema do gargalo de memória Outline 1 A arquitetura de Von Neumann O problema do gargalo de memória 2 de Software METRIC Técnicas com laços de Hardware Impulse Hardware Performance Monitors 3

A arquitetura de Von Neumann O problema do gargalo de memória A arquitetura de Von Neumann

A arquitetura de Von Neumann O problema do gargalo de memória Níveis de memória

A arquitetura de Von Neumann O problema do gargalo de memória Memória compartilhada

A arquitetura de Von Neumann O problema do gargalo de memória Memória distribuída

A arquitetura de Von Neumann O problema do gargalo de memória Outline 1 A arquitetura de Von Neumann O problema do gargalo de memória 2 de Software METRIC Técnicas com laços de Hardware Impulse Hardware Performance Monitors 3

A arquitetura de Von Neumann O problema do gargalo de memória Separação entre unidade lógica e memória principal Os componentes têm características diferentes Processador: rapidez nas contas. Memória: capacidade de armazenamento, espaço físico e distância da unidade lógica.

A arquitetura de Von Neumann O problema do gargalo de memória Separação entre unidade lógica e memória principal Os componentes têm características diferentes Processador: rapidez nas contas. Memória: capacidade de armazenamento, espaço físico e distância da unidade lógica. E portanto têm necessidades diferentes Processador: transistores rápidos aquecem e precisam de camadas de metal para dissipação de calor. Memória: para encaixar mais memória em menos espaço utiliza-se camadas de siĺıcio.

A arquitetura de Von Neumann O problema do gargalo de memória Separação entre unidade lógica e memória principal O invólucro também pode ser diferente: Processador Invólucros que dissipam maior potência (5 a 50 watts). Centenas de pinos para comunicação com a memória externa.

A arquitetura de Von Neumann O problema do gargalo de memória Separação entre unidade lógica e memória principal O invólucro também pode ser diferente: Processador Invólucros que dissipam maior potência (5 a 50 watts). Centenas de pinos para comunicação com a memória externa. Memória Invólucros mais baratos que dissipam menor potência (1 watt). Apenas algumas dúzias de pinos.

A arquitetura de Von Neumann O problema do gargalo de memória Separação entre unidade lógica e memória principal O invólucro também pode ser diferente: Processador Memória Invólucros que dissipam maior potência (5 a 50 watts). Centenas de pinos para comunicação com a memória externa. Invólucros mais baratos que dissipam menor potência (1 watt). Apenas algumas dúzias de pinos. Além do preço, invólucros diferentes tornam o número de chips de memória independente do número de processadores.

A arquitetura de Von Neumann O problema do gargalo de memória O problema A performance dos processadores cresce cerca de 60% ao ano. Já a das memórias, cresce cerca de apenas 10% ao ano.

A arquitetura de Von Neumann O problema do gargalo de memória O problema A performance dos processadores cresce cerca de 60% ao ano. Já a das memórias, cresce cerca de apenas 10% ao ano.

de Software de Hardware Outline 1 A arquitetura de Von Neumann O problema do gargalo de memória 2 de Software METRIC Técnicas com laços de Hardware Impulse Hardware Performance Monitors 3

de Software de Hardware Por que METRIC?

de Software de Hardware O que é?

de Software de Hardware O que é? Dynamic Binary Rewriting

de Software de Hardware Como funciona?

de Software de Hardware Como funciona? instrumentação

de Software de Hardware Como funciona? instrumentação geração e compressão de pontos da aplicação

de Software de Hardware Como funciona? instrumentação geração e compressão de pontos da aplicação simulação incremental do cache

de Software de Hardware

de Software de Hardware Outline 1 A arquitetura de Von Neumann O problema do gargalo de memória 2 de Software METRIC Técnicas com laços de Hardware Impulse Hardware Performance Monitors 3

de Software de Hardware Motivação e história

de Software de Hardware O que é?

de Software de Hardware O que é? Como funciona

de Software de Hardware Outline 1 A arquitetura de Von Neumann O problema do gargalo de memória 2 de Software METRIC Técnicas com laços de Hardware Impulse Hardware Performance Monitors 3

de Software de Hardware Impulse

de Software de Hardware Motivação Grau de localidade de dados baixo em certos tipos de aplicações. Exemplos: CAD; Processamento de sinais; Matrizes esparsas; Banco de dados...

de Software de Hardware Problema

de Software de Hardware Solução

de Software de Hardware Hardware Shadow addresses - endereço não utilizado Assembly Buffer - memória SRAM Shadow descriptor - descrição do remapeamento AddrCalc - cálculo das posições dos dados Memory Controller Translation Lookaside Buffer - endereço físico

de Software de Hardware Hardware Possível problema Camada adicional nos acessos à memória aumentam a latência e diminuem o desempenho.

de Software de Hardware Hardware Possível problema Camada adicional nos acessos à memória aumentam a latência e diminuem o desempenho. Solução Adicionar buffers para realizar prefetching.

de Software de Hardware Resultados Ganhos de 67% a até 449% no tempo de execução! Aumento da taxa de acertos no cache L1. Diminuição na taxa de erros no TLB.

de Software de Hardware Nem tudo são flores... Precisa de suporte do SO; Ainda exige intervenção do programador; Controladoras de memória atuais integradas às CPUs; Otimização focada em programas que não possuam localidade de dados.

de Software de Hardware Outline 1 A arquitetura de Von Neumann O problema do gargalo de memória 2 de Software METRIC Técnicas com laços de Hardware Impulse Hardware Performance Monitors 3

de Software de Hardware Cache Miss

de Software de Hardware Velocidade Processador Velocidade Acesso a Memória Principal Melhorar eficiência de uma aplicação Fazer uso efetivo do cache Informações a nível de código sobre estruturas de dados Otimizando as estruturas de dados : Diminuir o número de Cache Misses provocados pelo acesso a elas Ferramentas: Monitores de performance no hardware

de Software de Hardware Análise de Cache Miss Técnicas Amostragem Busca n-caminhos (n-way) Objetivo: Ranquear estruturas de dados que mais causam cache misses.

de Software de Hardware Técnica de Amostragem Associa um contador a cada objeto, que esta na memória, de uma determinada aplicação Interrupção é gerada após um certo número de cache misses Incrementa o contador do objeto responsável pelo cache miss a cada interrupção

de Software de Hardware Técnica de Busca: n-way Divide a região de interesse da memória em n partes Associa a cada uma um contador de cache miss Coloca as n partes em uma fila de prioridade Após um determinado tempo, retira da fila a região com maior porcentagem Esta região é dividida em n partes e estas partes são colocadas na fila de prioridade Termina quando a região do topo da fila representar um único objeto

de Software de Hardware Simulando uma busca 2-way

de Software de Hardware Simulando uma busca 2-way

de Software de Hardware Simulando uma busca 2-way

de Software de Hardware Simulando uma busca 2-way

de Software de Hardware Simulando uma busca 2-way

de Software de Hardware Simulando uma busca 2-way

de Software de Hardware Simulando uma busca 2-way

de Software de Hardware Simulando uma busca 2-way

de Software de Hardware Simulando uma busca 2-way

de Software de Hardware Simulando uma busca 2-way

de Software de Hardware Simulando uma busca 2-way

de Software de Hardware Busca n-way: Problemas e Problema: Objeto dividido em mais de uma região

de Software de Hardware Busca n-way: Problemas e Problema: Objeto dividido em mais de uma região Solução: Ajustar o tamanho de cada região para que um objeto não ultrapasse suas fronteiras

de Software de Hardware Busca n-way: Problemas e Problema: Objeto dividido em mais de uma região Solução: Ajustar o tamanho de cada região para que um objeto não ultrapasse suas fronteiras Problema: Programas que possuem padrões de acesso diferentes ao longo do tempo

de Software de Hardware Busca n-way: Problemas e Problema: Objeto dividido em mais de uma região Solução: Ajustar o tamanho de cada região para que um objeto não ultrapasse suas fronteiras Problema: Programas que possuem padrões de acesso diferentes ao longo do tempo Solução: Não excluir imediatamente uma região que teve zero cache misses.

de Software de Hardware Simulador Ambiente para execução dos programas a serem testados Ambiente para execução das Ferramentas de Análise Gera interrupção depois que um certo número de Cache Misses ocorreram Identifica o endereço relacionado ao último cache miss Possibilita limitar um contador de cache miss para uma determinada região da memória

de Software de Hardware Experimentos As seguintes aplicações foram utilizadas como objetos de análise: tomcatv, su2cor, applu, swim, mgrid, compress e ijpeg (aplicações do SPEC95 benchmark suite) O método de Amostragem foi executado com uma frequência de 1 em 50.000 Para o algoritmo de busca, será realizado a busca 10-way.

de Software de Hardware Resultados

Conclusões As técnicas não atacam o problema na fonte (lembram do gráfico?).

Conclusões As técnicas não atacam o problema na fonte (lembram do gráfico?). Compromisso entre latência banda. Novo problema: congestionamento de banda.

Conclusões As técnicas não atacam o problema na fonte (lembram do gráfico?). Compromisso entre latência banda. Novo problema: congestionamento de banda. Memória e o processador num mesmo pacote?

Conclusões As técnicas não atacam o problema na fonte (lembram do gráfico?). Compromisso entre latência banda. Novo problema: congestionamento de banda. Memória e o processador num mesmo pacote? Computação paralela.