Desempenho DESEMPENHO DE COMPUTADORES



Documentos relacionados
Desempenho de Computadores

Organização de Computadores

Organização de Computadores

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho

Avaliando e Compreendendo o Desempenho. Capítulo 4

Arquitetura de Computadores. Ivan Saraiva Silva

Arquitetura de Computadores I

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

Previsão do Desempenho. AC1 13ª aula Previsão do Desempenho 1

Arquitetura e Organização de Computadores

Arquitetura de Computadores

Desempenho. Sistemas de Computação

ci212 desempenho Avaliação de Desempenho

Medidas de desempenho de CPUs. Uma introdução breve

Organização e Arquitetura de Computadores. Aula 2 - Desempenho Juliana F. Camapum Wanderley.

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

Arquitetura e Organização de Computadores Aula 5 Consolidando Conhecimentos de Desempenho e Resumindo Prof. Julio Saraçol

1.3. Componentes dum sistema informático HARDWARE SOFTWARE

ARQUITETURA DE COMPUTADORES

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

Introdução aos Computadores

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

Algumas características especiais

Capítulo 1. This material may not be copied or distributed for commercial purposes without express written permission of the copyright holder.

Arquitetura e Organização de Computadores 2

Organização de Computadores (Aula 3) Componentes de um Computador Unidade Central de Processamento (CPU)

Computador Eletrônico Digital. Organização de Computadores (Aula 3) Componentes de um Computador (1) É um sistema composto por:

Arquiteturas RISC. (Reduced Instructions Set Computers)

Sistemas Operacionais

Arquitetura e Organização de Computadores

Capítulo 1 Introdução

Informática I. Aula 5. Aula 5-13/05/2006 1

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

Anotações da Parte 2

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES ARQUITETURAS RISC E CISC. Prof. Dr. Daniel Caetano

Medidas de Desempenho e a Lei de Amdahl

Sistemas Computacionais II Professor Frederico Sauer

Infraestrutura de Hardware. Desempenho

Edeyson Andrade Gomes

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

Medição do Desempenho

Desempenho (Parte I): Compreensão e Avaliação

Avaliação de Desempenho

RISC X CISC - Pipeline

Sistemas Operacionais

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

Estruturas do Sistema de Computação

Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores.

CP C U P U - Un U i n da d d a e d e Ce C n e t n ral a de d e Pr P oc o es e sam a e m n e t n o o Pr P oc o es e sad a o d r o Aula 03

SO - Conceitos Básicos. Introdução ao Computador 2010/01 Renan Manola

Noções básicas de Informática: Software

Arquitetura de Computadores RISC x CISC. Gustavo Pinto Vilar

Sistemas Operacionais

Processador ( CPU ) E/S. Memória. Sistema composto por Processador, Memória e dispositivos de E/S, interligados por um barramento

Sistemas Operacionais. Prof. André Y. Kusumoto

3. O NIVEL DA LINGUAGEM DE MONTAGEM

Curso EFA Técnico/a de Informática - Sistemas. Óbidos

Backup. Permitir a recuperação de sistemas de arquivo inteiros de uma só vez. Backup é somente uma cópia idêntica de todos os dados do computador?

Máquinas Multiníveis

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

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

Disciplina: Organização de computadores


ARQUITETURA DE COMPUTADORES

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 03 Conceitos de Hardware e Software parte 01. Cursos de Computação

O que veremos nesta aula? Principais Aspectos de Sistemas Operacionais. Visão geral de um sistema computacional

28/9/2010. Unidade de Controle Funcionamento e Implementação

Sistema de Computação

ARTIGO IV PRINCIPAIS PARTES DA CPU

Arquitetura de um Computador

Microcontroladores e Microprocessadores

Sistemas Operacionais

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

Sistema Operacional Correção - Exercício de Revisão

Aula 26: Arquiteturas RISC vs. CISC

Introdução à Arquitetura de Computadores

ARQUITETURA DE COMPUTADORES

Capítulo 1. Abstrações do Computador e Tecnologia

Índice. Escolha de um Computador

RISC - Reduced Instruction Set Computer

MEDIDAS DE DESEMPENHO DE SISTEMA DE COMPUTADORES:

Técnicas de Manutenção de Computadores

Arquitecturas Alternativas. Pipelining Super-escalar VLIW IA-64

CAPÍTULO 2 DESEMPENHO

O quê um Processador e qual a sua função?

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES. Prof. André Dutton

Organização e Arquitetura de Computadores I

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

Evolução das CPUs: Dual e Quad Core

Entrada e Saída. Interface entre periféricos, processador e memória. Fonte: Minho - Portugal 1

Organização e Arquitetura de Computadores. Capítulo 13 Paralelismo no nível de instruções

UFRJ IM - DCC. Sistemas Operacionais I. Unidade I Introdução. 11/02/2014 Prof. Valeria M. Bastos

Arquitetura de Computadores I

Sistemas Distribuídos Sincronização de Relógios. Edeyson Andrade Gomes

20/09/2009 TRANSFORMANDO DADOS EM. PROCESSANDO DADOS George Gomes Cabral SISTEMAS NUMÉRICOS INFORMAÇÕES

UFRJ IM - DCC. Sistemas Operacionais I

Comparativo de desempenho do Pervasive PSQL v11

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

O Que Veremos. Introdução. Introdução. Definindo Desempenho. Definindo Desempenho. Avaliando e Compreendendo o Desempenho

Transcrição:

Desempenho Ch2-1 DESEMPENHO DE COMPUTADORES Desempenho -> Como medir o desempenho? AVIÃO PASSAGEIRO S AUTOMIA (milhas) VELOCIDAD E (mph) THROUGHPUT (passag.xveloc) Boeing 777 375 4630 610 228.750 Boeing 747 470 4150 610 286.700 Concorde 132 4000 1350 178.200 Douglas DC-8 146 8720 544 79.424 O desempenho pode ser definido de diferentes formas, p. ex., velocidade, n. de passageiros, (n. passag. X veloc.), etc. Ch2-2

Em computação: Um programa sendo executado em duas worksations diferentes, a mais rápida é aquela que acaba o job primeiro. para o usuário tempo de resposta ou tempo de processamento. Em um centro de computação com 2 computadores grandes com timeshared, executando jobs de vários usuários, o mais rápido é aquele que executa mais jobs durante um intervalo de tempo. para o adm. de sistemas throughput job/hora. Ch2-3 Tempo de resposta & Throughput Quais das afirmações abaixo faz com que cresça o throughput, decresça o tempo de resposta, ou ambos? 1 - Mudar o processador por um mais rápido. 2 - Adicionar mais um processador a sistemas que usam múltiplos processadores para tarefas distinta. (Quase sempre que se decresce o tempo de resposta, o throughput cresce). Ch2-4

Resposta Em 1 O tempo de resposta e o throughput melhoram, enquanto que em 2, o tempo de resposta continua o mesmo e o throughput cresce. Obs.: Diminuindo o tempo de espera, podemos também aumentar o tempo de resposta. Ch2-5 Para uma máquina X: para uma determinada tarefa: Desempenho X = ( 1 / tempo de execução X ) Comparando 2 máquinas X e Y, se: Desempenho X > Desempenho Y Tempo de execução Y > Tempo de execução X Ch2-6

Desempenho relativo (Desempenho X / Desempenho Y ) D X / D Y = (Tempo de execução Y / Tempo de execução X ) Se X é n vezes mais rápida que Y, então o tempo de execução em Y é n vezes maior que em X. Exemplo Um programa leva 10 segundos na máquina A e 15 na B: n = (Tempo de execução B / Tempo de execução A ) = 1.5 A é 1.5 vezes mais rápido que B. Ch2-7 Medida de Desempenho tempo Tempo de Execução segundos/programa Tempo de relógio (clock time) Tempo de resposta (response time) Tempo transcorrido (elapsed time) Tempo de CPU ( CPU time) OBS.: elapsed time = tempo de tudo (CPU + I/O + etc.) CPU time = user CPU time + system CPU time (geralmente só se considera user CPU time) Clock time período do clock (clock cycle) segundos Ex.: 2nseg Freqência do clock (clock rate) Hz Ex.: 500 MHz Ch2-8

Tempo de CPU T CPU (p/ programa) = períodos de clock da CPU X período do clock T CPU (p/ um programa) = períodos de clock da CPU (p/ um programa) / freqüência do clock Exemplo Um programa roda em 10 seg. na máquina A, cuja freqüência de seu clock é de 400 MHz. Uma máquina B, a ser projetada, tem que rodar este programa em 6 seg. Que acréscimo na freqüência de clock é necessário, sabendose que na máquina B haverá um acréscimo de 1.2 vezes no número de períodos de clock em relação à máquina A. Ch2-9 Solução A 10 seg. 400 MHz k períodos B 6 seg.? 1.2 k períodos t A = 10 = k/400 k= 4000 t B = 6 = 1.2k/x x = (1.2 X 4000)/6 = 800 MHz B tem que ter um clock com freqüência duas vezes maior que A. Ch2-10

n o de períodos da CPU ( para um programa) n o de instruções X n o médio de períodos por instrução (CPI) T CPU (para um programa) = (n o de instruções X CPI) / f ck T CPU (para um programa) = (n o de instruções X CPI) X t ck Exemplo - Duas implementações para o mesmo Instruction Set. - Para um determinado programa temos: t ck CPI Máquina A 1 ns 2.0 Máquina B 2 ns 1.2 Qual a máquina mais rápida? E quanto? Ch2-11 Solução: I = n. de instruções do programa Tempo da CPU T cpua = I X 2.0 X 1n = 2.0n X I + rápida Períodos de clock para o programa T cpub = I X 1.2 X 2n = 2.4n X I (CPU performancea / CPU perfomance B) = (2.4n X I / 2.0n X I) = 1.2 1.2 vezes + rápida Ch2-12

COMPONENTES BÁSICOS DE Desempenho COMPONENTES UNIDADE DE MEDIDA tempo de CPU segundos/programa n. de instruções instruções executadas (do programa) períodos de cock/instruções (CPI) média do n. de períodos de clock para a execução das instruções período do clock segundos Para instruções de diferentes tipos Períodos de clock da CPU = Σ ( CPI i X C i ) i=1 n n. de classes de instruções n. de instruções da classe i média do n. de períodos para instruções da classe i Ch2-13 Exemplo Um projetista de compiladores está tentando decidir 2 seqüências de códigos para uma determinada máquina. Os aspectos de hardware da máquina são: classes de instruções CPI para a classe A 1 B 2 C 3 Para um comando, o projetista está considerando 2 seqüências de código: n. de instruções para cada classe seqüência de código A B C 1 2 1 2 2 4 1 1 Qual a seqüência que executa mais instruções? Qual a seqüência mais rápida? Qual a CPI de cada seqüência? Ch2-14

Solução A seqüência 1 executa : 2 + 1 + 2 = 5 instruções menos instruções A seqüência 2 executa : 4 + 1 + 1 = 6 instruções CPU períodos de clock = CPU pc = Σ ( CPI i X C i ) i=1 n CPU pc1 = ( 2X 1) + ( 1 X 2 ) + ( 2 X 3 ) = 10 períodos CPU pc2 = ( 4X 1) + ( 1 X 2 ) + ( 1 X 3 ) = 9 períodos mais rápida CPI = CPU pc / n. de instruções CPI 1 = 10 / 5 = 2 ( média de 2 períodos por instrução) CPI 2 = 9 / 6 = 1.5 (média de 1.5 períodos por instrução) Ch2-15 SPEC 800 700 600 SPEC performance ratio 500 400 300 200 100 0 gcc espresso spice doduc nasa7 li eqntott matrix300 fpppp tomcatv Benchmark Compiler Enhanced compiler Ch2-16

Descrição do sistema utilizado na figura 2.3 Hardware Modelo Powerstation 550 CPU 41.67 MHz POWER 4164 FPU Integrado Número de CPUs 1 Tamanho de cache por CPU 64K dados/ 8K instruções Memória 64 MB Disco 2400 MB SCSI Interface de Rede ND Software Sistema Operacional AIX v3.1.5 Compilador AIX XL C/6000 v1.1.5 Outros software AIX XL Fortran v2.2 Sistema de Arquivos AIX Firmware ND Sistema Parâmetros de Tuning Nenhum Background Load Nenhum Estado do Sistema Multiusuário(somente 1 login) Ch2-17 Exemplo de utilização de um conjunto de programas para um benchmark: Computador A Computador B Programa 1 1 10 Programa 2 1000 100 Total ( segs) 1001 110 Individualmente: A é 10 vezes mais rápido que B para o programa 1 B é 10 vezes mais rápido que A para o programa 2 Qual o mais rápido? Ch2-18

Usando o tempo de execução total : Performance B / Performance A = = Tempo de execução A / Tempo de execução B = = 1001 / 110 = 9.1 B é 9.1 mais rápido que A para os programas 1 e 2 juntos! Ch2-19 SPEC95 CPU benchmarks Ch2-20

Benchmark com SPECInt95 para Pentium e Pentium PRO com diferentes clocks 10 9 8 7 SPECint 6 5 4 3 2 1 0 50 100 150 200 250 Clock rate (MHz) Pentium Pentium Pro Ch2-21 Benchmark com SPECfp95 para Pentium e Pentium PRO com diferentes clocks 10 9 8 7 SPECfp 6 5 4 3 2 1 0 50 100 150 200 250 Clock rate (MHz) Pentium Pentium Pro Ch2-22

MIPS Tentativa de padronizar uma medida de desempenho de um computador. MIPS = n. de instruções / (tempo de execução X 10 6 ) Problemas: MIPS não leva em consideração o tipo de instrução (não se pode comparar computadores com Instruction Set diferentes) MIPS varia entre programas num mesmo computador MIPS pode variar inversamente com a performance Ch2-23 Exemplo Máquina com 3 tipos de instruções e com CPI do exemplo da página 21 n. de instruções por classe (bilhões) código do A B C compilador 1 5 1 1 compilador 2 10 1 1 freqüência de clock = 500 MHz Qual a seqüência de código que será executado mais rápido em MIPS e Tempo de Execução? Ch2-24

Tempo de execução = CPU pc / f ck n CPU pc = Σ ( CPI i X C i ) i=1 CPU pc1 = ( 5 X 1) + ( 1 X 2 ) + ( 1 X 3 ) X 10 9 = 10 X 10 9 períodos CPU pc2 = ( 10 X 1) + ( 1 X 2 ) + ( 1 X 3 ) X 10 9 = 15 X 10 9 períodos Tempo de execução 1 = 10 X 10 9 / 500 X 10 6 = 20 s compilador 1 gera o código mais rápido Tempo de execução 2 = 15 X 10 9 / 500 X 10 6 = 30 s MIPS = n. instruções / (tempo execução X 10 6 ) MIPS 1 = (( 5 + 1 + 1) X 10 9 ) / ( 20 X 10 6 ) = 350 MIPS 1 = (( 10 + 1 + 1) X 10 9 ) / ( 30 X 10 6 ) = 400 compilador 2 tem a maior medida MIPS Ch2-25