Desempenho. Universidade de Brasília. Objetivo. Introdução. Organização e Arquitetura de Computadores
|
|
- Camila Pinheiro
- 5 Há anos
- Visualizações:
Transcrição
1 Universidade de Brasília Desempenho Organização e Arquitetura de Computadores Objetivo Introduzir o conceito de desempenho em arquitetura de computadores, que fatores são determinantes para o desempenho, como medir o desempenho e mostrar que o de execução é a medida mais confiável. Introdução Este sistema P500 multi-processado distribuído com memória cache local interleaved apresenta um desempenho de 500 MIPS, muito superior ao modelo XQC3 mono-processado com arquitetura superescalar superpipeline e desempenho de 300 MFLOPS a 1.2 CPI, depois do speedup de 1.5 obtido com a duplicação da freqüência de clock. 1
2 Desempenho Medir, fazer relatório, resumir. Fazer opções inteligentes. Ver através dos exageros de marketing. Chave para o entendimento das motivações da organização básica dos sistemas. Desempenho Porque determinada arquitetura é melhor que outras para programas distintos? Quais fatores de desempenho do sistema estão relacionados com o hardware? i.e., necessito de uma nova máquina ou de um novo sistema operacional? Como o conjunto de instruções da máquina afeta o desempenho? Definindo desempenho Qual destas aeronaves apresenta o melhor desempenho? Aeronave Passageiros Autonomia (km) Velocidade (km/h) Boeing Boeing BAC/Sud Concorde Douglas DC Quão rápido é o Concorde comparado ao 747? Quão maior é o 747 comparado ao Douglas DC-8? 2
3 Desempenho de computadores:,,,... Tempo de resposta (latência) Quanto demora para começar a executar uma tarefa? Quanto demora para executar uma tarefa? Quanto demora uma pesquisa num banco de dados? Desempenho de computadores:,, Throughput (fluxo, quantidade total de trabalho realizado num determinado ). Quantas tarefas a máquina pode executar simultaneamente? Qual é o médio de execução? Quanto trabalho é realizado? Exemplo (throughput e de resposta) As seguintes alterações num sistema aumentam o throughput, diminuem o de resposta ou ambos? Se atualizamos (upgrade) a máquina com um novo processador mais rápido. Se adicionamos uma nova máquina num sistema que utiliza múltiplos processadores para tarefas distintas. 3
4 4 X X execução de desempenho 1 = Definição de desempenho Y X Y X Y X execução de execução de execução de execução de desempenho desempenho 1 1 < > > Definição de desempenho n execução de execução de desempenho desempenho n desempenho desempenho X Y Y X Y X = = = Definição de desempenho
5 Exemplo (desempenho relativo) Problema: Se a máquina A executa um programa em 20 s e a máquina B executa o mesmo programa em 25 s, quanto A é mais rápida do que B? Exemplo (desempenho relativo) Problema: Se a máquina A executa um programa em 20 segundos e a máquina B executa o mesmo programa em 25segundos, quanto A é mais rápida do que B? desempenho desempenho de execução de execução B A A B = n 25 = = 1,25 = 25% 20 Tempo de execução Tempo decorrido (Elapsed Time). Tempo de CPU (CPU Time). Nosso enfoque: de CPU de usuário (user CPU time). 5
6 Tempo decorrido (Elapsed Time). Computa tudo (acessos a disco, memória, E/S, etc..) Valor útil mas na maioria das vezes não apropriado para fins de comparação. Tempo de CPU (CPU Time). Não contabiliza E/S ou despendido com outros programas. Pode ser subdividido em de sistema (system time) e de usuário (user time). Tempo de CPU de usuário (user CPU time). Nosso enfoque: Tempo despendido na execução das linhas de código de nosso programa. 6
7 Ciclos de Clock Ao invés de se considerar de execução em segundos, muitas vezes se utiliza ciclos: segundos programa = ciclos segundos programa ciclo Pulsos de Clock indicam quando começam as atividades (uma abstração): Ciclos de Clock Tempo de ciclo = entre pulsos = segundos por ciclo Freqüência de clock = ciclos por segundo 1 Hz = 1 ciclo/seg Um clock de 500 Mhz tem um ciclo de 1 = = 2 çs Como melhorar o desempenho TempoCPU programa = cicloscpu Tempo de ciclo programa TempoCPU cicloscpu/programa = programa freqüênciadeclock 7
8 Como melhorar o desempenho segundos programa = ciclos segundos programa ciclo Logo, para melhorar o desempenho, devemos: o número de ciclos necessários por programa ou o ciclo de clock ou, dito de outra forma, a freqüência de clock. Quantos ciclos são necessários para um programa? Podemos assumir que o número de ciclos é igual ao número de instruções? 1a instrução 2a instrução 3a instrução 4a 5a 6a... Quantos ciclos são necessários para um programa? Esta suposição é incorreta, instruções diferentes consomem quantidades de diferentes em máquinas diferentes. Por quê? São instruções de máquina e não linhas de código C. 8
9 Número diferente de ciclos para instruções diferentes. Multiplicação consome mais que adição. Operações de ponto flutuante demoram mais que operações sobre inteiros. Acessar memórias demora mais que acessar registros. Ponto importante: mudança no de ciclo muitas vezes altera o número de ciclos necessários para várias instruções. Exemplo Nosso programa favorito demora 10 segundos para executar no computador A que tem um clock de 400 MHz. Estamos tentando ajudar um projetista de computadores a construir uma nova máquina B que executa nosso programa em 6 segundos. O projetista pode utilizar novas tecnologias (talvez mais caras) para aumentar substancialmente a freqüência de relógio, mas informounos que este aumento afeta o resto do projeto da CPU fazendo com que a máquina B necessite 1.2 vezes mais ciclos de clock que a máquina A para o mesmo programa. Qual freqüência de clock o projetista deve utilizar? Agora que entendemos ciclos Um programa requer: um certo número de instruções (instruções de máquina) um certo número de ciclos um certo número de segundos (ou fração) 9
10 Agora que entendemos ciclos Possuímos um vocabulário que relaciona estas grandezas: Tempo de ciclo (segundos por ciclo). Freqüência de clock (ciclos por segundo). CPI (ciclos por instrução). Uma aplicação intensiva de ponto flutuante tem um elevado CPI. MIPS (milhões de instruções por segundo). Elevado para um programa que utiliza instruções simples. Desempenho Desempenho é determinado por de execução. Desempenho Alguma das outras variáveis mede desempenho? n o de ciclos para executar um programa? n o de instruções no programa? n o de ciclos por segundo? n o médio de ciclos por instrução? n o médio de instruções por segundo? 10
11 Desempenho Engano comum: Pensar numa das variáveis como indicativa de desempenho quando na realidade não é. Exemplo: CPI Suponha duas implementações da mesma arquitetura (Instruction Set Architecture, ISA). Para um determinado programa, a máquina A tem um ciclo de clock de 1 ns e um CPI de 2.0 a máquina B tem um ciclo de clock de 2 ns e um CPI de 1.2 Qual máquina é mais rápida para este programa e quanto? Exemplo: CPI Se duas máquinas têm a mesma ISA, qual das grandezas: Freqüência de clock, CPI, Tempo de execução, N o de instruções, MIPS é sempre idêntica? 11
12 Exemplo: n o de instruções Um projetista de compilador está decidindo entre duas seqüências de código para uma determinada máquina. O hardware implementado oferece três classes diferentes de instruções: classe A, classe B e classe C, que requerem um, dois e três ciclos, respectivamente. A primeira seqüência de código tem o seguinte mix de instruções: 2 de A, 1 de B e 2 de C. A segunda seqüência tem outro mix de instruções: 4 de A, 1 de B e 1 de C. Qual seqüência executa o maior n o de instruções? Qual seqüência é mais rápida? Qual é o CPI para cada seqüência? Exemplo: MIPS Dois compiladores diferentes são testados para uma máquina de 500MHz, com três classes distintas de instruções: classe A, classe B e classe C, que requerem um, dois e três ciclos, respectivamente. Ambos compiladores são utilizados para produzirem código para uma grande aplicação. O primeiro compilador gera o código com 5 bilhões de instruções da classe A, 1 bilhão de instruções da classe B e 1 bilhão de instruções da classe C. O segundo compilador gera o código com 10 bilhões de instruções da classe A, 1 bilhão de instruções da classe B e 1 bilhão de instruções da classe C. Qual seqüência é mais rápida de acordo com de execução? Qual seqüência de código é mais rápida em MIPS? Benchmarks Desempenho é melhor avaliado com uma aplicação real. Use programas do tipo da utilização da máquina. Ou, da mesma classe de aplicações, i.e., compiladores/editores, aplicações científicas, gráficos, etc.. 12
13 Benchmarks Pequenos benchmarks bom para arquitetos e projetistas fáceis de padronizar podem ser mal empregados SPEC (System Performance Evaluation Cooperative) convergência para um conjunto programa e entradas reais ainda podem ser mal empregados (Intel s other bug) indicador válido de desempenho (e tecnologia de compiladores) Benchmarks Benchmarks são programas reais que não fazem nada a não ser medir o desempenho de sistemas computacionais. Normalmente avaliam determinada característica: ponto flutuante, velocidade de I/O, speedup para uma classe restrita de problemas, etc.. Benchmark suite. Benhmarks típicos: pequenas aplicações desenvolvidas para determinada característica e que ao mesmo introduzem alguma realidade na computação. Benchmarks Linpack Livermore Loops e PERFECT Club são pequenas aplicações extraídas de uma aplicação completa. Núcleos (kernels). Synthetic benchmarks: quando a portabilidade e facilidade de execução são mais importantes. Pequenos programas que aproximam o comportamento da aplicação. Imitam a freqüência das instruções e as estruturas de dados da aplicação: Whetstone (1976, Curnow e Wichmann). 13
14 Benchmarks TP1 e Debit-Credit (1985, Datamation). TP1 mede desempenho de bases de dados relacionais. Mede o throughput em transações por segundo e não em MIPS, MFLOPS, etc.. É um exemplo de benchmark que mede de resposta e throughput ao invés de speedup. UNIX Today! Benchmark para workstation inclui ponto flutuante, inteiros, disk I/O, memória e cache e desempenho de ambiente de desenvolvimento para sistemas UNIX. Sistema operacional, compiladores, bibliotecas C, X- Windows, redes (TCP/IP, Ethernet,..) Benchmarks Ghrafstone. Conjunto de 122 testes para medir desempenho gráfico de sistemas (Workstation Laboratories of Irving, Texas). Picture Level. Suite para estações gráficas proposta pelo consórcio de 12 empresas (Graphics Performance Characterization Group - Alliant, DEC, DuPont Pixel Systems, Evans & Suterland, Hewlett-Packard, IBM, Intergraph, Megatek, Prime, Silicon Graphics, Sun e Tektronix). Benchmarks SPEC (System Performance Evaluation Cooperative Effort). Orientado para workstations, criado por um consórcio de vendedores de computadores (AT&T, Bull, CDC, Compaq, Data General, DEC, Dupont, Fujitsu, Hewlett-Packard, IBM, Intel, Intergraph, MIPS, Motorola, NCR, Siemens, Silicon Graphics, Solbourne, Stardent, Sun e Unisys) em Dez aplicações: 1 doduc simulação Monte Carlo 2 eqntott minimização de funções de chaveamento 3 espresso simulador de Program Logic Array 4 fpppp solução das equações de Maxwell 5 gcc compilador C (GNU) 6 li interpretador Lisp 7 matrix300 algoritmos de multiplicação de matrizes 8 nasa6 suite NASA/Ames do Ames Research Center 9 spice 2g6 simulador de circuitos analógicos 10 tomcatv gerador de malhas (altamente) vetorizável 14
15 SPEC Compilador otimizado e desempenho 600 tio r a e c n a rm r fo e p C E P S gcc espresso spice doduc nasa7 li eqntott matrix300 fpppp tomcatv Benchmark Compiler Enhanced compiler SPEC 95 Benchmark go m88ksim gcc compress li ijpeg perl vortex tomcatv swim su2cor hydro2d mgrid applu trub3d apsi fpppp Description Artificial intelligence; plays the game of Go Motorola 88k chip simulator; runs test program The Gnu C compiler generating SPARC code Compresses and decompresses file in memory Lisp interpreter Graphic compression and decompression Manipulates strings and prime numbers in the special-purpose programming language Perl A database program A mesh generation program Shallow water model with 513 x 513 grid quantum physics; Monte Carlo simulation Astrophysics; Hydrodynamic Naiver Stokes equations Multigrid solver in 3-D potential field Parabolic/elliptic partial differential equations Simulates isotropic, homogeneous turbulence in a cube Solves problems regarding temperature, wind velocity, and distribution of pollutant Quantum chemistry SPEC 95 Dobrando a freqüência de clock dobra o desempenho? Pode uma máquina com freqüência de clock menor ter melhor desempenho? 15
16 10 9 SPEC 95 t in C E P S Dobrando a freqüência de clock dobra o desempenho? Pode uma máquina com freqüência de clock menor ter melhor desempenho? Clock rate (MHz) Pentium Pentium Pro 8 7 fp C E P S Clock rate (MHz) Pentium Pentium Pro Serial Whetstone. Benchmark sintético para computação numérica. Originalmente desenvolvido em ALGOL-60 para exercitar 42 declarações básicas. Composto de 11 módulos para testar operações matemáticas elementares, processamento de arrays, aritmética de inteiros, funções trigonométricas, chamadas de procedimentos, cálculo em ponto flutuante e. desvios condicionais. j = 1; for (i = 1;i <= N4; i + = 1) { if (j = 1) j = 2; else j = 3; if (j > 2) j = 0; else j = 1; if (j < 1) j = 1; else j = 0; } Serial Dhrystone. Benchmark sintético (Weicker, 1984) para testar o desempenho de declarações Ada, operações e acesso a dados. Foi convertido para outras linguagens como o C, com o seguinte mix: 53% declarações de atribuição 32% declarações de controle 15% chamadas de função/procedimentos Sieve of (crivo de) Eratosthenes. (Gilbreath, 1981) medida de desempenho de referências à memória, declarações de controle e operações de I/O simples. Computa os 100 primeiros números primos com o antigo algoritmo. 16
17 Serial Linpack. Tornou-se uma referência de benchmarck para computação numérica. Linpack é uma coleção de programas de álgebra linear para resolver sistemas de equações lineares e outros problemas de álgebra linear. O benchmarck é uma pequena seção do código completo, chamada kernel, contendo os loops mais internos. Está distante de uma aplicação real. Executa operações sobre matrizes densas assimétricas 100x100, contendo elementos de 64 bits gerados aleatóriamente. O benchmarck executa 2n 3 /3 + 2n 2 operações, onde n é a ordem da matriz. Para n = 100, p. ex., são realizadas operações. Lei de Amdahl Tempoexecuçãomelhorado = Tempoexecuçãoafetado Quantidademelhoria + Tempoexecuçãonãoafetado Lei de Amdahl Exemplo: Suponha que um programa executa em 100 segundos em uma máquina com as operações de multiplicação responsáveis por 80 segundos deste. Quanto devemos melhorar a velocidade das multiplicações se quisermos que o programa execute 4 vezes mais rápido? e 5 vezes mais rápido? 17
18 Lei de Amdahl Desempenho depois Speedup = Desempenhoantes Speedup = Tempoexecuçãoantes Tempoexecuçãodepois Lei de Amdahl Exemplo Suponha que melhoremos uma máquina aumentando em 5 vezes a velocidade das operações de ponto flutuante. Se o de execução de um benchmark antes da melhoria é de 10 segundos, qual será o speedup se a metade dos 10s é consumida com instruções de ponto flutuante? Conclusões Desempenho é específico para um programa em particular. Tempo total de execução é um parâmetro consistente para medida de desempenho. 18
19 Conclusões Para uma dada arquitetura, aumento no desempenho é decorrência de: aumento na freqüência de clock (sem efeitos adversos em CPI) melhorias na organização do processador que diminuem CPI melhorias nos compiladores que diminuem CPI e/ou número de instruções. Conclusão Armadilhas: Esperar que uma melhoria em um aspecto do desempenho da máquina afete o desempenho total. Não acreditar em tudo que lê ou ouve falar! Leia com cuidado! Referências Patterson, D. A., Hennessy, J. L., (1998) Computer Organization and Design: The Hardware/Software Interface. Cap 2. Morgan Kaufmann. 19
Medidas de desempenho de CPUs. Uma introdução breve
Medidas de desempenho de CPUs Uma introdução breve Fontes de informação Computer Organization & Design (D.A. Patterson + John L. Hennessey) Cap. 2 IEEE Computer IEEE Design & Test of Computers IEEE Transactions
Leia maisOrganização e Arquitetura de Computadores. Aula 2 - Desempenho Juliana F. Camapum Wanderley.
Organização e Arquitetura de Computadores Aula 2 - Desempenho 2002 Juliana F. Camapum Wanderley http://www.cic.unb.br/docentes/juliana/cursos/oac OAC Desempenho 1 Objetivo: como... Medir e relatar Fazer
Leia maisAvaliando e Compreendendo o Desempenho. Capítulo 4
Avaliando e Compreendendo o Desempenho Capítulo 4 Desempenho Mensurar, analisar e informar Fazer escolhas inteligentes Por que um hardware é melhor que outro para programas diferentes? Que fatores do desempenho
Leia maisChapter 2. Adaptado do material de aula de Patterson & Hennessy
Chapter 2 Adaptado do material de aula de Patterson & Hennessy 1 Performance Measure, Report, and Summarize Make intelligent choices See through the marketing hype Key to understanding underlying organizational
Leia maisDesempenho. Sistemas de Computação
Desempenho Definição Medidas de desempenho utilizadas Tempo de resposta ou tempo de execução: tempo decorrido entre o início da execução de um programa e o seu final Quantidade de trabalho realizada em
Leia maisO Que Veremos. Introdução. Introdução. Definindo Desempenho. Definindo Desempenho. Avaliando e Compreendendo o Desempenho
Ciência da Computação Arq. e Org. de Computadores Avaliando e Compreendendo o Desempenho O Que Veremos Avaliando e compreendendo o desempenho: Introdução Definindo desempenho Medindo o desempenho e seus
Leia maisPCS 2039 Modelagem e Simulação de Sistemas Computacionais
UNIVERSIDADE DE SÃO PAULO ESCOLA POLITÉCNICA Departamento de Engenharia de Computação e Sistemas Digitais PCS 2039 Modelagem e Simulação de Sistemas Computacionais Graduação em Engenharia de Computação
Leia maisInfraestrutura de Hardware. Desempenho
Infraestrutura de Hardware Desempenho Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem de alto nível é entendido e executado pelo HW? Qual é a interface entre
Leia maisDesempenho DESEMPENHO DE COMPUTADORES
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
Leia maisÍndice. Escolha de um Computador
Sumário Introdução ao desempenho. Métricas utilizadas para medir o desempenho. Relações entre métricas. 1 Índice 2. O Papel do Desempenho 2.1 Medição do Desempenho 2.2 Relacionando as Métricas 2.3 Escolha
Leia maisFaculdade de Computação
Faculdade de Computação Arquitetura e Organização de Computadores 2 1 a Lista de Exercícios entrega em 25/09/2018 Prof. Cláudio C. Rodrigues Problemas: P1) A Tabela abaixo apresenta o mix de instruções
Leia maisAvaliação de desempenho
Universidade Federal do Rio Grande do Sul Instituto de Informática Organização de Computadores Aula 9 Avaliação de desempenho INF01113 Organização de Computadores 9-1 Avaliação de desempenho 1. Introdução
Leia maisTestes de Carga em Sistemas de Computação e Benchmark
Testes de Carga em Sistemas de Computação e Benchmark Testes de carga em sistemas reais são feitos através de programas que geram carga no sistema exercitando um conjunto adequado de instruções. Submeter
Leia maisCapítulo 1. This material may not be copied or distributed for commercial purposes without express written permission of the copyright holder.
Capítulo 1 Permission is granted to copy and distribute this material for educational purposes only, provided that the complete bibliographic citation and following credit line is included: "Copyright
Leia maisBenchmarks. 1. Introdução
Benchmarks 1. Introdução Um Benchmark é um programa de teste de desempenho que analisa as características de processamento e de movimentação de dados de um sistema de computação com o objetivo de medir
Leia maisExemplo Amdahl. O speedup total é dado por:
Í Revisão da prova Questão 20: A exploração do paralelismo em nível de instruções em uma arquitetura superescalar é realizada identificando no fluxo de instruções aquelas que são independentes a fim de
Leia maisMaterial baseado nos slides de: Marcos José Santana Regina Helena Carlucci Santana
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação SSC643 Avaliação de Desempenho de Sistemas Computacionais Aula 4 Sarita Mazzini Bruschi
Leia maisAnotações da Parte 2
Anotações da Parte 2 OBS: Essas anotações são adaptações do material suplementar (apresentações PPT) ao Livro do Hennessy e Patterson, complementado com material de suporte do Livro do Stallings. Supõe-se
Leia maisOrganização de Computadores e Proj.Integrado. Desempenho Herbert Rausch Fernandes
Organização de Computadores e Proj.Integrado Desempenho Herbert Rausch Fernandes Desempenho Meça, informe e resuma Faça escolhas inteligentes Vital para entender a motivação organizacional subjacente Desempenho
Leia maisFaculdade de Computação
Faculdade de Computação Arquitetura e Organização de Computadores 2 1 a Lista de Exercícios entrega em 19/04/2018 Prof. Cláudio C. Rodrigues Problemas: P1) Explique o que há de errado com as métricas de
Leia maisFaculdade de Computação Arquitetura e Organização de Computadores 2 Prof. Cláudio C. Rodrigues
Faculdade de Computação Arquitetura e Organização de Computadores 2 Prof. Cláudio C. Rodrigues Exercícios de Revisão: P1) Um processador elaborado segundo o princípio multi-ciclo, executa a uma frequência
Leia maisPARTE I - FUNDAMENTOS DE PROJETOS DE COMPUTADORES ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR
PARTE I - FUNDAMENTOS DE PROJETOS DE COMPUTADORES ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR Introdução Entender a arquitetura de computadores do ponto de vista do programador Entender
Leia maisAvaliação de Desempenho
Avaliação de Desempenho Clock do Sistema Cristal de Quartzo envia onda de sinais constantes que são convertidas em sinais digitais 1GHz = 1 bilhão de pulsos Taxa de pulsos = taxa de clock Incremento de
Leia maisArquitetura de Computadores
Arquitetura de Computadores Prof. Eduardo Simões de Albuquerque Adaptado do material do Prof. Fábio M. Costa Instituto de Informática UFG 1o. Semestre / 2006 Fundamentos Parte 2 Princípios de Projeto de
Leia maisArquitetura de Computadores
Arquitetura de Computadores Prof. Eduardo Simões de Albuquerque Instituto de Informática UFG 1o. Semestre / 2006 Adaptado do material do prof. Fábio Moreira Costa Programa e Introdução Assunto do curso
Leia maisArquiteturas para Alto Desempenho CES-25
Arquiteturas para Alto Desempenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Objetivos Gerais da Matéria Aprofundar o conhecimento interno sobre o funcionamento interno
Leia maisOrganização de Sistemas de Computadores
Organização de Sistemas de Computadores Cap. 2 (Tanenbaum), Cap. 3 (Weber) 2.1 Processadores 1 CPU UC = buscar instruções na memória principal e determinar o seu tipo ULA = adição e AND Registradores =
Leia maisArquitetura de Computadores I
Arquitetura de Computadores I Avaliação de desempenho Introdução Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Adaptado do material de aula de Hennessy e Patterson Desempenho Meça,
Leia maisArquitectura de Computadores II. Introdução
Arquitectura de Computadores II LESI - 3º Ano Introdução João Luís Ferreira Sobral Departamento do Informática Universidade do Minho Janeiro 2002 Objectivos da disciplina e relação com outras disciplinas
Leia maisCOMPUTADORES COM UM CONJUNTO REDUZIDO DE INSTRUÇÕES. Adão de Melo Neto
COMPUTADORES COM UM CONJUNTO REDUZIDO DE INSTRUÇÕES Adão de Melo Neto 1 INTRODUÇÃO Desde 1950, houveram poucas inovações significativas nas áreas de arquitetura e organização de computadores. As principais
Leia maishttp://www.ic.uff.br/~debora/fac! 1 Conceito de família IBM System/360 1964 DEC PDP-8 Separa arquitetura de implementação Unidade de controle microprogramada Idéia de Wilkes 1951 Produzida pela IBM S/360
Leia maisSSC0611 Arquitetura de Computadores
SSC0611 Arquitetura de Computadores 7ª Aula Pipeline Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Arquitetura CISC CISC Complex Instruction Set Computer Computadores complexos devido a: Instruções
Leia mais1. Conceitos Básicos de Computação
Introdução à Computação I IBM1006 1. Conceitos Básicos de Computação Prof. Renato Tinós Local: Depto. de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 1.Conceitos Básicos de Computação 1.1.
Leia mais28 de fevereiro de 2016
Ítalo Mendes da Silva Ribeiro UESPI 28 de fevereiro de 2016 1 / 72 Súmario Breve 2 / 72 Súmario Breve 3 / 72 Por que estudar Arquitetura e Organização de Computadores? Conhecimento do funcionamento interno
Leia maisDesempenho. Na otimização do projeto, as métricas mais importantes são custo e desempenho. Arquiteturas de Alto Desempenho - Prof a Luiza Mourelle 1
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 de computadores e inovação no projeto de computadores. O projeto
Leia maisOrganização de Sistemas Computacionais Processadores: Organização da CPU
Universidade Paulista UNIP Curso: Ciências da Computação Turma: CCP30 Turno: Noturno Disciplina: Arquitetura de Computadores Professor: Ricardo Loiola Alunos: Thiago Gomes dos Santos Matrícula: C63873-0
Leia maisSSC0902 Organização e Arquitetura de Computadores
SSC0902 Organização e Arquitetura de Computadores 13ª Aula Definição de Pipeline e Pipeline da arquitetura MIPS Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Arquitetura CISC CISC Complex Instruction
Leia maisINTRODUÇÃO À ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES. Função e Estrutura. Introdução Organização e Arquitetura. Organização e Arquitetura
Introdução Organização e Arquitetura INTRODUÇÃO À ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES Eduardo Max Amaro Amaral Arquitetura são os atributos visíveis ao programador. Conjunto de instruções, número
Leia maisOrganização e Arquitetura de Computadores
Organização e Arquitetura de Computadores Avaliação de Desempenho Prof. Luiz Antonio do Nascimento 1 Unidades de medida de memória MEDIDA: Bit (b) Byte (B) Kilobyte (KB) Megabyte (MB) Gigabyte (GB) Terabyte
Leia maisArquiteturas RISC e CISC. Adão de Melo Neto
Arquiteturas RISC e CISC Adão de Melo Neto 1 Arquitetura RISC Arquitetura RISC. É um das inovações mais importantes e interessantes. RISC significa uma arquitetura com um conjunto reduzido de instruções
Leia maisENGENHARIA DE SISTEMAS MICROPROCESSADOS
ENGENHARIA DE SISTEMAS MICROPROCESSADOS Prof. Pierre Vilar Dantas Turma: 0040-A Horário: 4N Aula 01-26/07/2017 Plano de ensino Professor www.linkedin.com/in/pierredantas/ TÓPICOS Conceitos gerais. Evolução
Leia maisComputadores e Programação (DCC/UFRJ)
Computadores e Programação (DCC/UFRJ) Aula 3: 1 2 3 Abstrações do Sistema Operacional Memória virtual Abstração que dá a cada processo a ilusão de que ele possui uso exclusivo da memória principal Todo
Leia maisOrganização de Computadores
Organização de Computadores Marcelo Lobosco DCC/UFJF Avaliando e Compreendendo o Desempenho Aula 09 Agenda Avaliando e Compreendendo o Desempenho Introdução Definindo Desempenho Medindo o Desempenho Desempenho
Leia maisCAP-387(2016) Tópicos Especiais em
CAP-387(2016) Tópicos Especiais em Computação Aplicada: Construção de Aplicações Massivamente Paralelas Aula 4: Desempenho, Modelos e Benchmarks Celso L. Mendes, Stephan Stephany LAC /INPE Emails: celso.mendes@inpe.br,
Leia maisCPU. Funções: Componentes: Processamento; Controle. UC (Unidade de Controle); Registradores; ALU s, FPU s etc. Arquitetura de Computadores 3
CPU CPU Funções: Processamento; Controle Componentes: UC (Unidade de Controle); Registradores; ALU s, FPU s etc. Arquitetura de Computadores 3 Processador A função de um computador é executar tarefas
Leia maisIntrodução a Computação
O que é um computador? Um computador é uma coleção de componentes que realizam operações lógicas e aritméticas sobre um grande volume de dados. (F. K. Miyazawa) Um computador é composto por: Introdução
Leia maisInfraestrutura 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 maisProf. Eliezer Soares Flores 1 / 22
Memórias Prof. Eliezer Soares Flores e-mail: eliezerflores@unipampa.edu.br 1 / 22 Sistemas computacionais Hardware: parte física de um sistema computacional; Software: parte lógica de um sistema computacional.
Leia maisAula 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 maisPONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO GRANDE DO SUL FACULDADE DE INFORMÁTICA
PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO GRANDE DO SUL FACULDADE DE INFORMÁTICA DEPARTAMENTO: Fundamentos da Computação CURSO: Ciência da Computação DISCIPLINA: Organização e Arquitetura de Computadores
Leia maisAspectos quantitativos elementares
Aspectos quantitativos elementares João Canas Ferreira Setembro de 2010 João Canas Ferreira (FEUP) Aspectos quantitativos elementares Setembro de 2010 1 / 16 Assuntos 1 Benchmarks O que medir? Tipos de
Leia maisArquitetura e organização de computadores Uma visão geral
Arquitetura e organização de computadores Uma visão geral MAC 344 - Arquitetura de Computadores Prof. Siang Wun Song Baseado em W. Stallings - Computer Organization and Architecture Objetivo do disciplina
Leia maisDesempenho de Computadores
Desempenho de Computadores João Canas Ferreira Arquitectura de Computadores FEUP/LEIC Contém figuras de Computer Organization and Design, D. Patterson & J. Hennessey, 3ª. ed., MKP Tópicos Os vários aspectos
Leia maisO que é Arquitetura de Computadores?
O que é Arquitetura de Computadores? Coordenação de um conjunto de níveis de abstração de um computador sobre um grande conjunto de forças de mudança Arquitetura de Computadores = Arquitetura de Conjuntos
Leia maisCI212 Organização e Arquitetura de Computadores
CI22 Organização e Arquitetura de Computadores Roberto A Hexsel roberto@inf.ufpr.br www.inf.ufpr.br/roberto/ci22.html roberto-ci22@inf.ufpr.br Material adicional para este curso: www.inf.ufpr.br/roberto/ci22
Leia maisSSC643 -Avaliação de Desempenho de Sistemas Computacionais -
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação SSC643 -Avaliação de Desempenho de Sistemas Computacionais - Aula 2 Sarita Mazzini Bruschi
Leia maisSistemas Operacionais. Conceitos de Hardware
Sistemas Operacionais Conceitos de Hardware Sumário 1. Introdução 7. RISC e CISC 2. Processador 1. Operações de Processamento 2. Unidade de Controle 3. Ciclos de uma Instrução 3. Memória 1. Memória Principal
Leia maisSistemas Operacionais. Adão de Melo Neto
Sistemas Operacionais Adão de Melo Neto 1 Computador Digital (Hardware) 2 Computador Digital Constituído por um conjunto de componentes interligados (hardware): processadores, memórias, registradores,
Leia maisArquitetura de Computadores. Conjunto de Instruções
Arquitetura de Computadores Conjunto de Instruções Arquitetura do Conjunto das Instruções ISA (Instruction Set Architecture) Traduz para uma linguagem intermediária (ISA) os vários programas em diversas
Leia maisArquitetura de Computadores. Ivan Saraiva Silva
Arquitetura de Computadores Métricas de Desempenho Ivan Saraiva Silva Sumário Como arquiteturas são geralmente avaliadas Como arquiteturas obedecem a restrições de projeto Métricas de desempenho Combinando
Leia maisSSC0112 Organização de Computadores Digitais I - Turma 2
SSC0112 Organização de Computadores Digitais I - Turma 2 1ª Aula Apresentação e Introdução da disciplina Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Apresentada pelo Prof. Paulo Sergio Lopes de Souza
Leia maisTópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 02
Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 02 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação POR QUE APRENDER CONCEITOS
Leia maisIntrodução à Avaliação de Desempenho
Introdução à Avaliação de Desempenho Tecnologia em Redes de Computadores IFSULDEMINAS Câmpus Inconfidentes Prof. Kleber Rezende kleber.rezende@ifsuldeminas.edu.br Motivação Para que se preocupar com Avaliação
Leia maisAvaliação de Desempenho
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação Avaliação de Desempenho Introdução Aula 1 Marcos José Santana Regina Helena Carlucci Santana
Leia maisFACULDADE FUCAPI Arquitetura de Computadores Parte I
FACULDADE FUCAPI Arquitetura de Computadores Parte I, M.Sc. Doutorando em Informática (UFAM) Mestre em Engenharia Elétrica (UFAM) Engenheiro de Telecomunicações (FUCAPI) Referências HENNESSY, John L.;
Leia maisAula 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 maisNível da Arquitetura do Conjunto das Instruções
Nível da Arquitetura do Conjunto das Instruções (Aula 11) Visão Geral do Nível ISA Antes de deixarmos o hardware (1) 8 2 Antes de deixarmos o hardware (2) 3 ISA (Instruction Set Architecture) Arquitetura
Leia maisSSC304 Introdução à Programação Para Engenharias
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação Introdução à Para Engenharias Estrutura de um Computador GE4 Bio GE4Bio Grupo de Estudos
Leia maisARQUITETURA DE COMPUTADORES
RCM00014 Haswell wafer ARQUITETURA DE COMPUTADORES Prof. Luciano Bertini Site: http://www.professores.uff.br/lbertini/ Objetivos do Curso Entendimento mais aprofundado do funcionamento
Leia maisIntrodução à Avaliação de Desempenho
Introdução à Avaliação de Desempenho Tecnologia em Redes de Computadores IFSULDEMINAS Câmpus Inconfidentes Prof. Kleber Rezende kleber.rezende@ifsuldeminas.edu.br Motivação Para que se preocupar com Avaliação
Leia maisOrganização de Computadores I
Organização de Computadores I Aula 2 Material: Diego Passos http://www.ic.uff.br/~debora/orgcomp/pdf/parte2.pdf Organização de Computadores I Aula 2 1/29 Tópicos de Computação. de um Sistema de Computação..
Leia maisSSC546 -Avaliação de Desempenho de Sistemas
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação SSC546 -Avaliação de Desempenho de Sistemas Parte 1 -Aula 2 Sarita Mazzini Bruschi Material
Leia maisSistemas de Computação
Sistemas de Computação Introdução Haroldo Gambini Santos Universidade Federal de Ouro Preto - UFOP 11 de março de 2010 Haroldo Gambini Santos Sistemas de Computação 1/24 Classi cação/uso de Computadores
Leia maisPIPELINE. Introdução ao Pipeline. PIPELINE Ciclo de Instruções. PIPELINE Ciclo de Instruções. PIPELINE - Exemplo. PIPELINE Considerações
Arquitetura de Computadores Introdução ao Pipeline PIPELINE Linha de Montagem A produção é dividida em várias etapas Produtos em etapas distintas podem ser desenvolvidos separadamente Pode ser Aplicado
Leia maisUM MÉTODO PARA COMPARAÇÃO ENTRE HARDWARE E SOFTWARE DAS FUNÇÕES CRC-16 E FDCT SCHNEIDER, R. F. ¹, RAMOS, F. L. L.¹
UM MÉTODO PARA COMPARAÇÃO ENTRE HARDWARE E SOFTWARE DAS FUNÇÕES CRC-16 E FDCT SCHNEIDER, R. F. ¹, RAMOS, F. L. L.¹ ¹ ³ Universidade Federal do Pampa (UNIPAMPA) Bagé RS Brasil RESUMO A execução de funções
Leia maisUnidade Central de Processamento (CPU) Processador. Bernardo Gonçalves Introdução ao Computador 2008/01
Unidade Central de Processamento (CPU) Processador Bernardo Gonçalves Introdução ao Computador 2008/01 Componentes de um Computador (1) Computador Eletrônico Digital É um sistema composto por: Memória
Leia maisUNIDADE CENTRAL DE PROCESSAMENTO FELIPE G. TORRES
Tecnologia da informação e comunicação UNIDADE CENTRAL DE PROCESSAMENTO FELIPE G. TORRES CICLO DE INSTRUÇÕES OU DE EXECUÇÃO Arquitetura de computadores 2 CICLO DE EXECUÇÃO No inicio de cada ciclo de instrução,
Leia maisCapítulo 2 Livro do Mário Monteiro Componentes Representação das informações. Medidas de desempenho
Capítulo 2 Livro do Mário Monteiro Componentes Representação das informações Bit, Caractere, Byte e Palavra Conceito de Arquivos e Registros Medidas de desempenho http://www.ic.uff.br/~debora/fac! 1 2
Leia maishttp://www.ic.uff.br/~debora/fac! 1 Capítulo 2 Livro do Mário Monteiro Componentes Representação das informações Bit, Caractere, Byte e Palavra Conceito de Arquivos e Registros Medidas de desempenho 2
Leia maisSistemas de Computação. Bibliogra a. Hardware e Software. Notas. Introdução. Haroldo Gambini Santos. 26 de abril de Notas
Classi cação/uso de Computadores Digitais Sistemas de Computação Introdução Haroldo Gambini Santos Universidade Federal de Ouro Preto - UFOP 26 de abril de 2010 Haroldo Gambini Santos Sistemas de Computação
Leia maisProf. Sandro Wambier
Prof. Sandro Wambier São elementos da Arquitetura de um computador: conjunto de instruções de um processador, os modos de endereçamentos, o tipo e tamanho dos dados manipulados pelo processador, ex.: Intel
Leia maisO Funcionamento do Processador
O Funcionamento do Processador Arquiteturas para Alto Desmpenho Prof. pauloac@ita.br Sala 110 Prédio da Computação www.comp.ita.br/~pauloac Os cinco componentes clássicos de um Computador - Controle O
Leia maisCélula, Palavra, Ciclo de Instruções e Lógica Temporizada
Célula, Palavra, Ciclo de Instruções e Lógica Temporizada IFBA Instituto Federal de Educ. Ciencia e Tec Bahia Curso de Analise e Desenvolvimento de Sistemas Arquitetura de Computadores 20 e 21/30 Prof.
Leia maisBarramentos internos/externos
Barramentos Uma das características principais de um processador são os seus barramentos. Os barramentos são auto-estradas por onde circula a informação, seja no interior do CPU ou do interior para o exterior,
Leia maisProcessador. Processador
Departamento de Ciência da Computação - UFF Processador Processador Prof. Prof.Marcos MarcosGuerine Guerine mguerine@ic.uff.br mguerine@ic.uff.br 1 Processador Organização básica de um computador: 2 Processador
Leia maisUniversidade Federal do Rio de Janeiro Bacharelado de Ciência da Computação. Arquitetura de Computadores I. RISC versus CISC
Universidade Federal do Rio de Janeiro Bacharelado de Ciência da Computação Arquitetura de Computadores I RISC versus CISC Gabriel P. Silva 04.11.2014 Introdução Um dos objetivos de uma arquitetura de
Leia maisArquitetura de Computadores. Processamento Paralelo
Arquitetura de Computadores Processamento Paralelo 1 Multiprogramação e Multiprocessamento Múltiplas organizações de computadores Single instruction, single data stream - SISD Single instruction, multiple
Leia maisSistemas Operacionais
Sistemas Operacionais Aula 2 Introdução: conceitos, máquinas de níveis. Prof.: Edilberto M. Silva http://www.edilms.eti.br SO - Prof. Edilberto Silva O que é um sistema operacional? um provedor de abstrações
Leia maisAJProença, Sistemas de Computação, UMinho, 2017/18 1
Introdução aos Sistemas de Computação (3) Estrutura do tema ISC 1. Representação de informação num computador 2. Organização e estrutura interna dum computador 3. Execução de programas num computador 4.
Leia maisAULA 03: FUNCIONAMENTO DE UM COMPUTADOR
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 03: FUNCIONAMENTO DE UM COMPUTADOR Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação O QUE É UM COMPUTADOR?
Leia maisOrganização de Computadores
Organização de Computadores Marcelo Lobosco DCC/UFJF Avaliando e Compreendendo o Desempenho Aula 10 Agenda Análise de Desempenho (cont.) Avaliando o Desempenho Benchmark SPEC Falácias e Armadilhas Desempenho
Leia maisENIAC Primeiro computador de Propósito Geral. William Stallings Computer Organization and Architecture 6 th Edition (2003)
William Stallings Computer Organization and Architecture 6 th Edition (2003) ENIAC Primeiro computador de Propósito Geral Electronic Numerical Integrator And Computer Chapter 2 Computer Evolution and Performance
Leia maisSSC546 -Avaliação de Desempenho Parte 1 Sarita Mazzini Bruschi
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação SSC546 -Avaliação de Desempenho Parte 1 Sarita Mazzini Bruschi Material baseado nos slides
Leia maisArquitetura do SET de instruções Instruction SET. CISC vs RISC. What s assembly as to do with it?
Arquitetura do SET de instruções Instruction SET CISC vs RISC What s assembly as to do with it? Low-level - high-level programming language Assambley CODE section.text global _start ;must be declared for
Leia maisORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 02: PROCESSAMENTO PARALELO: PROCESSADORES VETORIAIS
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 02: PROCESSAMENTO PARALELO: PROCESSADORES VETORIAIS Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação
Leia maisARQUITETURA DE COMPUTADORES. Organização de Sistemas Computacionais. Prof.: Agostinho S. Riofrio
ARQUITETURA DE COMPUTADORES Organização de Sistemas Computacionais Prof.: Agostinho S. Riofrio Agenda 1. Unidade Central de Processamento 2. Organização da CPU 3. Interpretador 4. RISC x CISC 5. Principios
Leia maisAula 02: Tendências Tecnológicas e Custos
Aula 02: Tendências Tecnológicas e Custos Cadeia Alimentar Figura Original Regra: Peixes maiores comem peixes menores Tubarões e Comidas O que é um tubarão? sistema de computação PC Mainframe comer: seguindo
Leia maisIntrodução. (Aula 2) Organização Estruturada de Computadores
Introdução (Aula 2) Organização Estruturada de Computadores Introdução Arquitetura de Hardware 01- Monitor 02- Placa-Mãe 03- Processador 04- Memória RAM 05- Placas de Rede, Som, Vídeo, Fax... 06- Fonte
Leia mais