Aspectos quantitativos elementares
|
|
- Derek Lombardi Macedo
- 6 Há anos
- Visualizações:
Transcrição
1 Aspectos quantitativos elementares João Canas Ferreira Setembro de 2010 João Canas Ferreira (FEUP) Aspectos quantitativos elementares Setembro de / 16 Assuntos 1 Benchmarks O que medir? Tipos de benchmarks 2 Princípios quantitativos Princípios básicos Avaliação do impacto de melhoramentos Factores do desempenho de um CPU João Canas Ferreira (FEUP) Aspectos quantitativos elementares Setembro de / 16
2 O que medir? Tempo e desempenho A principal medida consistente do desempenho de um computador é o tempo que ele demora a executar uma tarefa. Questões: O que significa O computador A é mais rápido que B? Que tempo se deve medir? (tempo de resposta, débito, etc.) Definição: Seja n = tempo_execução y tempo_execução x Diz-se: a máquina X é n vezes mais rápida que a máquina Y. desempenho = 1 tempo_execução n = desempenho x desempenho y O computador mais rápido é aquele que executa a mesma quantidade de trabalho num intervalo mais curto. João Canas Ferreira (FEUP) Aspectos quantitativos elementares Setembro de / Melhor desempenho significada desempenho mais elevado Melhor desempenho significa tempo de execução mais reduzido As análises de desempenho estão frequentemente recheadas de mal-entendidos. Nesta disciplina usaremos consistentemente a definição de n vezes mais rápido indicada na transparência. De um modo geral, é necessário estar muito atento à forma como os diferentes conceitos são definidos e utilizados (muitas vezes sem definição explícita). 3
3 O que medir? Tempos Tempo de resposta ou tempo transcorrido Tempo total entre início e fim da tarefa incluindo todos os factores (sistema operativo, etc.) Tempo de CPU Período de tempo em que o CPU esteve ocupado a executar instruções de um processo. Não inclui o tempo gasto com outros processos ou à espera de dados. tempo de utilizador tempo de sistema > time prog arg1 arg2 90.7u 12.9s 2:39 65% 0.65 = ( )/159 Usar tempo de utilizador ou tempo de CPU? Existem bons argumentos para ambos... João Canas Ferreira (FEUP) Aspectos quantitativos elementares Setembro de / Qual o tempo a usar para avaliar o desempenho está dependente da finalidade da medição. O tempo de utilizador é o que em última análise interessa ao utilizador. Contudo, este tempo é facilmente afectado por factores que, para efeitos práticos, não podem ser controlados (p.ex., quais os outros programas em execução no sistema ou a actividade de rede) O tempo de CPU inclui a influência do sistema operativo e dos respectivos algoritmos de gestão de recursos O tempo do utilizador é igualmente ambíguo. Os sistemas operativos têm dificuldade em medir com exactidão o tempo de sistema, pelo que o tempo de utilizador é geralmente menos exacto que o tempo de CPU. Por outro lado, o que num sistema é tarefa do S.O. noutro pode ser da responsabilidade da aplicação Se não existir razão que leve a outra escolha, usa-se o tempo de CPU (sistema + utilizador) medido num sistema pouco carregado. Afinal, todas as aplicações práticas necessitam de algum tipo de S.O. (excepção: algumas aplicações embutidas). 4
4 Tipos de benchmarks Como avaliar o desempenho de um computador? Benchmark = indicação de altitude, cota de nível [Dic. Porto Ed.] Tendência actual: Avaliação empírica usando um conjunto padronizado de programas. Que programas? micro-benchmarks para aspectos específicos do sistema (lmbench) sintéticos (Dhrystone, Wheatstone) núcleos de programas ( Livermore loops, Linpack) programas completos (originais ou ligeiramente alterados) Qual o peso de cada programa? Quais são as condições de execução? Algumas organizações: SPEC: Servidores: Sistemas embutidos: João Canas Ferreira (FEUP) Aspectos quantitativos elementares Setembro de / Por vezes, são apresentados resultados referentes a rotinas relativamente pequenas ( linhas de código), cujos resultados são conhecidos (quicksort, p. ex.). Estes resultados são essencialmente inúteis para efeitos de avaliação do desempenho de um computador A utilização de rotinas sintéticas tem geralmente levado a erros grosseiros. Pelas mesmas razões, a utilização dos resultados de micro-benchmarks deve ser feita com cautela Frequentemente, os programas reais usados para benchmarking são versões simplificadas do programa original. Por exemplo, em benchmarks de CPUs é vantajoso alterar o programa para reduzir a actividade de E/S (que não se pretende medir) e obter assim resultados mais úteis para a avaliação da capacidade de processamento. Neste caso, parte-se do princípio que apenas se pretende avaliar o CPU (e o subsistema de memória), mas não o subsistema de E/S É importante verificar em que condições são feitas as medições: configuração do sistema (hardware e software) e configuração do compilador. 5
5 Benchmarks também evoluem Tipos de benchmarks Fonte: [CAQA4] João Canas Ferreira (FEUP) Aspectos quantitativos elementares Setembro de / A figura mostra 5 edições dos benchmarks SPEC Dos 12 programas sem vírgula flutuante (VF), 9 são escritos em C e 3 em C++. (versão 2006) 6.3. Dos programas com VF, 6 são em Fortran, 4 em C++, 3 em C e 4 misturam C e Fortran. (versão 2006) 6.4. Mesmo para programas que se mantêm em mais que uma edição, a respectiva versão ou os dados de entrada são alterados. 6
6 Tipos de benchmarks Domínios de aplicação A escolha dos programas a utilizar depende dos fins em vista para o sistema avaliado, particularmente do seu domínio de aplicação. Desktop: Usam-se benchmarks centrados no CPU e no sub-sistema gráfico: CPU2000 (CINT2000 e CFP2000), SPECapc, SPECviewperf. Servidores: Processamento de transacções para sistemas de bases de dados e de suporte à decisão: TPC-C, TPC-H, etc. A configuração e o custo dos sistemas é de particular importância e deve ser sempre referida. Embedded: A utilidade de benchmarks é mais reduzida, porque se trata de ambientes muito heterogéneos em que o desempenho global é mais importante que o das aplicações individuais. O consórcio EEMBC reconhece actualmente 7 sub-domínios: automóvel, electrónica de consumo, entretenimento digital, Java, redes, aplicações de escritório e telecomunicações. João Canas Ferreira (FEUP) Aspectos quantitativos elementares Setembro de / O melhor conjunto de programas a utilizar é aquele que se pretende usar o sistema. Nesse contexto não é geralmente possível fazer uma avaliação comparativa de muitos modelos diferentes, pelo que é necessário recorrer a benchmarks padronizados e divulgados. Neste caso convém determinar quais os tipos de benchmarks mais apropriados para as aplicações e vista O domínio dos sistemas embutidos é aquele em que a utilidade de benchmarks é mais duvidosa APC = Application Performance Characterization SPECviewperf é um programa de avaliação de desempenho gráfico OpenGL (escrito em linguagem C). 7
7 Como sumariar resultados Benchmarks A melhor solução é não fazer sumários! A média aritmética é muito afectada valores individuais extremos. Usar rácios para caracterizar o desempenho de programas individuais. Rácios devem ser combinados usando a média geométrica. Média geométrica de n rácios de desempenho (tempos de execução referidos a um valor de referência) : G = n n r i. i=1 A razão entre rácios de tempos é igual ao rácio dos desempenhos. A média geométrica de dois (ou mais) rácios é igual ao rácio das médias geométricas. O rácio de duas médias geométricas é igual à média geométrica dos rácios de desempenho. O valor de referência não importa. João Canas Ferreira (FEUP) Aspectos quantitativos elementares Setembro de / Deve procurar-se obter os dados em bruto para cada programa incluído no benchmark. SPEC tem todos os resultados em bruto disponíveis para análise O desvio padrão geométrico de uma média geométrica µ de n valores v i é dado por (assumindo uma distribuição normal dos tempos): gstdev = exp ( n i=1 (ln v i ln µ) Em média, 68% dos valores v i ficarão no intervalo [µ/gstdev; µ gstdev] Em média, 95% dos valores v i ficarão no intervalo [µ/gstdev 2 ; µ gstdev 2 ]. n ) 8
8 SPECRatios Normalização do desempenho (para 1 programa): SPECRatio A = tempo ref tempo A A razão entre dois SPECRatio (mesmo programa em dois computadores diferentes) é igual á razão entre os desempenhos: SPECRatio A SPECRatio B = tempo ref tempo A tempo ref tempo B = tempo B tempo A = desempenho A desempenho B Para sumarizar os resultados de um conjunto de benchmarks para o mesmo computador, faz-se a média geométrica dos vários rácios. João Canas Ferreira (FEUP) Aspectos quantitativos elementares Setembro de / 16 Benchmarks Exemplo de comparação baseada em benchmarks Fonte: [CAQA4] João Canas Ferreira (FEUP) Aspectos quantitativos elementares Setembro de / 16
9 O custo também pode interessar: desktop Fonte: [CAQA4] João Canas Ferreira (FEUP) Aspectos quantitativos elementares Setembro de / 16 Benchmarks O custo também pode interessar: servidores Fonte: [CAQA4] João Canas Ferreira (FEUP) Aspectos quantitativos elementares Setembro de / 16
10 Custo total de um computador Fonte: [CAQA4] João Canas Ferreira (FEUP) Aspectos quantitativos elementares Setembro de / 16 Desempenho de pico Benchmarks Fonte: [CAQA4] João Canas Ferreira (FEUP) Aspectos quantitativos elementares Setembro de / 16
11 Princípios quantitativos Princípios básicos Regras básicas de projecto Melhorar o caso mais frequente (simples) O caso frequente é também geralmente o mais simples! Lei de Amdahl O aumento de desempenho a obter por uso de certa melhoria está limitado pela fracção de tempo em que a melhoria pode ser efectivamente aplicada. Equação de desempenho do CPU T exec = N instr t ciclo CPI Princípio da localidade (proximidade) 90% do tempo em 10% do código (já foi 80%-20%) localidade espacial e "localidade temporal" Aproveitar o paralelismo. João Canas Ferreira (FEUP) Aspectos quantitativos elementares Setembro de / Muitas vezes, o caso mais frequente também é o mais simples. Os casos poucos frequentes podem ser tratados separadamente Não é sempre evidente qual é o caso mais simples Para que um melhoramento seja efectivo, é necessário que possa ser aplicado frequentemente. Determinar se tal ocorre efectivamente pode ser relativamente complicado O facto de o princípio da proximidade ser válido é de grande importância para a arquitectura de computadores. Por exemplo, torna efectivas tanto a memória cache como a virtual Explorar a concorrência de operações é uma opção natural, já que os sistemas físicos funcionam naturalmente em paralelo. Muitas vezes é o modelo de von Neumann que impõe uma ordem sequencial mais ou menos arbitrária às operações de um computador. 15
12 A lei de Amdahl Princípios quantitativos Avaliação do impacto de melhoramentos O aumento de desempenho proporcionado por um dado melhoramento está limitado pela fracção de tempo em que o melhoramento pode ser efectivamente aplicado. Speedup = Desempenho c/ melhoramento Desempenho s/ melhoramento = Tempo s/ melhoramento Tempo c/ melhoramento Fracção do tempo original que beneficia do melhoramento: F p Ganho parcial proporcionado pela melhoria: S p = T a /T n. O novo tempo de execução global é (T 1 : tempo sem melhoramentos): ( T 2 = T 1 (1 F p ) + T 1 F p /S p = T 1 (1 F p ) + F ) p S p Speedup total: S total = T 1 T 2 = 1 (1 F p ) + (F p /S p ) João Canas Ferreira (FEUP) Aspectos quantitativos elementares Setembro de / T a é o tempo de execução original da parte do programa afectada pelo melhoramento. T n é o tempo de execução melhorado dessa mesma parte Exemplo: Um novo processador é 10 vezes mais rápido que o anterior. Num servidor WWW, o processador original estava ocupado 40% do tempo; o tempo restante era gasto à espera de operações de E/S. Que speedup é proporcionado pelo novo processador? Temos F p = 0.4 e S p = 10. Portanto, a melhoria global é S total = = Se S p = (sem dúvida uma situação ideal), obtém-se S total = 1 1 F p ; a melhoria é limitada pela fracção do programa afectada por essa melhoria. 16
13 Princípios quantitativos A equação de desempenho do CPU Factores do desempenho de um CPU O tempo de execução pode ser escrito de maneira a tornar explícitos os factores envolvidos: T exec = nº de ciclos do programa T ciclo CPI = nº total de ciclos do programa N instr T exec = N instr t ciclo CPI Os três parâmetros são interdependentes, porque as aspectos de base também o são. tempo de ciclo: tecnologia de hardware e organização; CPI: organização e arquitectura do conjunto de instruções; número de instruções: arquitectura do conjunto de instruções e tecnologia de compilação. João Canas Ferreira (FEUP) Aspectos quantitativos elementares Setembro de / N instr representa o número de instruções executadas, não o número de instruções presentes no código no programa Por vezes, é possível agrupar as instruções por classes, cada uma com o seu valor de CPI. Sabendo o número de instruções de cada classe executadas (N i ), calcula-se o CPI através de: CPI = n i=1 (N i CPI i ) N instr = n i=1 ( ) Ni CPI i N instr Os valores para o número de instruções executadas e para o número de ciclos podem ser obtidos por: simulação; monitorização de hardware; cálculo a partir da especificação do CPU e do código do programa em linguagem assembly (mas só em casos muito particulares). 17
14 Referências Referências CAQA4 J. L. Hennessey & D. A. Patterson, Computer Arquitecture: A Quantitative Approach, 4ª ed. Os tópicos tratados nesta apresentação são abordados nas seguintes secções de [CAQA4]: João Canas Ferreira (FEUP) Aspectos quantitativos elementares Setembro de / 16
Aspectos gerais de arquitecturas de computadores
Março de 2004 Áreas de aplicação Tecnologia Áreas de aplicação Tecnologia Tendências de mercado Desktop computing Gama 1000 10000 Euros Optimizar a razão desempenho/custo Servidores Substituem mainframes
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 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 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 maisAula Fev-07 Arquitectura de Computadores 2006/07
Apresentação Aula 1 26-Fev-07 Arquitectura de Computadores 2006/07 1 - Aula 1 Estrutura desta aula Apresentação da cadeira Objectivos Bibliografia Conhecimentos prévios Estrutura das aulas Avaliação 26-Fev-07
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 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 maisARQUITECTURA DE COMPUTADORES 2013/2014 2º SEMESTRE
ARQUITECTURA DE COMPUTADORES 2013/2014 2º SEMESTRE Objectivos da Disciplina Príncipios gerais da arquitectura de computadores Estrutura e comportamento de um computador Programação em assembly Processadores
Leia maisMestrado Integrado em Engenharia Informática e Computação. Arquitecturas Avançadas de Computadores Exame final
FEUP Mestrado Integrado em Engenharia Informática e Computação Arquitecturas Avançadas de Computadores Exame final 2011-01-11 Duração: 2H00m Com consulta Atenção: Este exame tem 6 questões em 8 páginas,
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 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 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 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 maisIntrodução ao Fortran 90
Introdução ao Fortran 90 Departamento de Física UFPel Pré-História 1943-1953: Computador com Programa Fixo ENIAC (Electronic Numerical Integrator and Computer) Início do Projeto: 1943 Projeto Completo:
Leia maisEstrutura do tema Avaliação de Desempenho (IA-32)
Avaliação de Desempenho no IA-32 (4) Estrutura do tema Avaliação de Desempenho (IA-32) 1. A avaliação de sistemas de computação 2. Técnicas de otimização de código (IM) 3. Técnicas de otimização de hardware
Leia maisDesempenho dos Computadores
Arquitectura de Computadores II Engenharia Informática (11545) Tecnologias e Sistemas de Informação (6621) Desempenho dos Computadores Fonte: Arquitectura de Computadores, José Delgado, IST, 2004 Nuno
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 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 maisAlgoritmos Computacionais
UNIDADE 1 Processador e instruções Memórias Dispositivos de Entrada e Saída Software ARQUITETURA BÁSICA UCP Unidade central de processamento MEM Memória E/S Dispositivos de entrada e saída UCP UNIDADE
Leia maisSâmia Rodrigues Gorayeb. Arquitetura de Computadores Linguagem de Máquina
Sâmia Rodrigues Gorayeb Arquitetura de Computadores Linguagem de Máquina Arquitetura de Computadores Agenda: Linguagem de máquina 1. Introdução 2. Característica 3. Programas Compilados 4. Programas Interpretados
Leia mais1. A pastilha do processador Intel possui uma memória cache única para dados e instruções. Esse processador tem capacidade de 8 Kbytes e é
1. A pastilha do processador Intel 80486 possui uma memória cache única para dados e instruções. Esse processador tem capacidade de 8 Kbytes e é organizado com mapeamento associativo por conjuntos de quatro
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 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 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 maisAspectos gerais de arquitecturas de computadores. Prejuízos por downtime. Tendências de mercado
Aspectos gerais de arquitecturas de computadores João Canas Ferreira Março de 2004 Áreas de aplicação Tecnologia c JCF, 2004 ASPD (FEUP/LEEC) Aspectos gerais de arquitecturas de computadores 1/40 c JCF,
Leia maisA IMPORTÂNCIA DE THREADS NO DESEMPENHO DE APLICAÇÕES
A IMPORTÂNCIA DE THREADS NO DESEMPENHO DE APLICAÇÕES Euzébio da Costa Silva 1, Victor Pereira Ribeiro 2, Susana Brunoro Costa de Oliveira 3 1 29520-000, euzebioprogramacao@gmail.com 2 29520-000, victor3ifes@gmail.com
Leia maisSistema Distribuído. Sistema Distribuído. Aplicações Distribuídas. Conceitos Básicos
Sistema Distribuído Conjunto de máquinas (CPU + memória) interligadas em rede. Sistema Distribuído Sistema operacional distribuído trata este conjunto como um único sistema computacional. Estação 1 Estaçã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 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 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 maisLinguagens de Programação Classificação
Classificação Classificação A proximidade que a linguagem de programação tem com a humana determina sua classe (o nível): Linguagem de máquina (primeira geração) Linguagem assembly - de montagem (segunda
Leia maisHierarquia de Memória
Hierarquia de Memória Introdução e Análise do Desempenho AC1 Hierarquia da Memória: Análise do Desempenho 1 Hierarquia de Memória A velocidade dos processadores tem aumentado muito mais rapidamente do
Leia maisSSC0112 Organização de Computadores Digitais I
SSC0112 Organização de Computadores Digitais I 3ª Aula Visão Geral e Conceitos Básicos Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Copyright William Stallings & Adrian J Pullin Tradução, revisão e
Leia maisSSC510 Arquitetura de Computadores 1ª AULA
SSC510 Arquitetura de Computadores 1ª AULA REVISÃO DE ORGANIZAÇÃO DE COMPUTADORES Arquitetura X Organização Arquitetura - Atributos de um Sistema Computacional como visto pelo programador, isto é a estrutura
Leia maisQualidade. Ana Madureira
Qualidade Ana Madureira Qualidade da Informação A qualidade de uma informação é apreciada em função da sua pertinência (adaptação às necessidades do sistema de gestão). Três características permitem medir
Leia maisInformática I. Aula 14. Aula 14-10/10/2007 1
Informática I Aula 14 http://www.ic.uff.br/~bianca/informatica1/ Aula 14-10/10/2007 1 Ementa Noções Básicas de Computação (Hardware, Software e Internet) HTML e Páginas Web Internet e a Web Javascript
Leia maisSistemas de Microprocessadores I Lista de exercícios (questões de provas de semestre anteriores)
Sistemas de Microprocessadores I Lista de exercícios (questões de provas de semestre anteriores) 1 - Fazendo uma comparação entre a arquitetura proposta por Von Neumann e a arquitetura de um microcomputador
Leia maisArquitetura e Organização de Processadores. Aula 1. Introdução Arquitetura e Organização
Universidade Federal do Rio Grande do Sul Instituto de Informática Programa de Pós-Graduação em Computação Arquitetura e Organização de Processadores Aula 1 Introdução Arquitetura e Organização 1. Arquitetura
Leia maisIntrodução à Computação para Engenharia MAC2166 Prof. Dr. Paulo Miranda IME-USP. Aula 1 Introdução à Computação
Introdução à Computação para Engenharia MAC2166 Prof. Dr. Paulo Miranda IME-USP Aula 1 Introdução à Computação Eventos históricos: 1) Primeiro computador a válvulas, o Eletronic Numeric Integrator And
Leia mais4) Defina o que vem a ser um algoritmo, e porque, o mesmo depende do processo.
Lista de Exercício 1 Algoritmo e Programação 29/08/2018 (Solução) 1) Escreva conforme a premissas computacionais, o que vem a ser, lógica. R: São as premissas básicas para se executar instruções, alocadas
Leia maisMC-102 Aula 01. Instituto de Computação Unicamp
MC-102 Aula 01 Introdução à Programação de Computadores Instituto de Computação Unicamp 2016 Roteiro 1 Por que aprender a programar? 2 Hardware e Software 3 Organização de um ambiente computacional 4 Algoritmos
Leia maisPROCESSADORES Unidade de Controle Unidade Aritmética e Lógica efetua memória de alta velocidade registradores Program Counter Instruction Register
PROCESSADORES Um computador digital consiste em um sistema interconectado de processadores, memória e dispositivos de entrada e saída. A CPU é o cérebro do computador. Sua função é executar programas armazenados
Leia maisFCA - Editora de Informática xv
Índice Geral Agradecimentos ix Prefácio xi Índice das Simulações xxv 1 - Introdução ao mundo dos computadores 1 1.1 O computador como ferramenta... 2 1.2 A importância dos computadores... 4 1.3 Processamento
Leia maisIntrodução à Computação: Máquinas Multiníveis
Introdução à Computação: Máquinas Multiníveis Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,
Leia maisIntrodução à Computação MAC0110
Introdução à Computação MAC0110 Prof. Dr. Paulo Miranda IME-USP Aula 1 Introdução à Computação Eventos históricos: 1) Primeiro computador a válvulas, o Eletronic Numeric Integrator And Calculator (ENIAC).
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 maisMedidas 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 maisAula 2 - Programação de Computadores - CI208 1/21
Aula 2 - Programação de Computadores - CI208 Professor: Leonardo Gomes leonardog@inf.ufpr.br Universidade Federal do Paraná Brazil 2016 - Segundo semestre Aula 2 - Programação de Computadores - CI208 1/21
Leia maisSistemas Embebidos I , Tiago Miguel Dias ADEETC - Secção de Arquitecturas e Sistemas Operativos
Sistemas Embebidos I Licenciatura em Eng. de Electrónica e Telecomunicações e de Computadores Licenciatura em Engenharia Informática e de Computadores Mestrado em Engenharia Informática e de Computadores
Leia maisCarlos Eduardo Batista Centro de Informática - UFPB
Carlos Eduardo Batista Centro de Informática - UFPB bidu@ci.ufpb.br Motivação Arquitetura de computadores modernos Desafios da programação concorrente Definição de concorrência Correr junto Disputa por
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 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 maisDesenvolvimento de Aplicações Desktop
Desenvolvimento de Aplicações Desktop Conceitos Básicos de Programação Professor: Charles Leite O Desenvolvimento de Programas A programação consiste em indicar como o computador (hardware) deve trabalhar
Leia maisTecnólogo em Análise e Desenvolvimento de Sistemas. Sistemas Operacionais (SOP A2)
Tecnólogo em Análise e Desenvolvimento de Sistemas Sistemas Operacionais (SOP A2) Conceitos de Hardware e Software Referências: Arquitetura de Sistemas Operacionais. F. B. Machado, L. P. Maia. Editora
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 maisArquitetura de Um Computador
Arquitetura de Um Computador José Costa Introdução à Arquitetura de Computadores Departamento de Engenharia Informática (DEI) Instituto Superior Técnico 2013-09-20 José Costa (DEI/IST) Arquitetura de Um
Leia maisMemórias cache: uma introdução
Memórias cache: uma introdução João Canas Ferreira Dezembro de 2006 Contém figuras de Computer Architecture: A Quantitative Approach, J. Hennessey & D. Patterson, 3ª. ed., MKP 2006 AAC (FEUP/MIEIC) Memórias
Leia maisMedida de desempenho
Medida de desempenho Aceleração (Speedup) = (Tempo em 1 CPU) / (Tempo em p CPUs) O que devemos comparar? Programa paralelo em 1 CPU? Programa equivalente sequencial? Melhor programa sequencial? Fator de
Leia maisInfraestrutura de Hardware. Funcionamento de um Computador
Infraestrutura de Hardware Funcionamento de um Computador Computador: Hardware + Software Perguntas que Devem ser Respondidas ao Final do Curso Como um programa escrito em uma linguagem de alto nível é
Leia maisSistemas de Memória II
Sistemas de Memória II José Costa Introdução à Arquitetura de Computadores Departamento de Engenharia Informática (DEI) Instituto Superior Técnico 2014-11-21 José Costa (DEI/IST) Sistemas de Memória II
Leia maisOpenMP: Variáveis de Ambiente
Treinamento OpenMP C/C++ 1 TREINAMENTO OpenMP C/C++ Módulo 1 Computação de Alto Desempenho Módulo 2 OpenMP: Construtores Paralelos Módulo 3 OpenMP: Diretivas de sincronização Módulo 4 OpenMP: Funções de
Leia maisArquitetura de Von Neumann
Arquitetura de Von Neumann Leandro Tonietto Algoritmos e Programação em C++ Curso de Segurança da Informação ltonietto@unisinos.br http://www.inf.unisinos.br/~ltonietto/tsi/apc/arqvonneumann.pdf Fev-2008
Leia maisUniversidade Estadual de Mato Grosso do Sul UEMS Curso de Ciência da Computação Disciplina de Algoritmos Paralelos e Distribuídos
Universidade Estadual de Mato Grosso do Sul UEMS Curso de Ciência da Computação Disciplina de Algoritmos Paralelos e Distribuídos Pensando em Paralelo Pensar em paralelo é uma tarefa que exige disciplina
Leia maisIntrodução à Computação
Introdução à Computação Jordana Sarmenghi Salamon jssalamon@inf.ufes.br jordanasalamon@gmail.com http://inf.ufes.br/~jssalamon Departamento de Informática Universidade Federal do Espírito Santo Agenda
Leia maisBreve Introdução aos Sistemas Operativos. Disciplina de Informática PEUS, U.Porto
Breve Introdução aos Sistemas Operativos Disciplina de Informática PEUS, 2006 - U.Porto Definição de Sistema Operativo Um programa que funciona como intermediário entre o utilizador do computador e os
Leia maisUnidade 1: Tecnologias da Informação e Comunicação Conceitos Introdutórios. Tecnologias da Informação e Comunicação
Agrupamento Campo Aberto - Beiriz Tecnologias da Informação e Comunicação Unidade 1: Tecnologias da Informação e Comunicação Áreas de Aplicação das TIC n n n Computação l l Informática Burótica Comunicação
Leia maisDECivil Departamento de Engenharia Civil, Arquitectura e Georrecursos. Apresentação. Computação e Programação (CP) 2013/2014.
DECivil Departamento de Engenharia Civil, Arquitectura e Georrecursos Apresentação Computação e Programação (CP) 2013/2014 Aula 1 Objetivos Ficar a saber: funcionamento da unidade curricular (UC) Computação
Leia maisPROCESSADORES SUPERESCALARES FELIPE G. TORRES
PROCESSADORES SUPERESCALARES FELIPE G. TORRES PROCESSAMENTO DAS INSTRUÇÕES Como podemos melhorar esse processamento? Arquitetura de computadores 2 PROCESSAMENTO DAS INSTRUÇÕES Como uma abordagem simplificada,
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 maisMicro-Arquiteturas de Alto Desempenho. Introdução. Ementa
DCC-IM/NCE UFRJ Pós-Graduação em Informática Micro-Arquiteturas de Alto Desempenho Introdução Gabriel P. Silva Ementa Revisão de Organização de Computadores Hierarquia de Memória Memória Virtual Memória
Leia maisApresentação. Informação geral + Conceitos iniciais
Apresentação Informação geral + Informação geral Página da cadeira Objectivos principais Compreender a importância dos algoritmos e dos programas de computador para a resolução de problemas em engenharia.
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 maisArquitetura e Organização de Computadores
Arquitetura e Organização de Computadores Conjunto de Instruções Givanaldo Rocha de Souza http://docente.ifrn.edu.br/givanaldorocha givanaldo.rocha@ifrn.edu.br Material do prof. Sílvio Fernandes - UFERSA
Leia maisComputadores podem ser úteis em problemas que envolvem: Grande número de dados. Grande número de cálculos. Complexidade. Precisão.
O uso do computador Computadores podem ser úteis em problemas que envolvem: Grande número de dados. Grande número de cálculos. Complexidade. Precisão. Exemplos: Modelos meteorológicos. Cálculo estrutural.
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 maisAULA 01: APRESENTAÇÃO
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 01: APRESENTAÇÃO Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação QUAIS OS OBJETIVOS DESSA DISCIPLINA?
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 maisArquitetura e Organização de Computadores
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO DEPARTAMENTO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIA DA COMPUTAÇÃO Arquitetura e Organização de Computadores Conjunto de Instruções Prof. Sílvio Fernandes
Leia maisEquivalência de Fluxos e Modelagem Hierárquica. Profa. Jussara M. Almeida 1 o Semestre de 2014
Equivalência de Fluxos e Modelagem Hierárquica Profa. Jussara M. Almeida 1 o Semestre de 2014 Modelagem Hierárquica Modelos mais sofisticados que podem incluir detalhes adicionais do sistema sendo representado
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 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 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 maisIntrodução à Computação: Sistemas de Computação
Introdução à Computação: Sistemas de Computação Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,
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 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 maisci212 desempenho 2011-2 Avaliação de Desempenho
Avaliação de Desempenho Qual é o melhor avião? capac alcance veloc produtiv avião [p] [km] [km/h] [p km/h] B-777 375 7400 976 366.000 B-747 470 6640 976 458.720 Concorde 132 6400 2160 280.800 DC8-50 146
Leia maisProcessos O conceito de processos é fundamental para a implementação de um sistema multiprogramável. De uma maneira geral, um processo pode ser entend
Concorrência Nos sistemas Monoprogramáveis somente um programa pode estar em execução por vez, permanecendo o processador dedicado a esta única tarefa. Os recursos como memória, processador e dispositivos
Leia maisFunção Fundamental do SO
Função Fundamental do SO Gestão do Hardware Uma das funções fundamentais do sistema operativo é gerir os recursos do hardware de um modo o mais transparente possível ao utilizador Recursos principais a
Leia maisCP Introdução à Informática Prof. Msc. Carlos de Salles
CP 1015.1 Prof. Msc. Carlos de Salles PROGRAMA 1. CONCEITO DE SISTEMAS 1.1 Sistemas e sua classificação 1.2 Informações e Dados 1.3 O Processamento de Dados 1.4 O Computador e sua História 2. ESTRUTURA
Leia maisSistemas Operativos: Implementação de Processos
Sistemas Operativos: Implementação de Processos Pedro F. Souto (pfs@fe.up.pt) March 8, 2012 Sumário: Implementação de Processos Contexto (Estado) dum Processo Comutação de Processos Escalonamento de Processos
Leia maisAgrupamento de Escolas Miradouro de Alfazina (171839) Tecnologias da Informação e Comunicação AULA 3 4
AULA 3 4 Sumário Identificar os componentes elementares de hardware e de software de um computador e/ou dispositivos eletrónicos similares, explorando o seu funcionamento; Reconhecer a necessidade de manter
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 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 maisUnidade I. Organização de Computadores. Prof. Renato Lellis
Unidade I Organização de Computadores Prof. Renato Lellis O que é um computador? Computador Datação 1789 cf. MS1 Acepções substantivo masculino 1 o que computa; calculador, calculista 2 Rubrica: informática.
Leia maisFundamentos da Informática Aula 03 - Sistemas operacionais: Software em segundo plano Exercícios Professor: Danilo Giacobo
Fundamentos da Informática Aula 03 - Sistemas operacionais: Software em segundo plano Exercícios Professor: Danilo Giacobo Múltipla escolha 1. Em que consiste um sistema operacional: a. Um conjunto de
Leia maisSistemas Operacionais
Sistemas Operacionais CAP 2: Conceitos de Hardware e Software Prof. MSc. Diego R. Moraes diegorm@anhanguera.com Download de todo conteúdo da disciplina https://sites.google.com/site/diegorafaelmoraes/downloads
Leia maisSumário. CAPÍTULO 1 Introdução 35. CAPÍTULO 2 Representação de Dados em Sistemas de Computação 73
Sumário CAPÍTULO 1 Introdução 35 1.1 Visão geral 35 1.2 Os principais componentes de um computador 37 1.3 Um sistema-exemplo: entrando no jargão 38 1.4 Organizações de padronização 47 1.5 Desenvolvimento
Leia maisSistemas Operacionais. Entrada/Saída
Sistemas Operacionais Entrada/Saída Atualizado em 28/02/2014 Como ocorre a comunicação de E/S Aplicação Operações de E/S Chamadas de Sistema S.O. Subsistema de E/S Núcleo (Kernel) Drivers HARDWARE Controladoras
Leia maisFigura 01 Programa e Processo
02 PROCESSOS 2.1 Introdução Para poder controlar a execução dos diversos programas e o uso concorrente do processador e dos demais recursos um programa deve sempre estar sempre associado a um processo.
Leia mais