Bruno Iran Ferreira Maciel

Slides:



Advertisements
Apresentações semelhantes
Capitulo 6: Entrada e Saída
Advertisements

Introdução à Hierarquia de Memória
Modos de Transferência Acesso Direto à Memória (DMA)
WebDesign Redes de Computadores Aula 07
A Interface entre Processadores e Periféricos
Arquitetura de Computadores
Arquitetura de Computadores
Aula 06: Introdução ao Pipelining, Hazards Estruturais e Forwarding
Software Básico Silvio Fernandes
ARQUITETURAS RISC E CISC
ARQUITETURA DE COMPUTADORES
Processo de Pipelining (exemplo da lavanderia)
MC542 Organização de Computadores Teoria e Prática
Daniel M. Aquino, Marcelo C. Perez, Thais A. B. Fernandes
Processador Pentium 4 MO401 – Arquitetura de Computadores I
Arquiteturas Superescalares
Aproveitamento do Processador
Pipeline.
Modelos de Computadores Paralelos
SSC114 Arquitetura de Computadores Pipeline - Desempenho
Aula 10 06/10/10 (Turma 1 e 2) Profa. Sarita
REPRESENTAÇÃO DE INSTRUÇÕES
Avaliação do desempenho
Avaliação do Desempenho
Avaliando e Compreendendo o Desempenho - Respostas
Arquitetura de Computadores
Processadores – Aula 3 Professor: André Luis Meneses Silva
2- Entendendo o que é Arquitetura e Organização
Sistemas Operacionais I
Introdução à Programação
Prof. João Paulo de Toledo Gomes
Prof. Felipe Ferreira de Oliveira
Fundamentos da Arquitetura de Computadores
Arquitetura de computadores
Organização de Computadores
Arquiteturas Von Neumann e Harvard Computador Cleópatra
Sistemas Operacionais I
Arquitetura de computadores
VII Semana de Iniciação Científica do CBPF
Bruno Iran Ferreira Maciel
Organização e Arquitetura de Computadores
Contextualização de Paralelismo em nível de instrução
DUAL CHANNEL Adinan Southier Soares Senai – São Lourenço do Oeste.
Unidade Central De Processamento: Processador
ARQUITETURA DE COMPUTADORES II
Unidade Central De Processamento: Processador
Técnico em Informática
Sistemas Operacionais
Arquiteturas Von Neumann e Harvard Computador Cleópatra
Bruno Iran Ferreira Maciel
DSC/CEEI/UFCG Introdução à Computação. DSC/CEEI/UFCG 2 Hardware – Memória  Componente de um sistema de computação cuja função é armazenar informações.
Registradores.
Planejamento de Capacidade e Resolução de Problemas
Conceitos Avançados de Arquitetura de Computadores Arquiteturas RISC Arquiteturas Superpipeline e Superescalares.
Hierarquia de Memória Arquitetura de Computadores Aula 4 – Memória 23/08/2012 Bruno Iran Ferreira Maciel Mestrando em Ciências da Computação – Cin/UFPE.
Arquitetura de Computadores Processadores 2 Waldemiro Arruda.
Bruno Iran Ferreira Maciel
Processadores.
Elementos de Informática
Arquitetura de Microcomputadores
Funcionamento interno do computador
Apresentação Objetivo: –Apresentação e revisão de conceitos básicos –Discussão da noção de algoritmo –Escopo da linguagem de programação –Exercício com.
Bruno Iran Ferreira Maciel
Introdução ao Processamento Vetorial
Pet computação UFPE Arquitetura Von Neumann. pet computação UFPE 1.Definição e tipos de arquitetura Quando falamos em arquitetura temos dois tipos a considerar:
Modelos de Troca de Dados em Nível Elétrico ARQUITETURA DE COMPUTADORES II Prof. César Augusto M. Marcon.
Modos de Transferência Acesso Direto à Memória (DMA) ARQUITETURA DE COMPUTADORES II Prof. César Augusto M. Marcon.
EA869 Modos de Endereçamento Faculdade de Engenharia Elétrica e de Computação (FEEC) Universidade Estadual de Campinas (UNICAMP) Prof. Levy Boccato 1.
 Todo processador é constituído de circuitos capazes de realizar algumas operações primitivas:  Somar e subtrair  Mover um dado de um local de armazenamento.
Transcrição da apresentação:

Bruno Iran Ferreira Maciel Capítulo 02 - Pipeline Arquitetura de Computadores Aula 01 28/08/2012 Bruno Iran Ferreira Maciel Mestrando em Ciências da Computação – Cin/UFPE

Revisão da aula passada Memória Cache Partição de memória Paginação e Segmentação

Aula de hoje Hoje vamos ver Pipeline Implementação de pipeline Problemas com o uso de pipeline

Pipeline

Pipeline É uma técnica para aumento de desempenho de arquiteturas de processadores.

Pipeline Algumas verdades Aumenta o número de instruções executadas simultaneamente e a taxa de instruções iniciadas e terminadas por unidade de tempo. Pipeline não reduz o tempo gasto para completar cada instrução individualmente.

Pipeline Algumas verdades Aumenta o número de instruções executadas simultaneamente e o tempo do ciclo do relógio do processador deve ser igual ou maior que o tempo de execução do estágio mais lento do "pipeline". Deve-se procurar dividir a execução da instrução em estágios com o mesmo tempo. O pipeline deve ser mantido sempre "cheio" para que o desempenho máximo seja alcançado.

Pipeline Algumas verdades De um modo gera, com o uso do pipeline, cada instrução ainda leva o mesmo tempo para ser executada. Algumas instruções contudo podem ter o seu tempo de execução aumentado, pois atravessam estágios em que não realizam nenhuma operação útil.

Implementação de Pipeline

Pipeline Exemplo

Pipeline Exemplo

Pipeline Exemplo

Pipeline Exemplo

Pipeline Exemplo *Throughput (ou taxa de transferência) é a quantidade de dados transferidos de um lugar a outro.

Pipeline Throughput (ou taxa de transferência) é a quantidade de dados transferidos de um lugar a outro.

Pipeline O tempo usado pelo processamento de X instruções em um pipeline com N estágios e ciclo de máquina igual a t é dado por: T = [ N + (X-1)] * t Se X >> N (Caso comum), T é aproximadamente X * t

Pipeline O tempo usado pelo processamento de 10001 instruções em um pipeline com 6 estágios e ciclo de máquina igual a 1000000 é dado por: T = [6 + (10001-1)] * 1000000 = ~ 10006*106 (com pipeline) T = (6*1000000) * 10001 =~ 60006*106 (sem pipeline)

Pipeline

Pipeline

Pipeline CPU 2,6ns 1,4ns 2,5ns 3ns 1,5ns

Pipeline Exemplo 1: Um computador é construído usando a arquitetura de 5 estágios. Os atrasos de tempo das unidades individuais são dados por a)Qual a frequência do clock f1 necessária pelo método de uma única instrução por período de clock (sem pipeline)? b)Suponha que o clock seja utilizado em cada estágio simultaneamente (com pipeline). Qual seria a freqüência de clock f2 neste caso? 1,8ns 1,2ns 3,5ns 4ns 1,5ns

Pipeline a) T = 1,8 + 1,2 + 3,5 + 4 + 1,5 = 12ns f = 1 / T f = 1 / (12 * 10-9) = 0,08333 * 109 = 83,33 * 106 = 83,33 MHz b) T = 4ns (parte mais lenta do pipeline) f = 1 / (4 * 10-9) = 0,25 * 109 = 250 * 106 = 250 MHz   1Gb = 109 1MHz = 106 1ns = 10-9

Pipeline Exemplo 2: Considere um sistema que possua 65.000 instruções, uma frequência de 200 MHz e uma arquitetura da pipeline de 8 estágios. Calcule o tempo necessário para executar uma instrução; Calcule o tempo necessário para executar todo o programa sem utilizar a técnica de pipeline; Calcule o tempo necessário para executar todo o programa utilizando a técnica de pipeline;

Pipeline a) f = 1 / T T1instr = T * NumEstag b) TsemPIPE = T * NumEstag * NumInstr c) TcomPIPE = T ( NumInstr + NumEstag - 1)

Problemas com Pipeline

Pipeline

Pipeline

Perguntas ?

Exercício 1) Um computador é construído usando a arquitetura de 5 estágios. Os atrasos de tempo das unidades individuais são dados por a) Qual a freqüência do clock f1 necessária pelo método de uma única instrução por período de clock (sem pipeline)? b) Suponha que o clock seja utilizado em cada estágio simultaneamente (com pipeline). Qual seria a freqüência de clock f2 neste caso? 2) Considere um sistema que possua 90.000 instruções, uma frequência de 900 MHz e uma arquitetura da pipeline de 6 estágios. a) Calcule o tempo necessário para executar uma instrução; b) Calcule o tempo necessário para executar todo o programa sem utilizar a técnica de pipeline; c) Calcule o tempo necessário para executar todo o programa utilizando a técnica de pipeline; 2,8ns 3,2ns 1,5ns 1,8ns 0,6ns