MO401-2006 2.1 MO401-2007 Revisado 2006 Prof. Paulo Cesar Centoducatte MO401 Arquitetura de Computadores.

Slides:



Advertisements
Apresentações semelhantes
«Forte do Bom Sucesso (Lisboa) – Lápides 1, 2, 3» «nomes gravados, 21 de Agosto de 2008» «Ultramar.TerraWeb»
Advertisements

Coerência de Cache em Multiprocessadores
Integridade de Dados em Memórias Cache
Ch Morgan Kaufmann Publishers Paulo C. Centoducatte – MC542 - IC/Unicamp- 2004s2 Desempenho.
1 ANÁLISE E PROJETO NO PROCESSO DE DESENVOLVIMENTO DE SOFTWARE PROCESSO: CONCEITO MODELOS DE PROCESSO PROCESSO UNIFICADO HISTÓRIA CARACTERÍSTICAS AS QUATRO.
PIPELINE (continuação).
Introdução à Hierarquia de Memória
UNICAMP Universidade Estadual de Campinas Centro Superior de Educação Tecnológica Divisão de Telecomunicações Propagação de Ondas e Antenas Prof.Dr. Leonardo.
Palestras, oficinas e outras atividades
Ch Morgan Kaufmann Publishers Paulo C. Centoducatte Desempenho.
14/10/09 Uma animação possui: Início; Passo; Fim; 1.
Exercício do Tangram Tangram é um quebra-cabeças chinês no qual, usando 7 peças deve-se construir formas geométricas.
I Curso de Nivelamento em Manejo de Sementes Florestais
Arquitetura de Computadores
Aula 06: Introdução ao Pipelining, Hazards Estruturais e Forwarding
Aula 03: Análise de Performance e Benchmarks
Avaliação do desempenho
1 INQUÉRITOS PEDAGÓGICOS 2º Semestre 2003/2004 ANÁLISE GERAL DOS RESULTADOS OBTIDOS 1.Nº de RESPOSTAS ao inquérito 2003/2004 = (42,8%) 2.Comparação.
Arquitectura de Computadores II Paulo Marques Departamento de Eng. Informática Universidade de Coimbra 2004/ Tendências Actuais.
Ludwig Krippahl, 2007 Programação para as Ciências Experimentais 2006/7 Teórica 2.
Arquiteturas e Redes de Computadores
Multithreading e multiprocessamento
Desempenho de cpu Arquitetura e Organização de Computadores 1
Capítulo 1 Introdução 1.1 O que é um sistema operacional
Curso de ADMINISTRAÇÃO
Arquitetura de Sistemas Operacionais
MC542 Organização de Computadores Teoria e Prática
MC542 Organização de Computadores Teoria e Prática
MC542 Organização de Computadores Teoria e Prática
Processador Pentium 4 MO401 – Arquitetura de Computadores I
Arquiteturas Diferentes
Morgan Kaufmann Publishers Paulo C. Centoducatte – MC542 - IC/Unicamp- 2006s Prof. Paulo Cesar Centoducatte
MC542 Organização de Computadores Teoria e Prática
MO Prof. Paulo Cesar Centoducatte MC542 Organização de Computadores Teoria e Prática.
MC542 Organização de Computadores Teoria e Prática
MC542 Organização de Computadores Teoria e Prática
CISC e RISC.
SSC114 Arquitetura de Computadores Avaliação de Desempenho
Avaliação de Desempenho
Avaliação de Desempenho
Avaliação de Desempenho
Avaliação de Desempenho Introdução Aula 1 Marcos José Santana Regina Helena Carlucci Santana Universidade de São Paulo Instituto de Ciências Matemáticas.
Avaliação de Desempenho Introdução Aula 1 Marcos José Santana Regina Helena Carlucci Santana Universidade de São Paulo Instituto de Ciências Matemáticas.
Crescimento Econômico Brasileiro : Uma Visão Comparada de Longo Prazo Prof. Giácomo Balbinotto Neto UFRGS.
Crescimento Econômico Brasileiro : Uma Visão Comparada de Longo Prazo Prof. Giácomo Balbinotto Neto UFRGS.
Estudo da aplicação “jogos” em sistemas embarcados
Rganização de Computadores Melhorias de Desempenho com Pipelines Capítulo 6 – Patterson & Hennessy Organização de Computadores Melhorias de Desempenho.
Capítulo 1 Introdução 1.1 O que é um sistema operacional
Aula 4 Nomes, Vinculações, Tipos e Escopos
Linguagens de Programação
Experiments with Strassen’s Algorithm: from sequential to parallel
Medição do Desempenho Benchmarks AC1 –Medição do Desempenho.
Arquitectura de Computadores Avaliação do desempenho A definição do desempenho depende dos objectivos dos utilizadores Qual é o melhor avião?Qual é o mais.
Benchmarks Arquitectura de Computadores Lic. em Engenharia Informática 2008/09 Luís Paulo Santos.
Provas de Concursos Anteriores
MATEMÁTICA PARA NEGÓCIOS
Cinemática de uma Partícula Cap. 12
Oferta e Demanda A Curva de Oferta
GAPH Integração de Hardware do Usuário ao CoreConnect Leandro Heleno Möller e Leonel Pablo Tedesco Prototipação Rápida e Computação.
FISCALIZAÇÃO DIRECIONADA NÍVEL DE SERVIÇO ANO I – Nº 9.
Coordenação Geral de Ensino da Faculdade
Arquitetura de computadores
Aveiro, 28 de Abril de Arquitectura de Computadores II Ano lectivo 2003/2004 Nuno
1 2 Observa ilustração. Cria um texto. Observa ilustração.
Capítulo 1 Introdução 1.1 O que é um sistema operacional
Olhe fixamente para a Bruxa Nariguda
Introdução à Hierarquia de Memória
Arquitectura de Computadores II Paulo Marques Departamento de Eng. Informática Universidade de Coimbra 2004/ Aspectos sobre Desempenho.
Avaliação de Desempenho de Sistemas Computacionais
Benchmarks: Dhrystone e Whetstone Matheus F. Stigger.
Transcrição da apresentação:

MO MO Revisado 2006 Prof. Paulo Cesar Centoducatte MO401 Arquitetura de Computadores I

MO MO Revisado MO401 Arquitetura de Computadores I Revisão

MO MO Revisado Resumo #1/3: Pipelining & Desempenho Sobreposição de tarefas; fácil se as tarefas são independentes Speed Up Pipeline Depth; Se CPI ideal for 1, então: Hazards limita o desempenho nos computadores: –Estrutural: é necessário mais recursos de HW –Dados (RAW,WAR,WAW): forwarding, compiler scheduling –Controle: delayed branch, prediction Tempo é a medida de desempenho: latência ou throughput CPI Law: CPU time= Seconds = Instructions x Cycles x Seconds Program Program Instruction Cycle CPU time= Seconds = Instructions x Cycles x Seconds Program Program Instruction Cycle

MO MO Revisado Resumo #2/3: Caches Princípio da Localidade: –Programas acessam relativamente uma pequena porção do espaço de endereçamento em um dado instante de tempo. »Localidadde Temporal : Localidade no Tempo »Localidade Espacial : Localidade no Espaço Cache Misses: 3 categorias –Compulsory Misses –Capacity Misses –Conflict Misses Políticas de Escrita: –Write Through: (write buffer) –Write Back

MO MO Revisado Resumo #3/3: Cache Design Várias Dimensões interagindo –Tamanho da cache –Tamanho do block –associatividade –Política de replacement –Write-through vs Write-back Solução ótima é um compromisso –Depende da característica dos acessos »workload »I-cache, D-cache, TLB –Depende da razão tecnologia / custo Associativity Cache Size Block Size Bad Good LessMore Factor AFactor B

MO MO Revisado MO401 Arquitetura de Computadores I Fundamentos Computer Architecture: A Quantitative Approach - (Capítulo 1)

MO MO Revisado Sumário Introdução –O que é Arquitetura de Computadores? Tarefas do Projetista Tecnologia e Tendências na Computação Custo, Preço e suas Tendências Medidas Princípios Quantitativos Outros Aspectos

MO MO Revisado O que é Arquitetura de Computadores (AC)? 1950s a 1960s: Cursos de AC? Aritmética Computacional 1970s a meados dos anos 1980s: Cursos de AC? Projeto do Conjunto de Instruções (ISA), especialmente voltado para compiladores 1990s a 2000s: Cursos de AC? Projeto de CPU, Sistemas de Memórias, Sistemas de I/O, Multiprocessadores. –Enfoque Baseado em Desempenho 200? : Cursos de AC? Multi-Core, Embedded System –Enfoque Baseado em Desempenho e Consumo

MO MO Revisado Tarefas do Projetista Avaliação dos Sistemas Existentes quanto aos Gargalos aos Gargalos Simulação dos Novos Projetos e Organizações Implementação da Nova Geração Do Sistema Tendências Tecnológicas Benchmarks Workloads Complexidade de Implementação

MO MO Revisado Tendências Gordon Moore (fundador da Intel), em 1965 observou que o número de transistores em um chip dobrava a cada ano (Lei de Moore) Continua valida até os dias de hoje !!!??? O desempenho dos processadores, medidos por diversos benchmarks, também tem crescido de forma acelerada. A capacidade das memórias tem aumentado significativamente nos últimos 20 anos (E o custo reduzido)

MO MO Revisado Quais as Razões Desta Evolução nos Últimos Anos? Desempenho –Avanços tecnológicos »Domínio de CMOS sobre as tecnologias mais antigas (TTL, ECL, …) em custo e desempenho –Avanços nas arquiteturas »RISC, superscalar, VLIW, »DRAM, SDRAM, … »RAID, … Preço: Baixo custo devido a: –Desenvolvimento mais simples »CMOS VLSI => sistemas menores, menos componentes –Alto volume (escala).....

MO MO Revisado Tendências Lei de Moore

MO MO Revisado Tendência Tecnológica: Capacidade Microprocessadores CMOS: Die size: 2X a cada 3 anos Alpha 21264: 15 milhões Pentium Pro: 5.5 milhões PowerPC 620: 6.9 milhões Alpha 21164: 9.3 milhões Sparc Ultra: 5.2 milhões Moores Law

MO MO Revisado Tendências Desempenho dos Processadores

MO MO Revisado Tendências Capacidade das Memórias ano Mbyte cycle time ns ns ns ns ns ns ns

MO MO Revisado Tendências Velocidade Para a CPU o crescimento da velocidade tem sido muito acelerado Para Memória e disco o crescimento da velocidade tem sido modesto Isto tem levado a mudanças significativas nas arquiteturas, SO e mesmo nas práticas de programação. CapacidadeSpeed (latency) Lógica2x em 3 anos2x em 3 anos DRAM4x em 3 anos2x em 10 anos Disco4x em 3 anos 2x em 10 anos

MO MO Revisado Medidas ? Como descrever em forma numérica o desempenho dos computadores? Quais ferramentas (ou qual ferramental) usar para realizar e apresentar as medidas?

MO MO Revisado Métricas Tempo para executar uma tarefa (ExTime) –Execution time, response time, latency Tarefas por dia, hora, semana, segundo, ns, … (Desempenho) –Throughput, bandwidth Plane Boeing 747 BAD/Sud Concorde Speed 610 mph 1350 mph DC to Paris 6.5 hours 3 hours Passengers Throughput (pmph) 286, ,200

MO MO Revisado Métricas Comparação "X é n vezes mais rápido que Y" significa: ExTime(Y) Performance(X) = ExTime(X) Performance(Y) Velocidade do Concorde vs. Boeing 747 Throughput do Boeing 747 vs. Concorde

MO MO Revisado Métricas Throughput Compiler Programming Language Application Datapath Control TransistorsWiresPins ISA Function Units (millions) of Instructions per second: MIPS (millions) of (FP) operations per second: MFLOP/s Cycles per second (clock rate) Megabytes per second Respostas por dia, mês,.. Operações por segundo

MO MO Revisado Métodos para Estimar o Desempenho Benchmarks, Traces, Mixes Hardware: custo, delay, área, consumo de energia Simulação (vários níveis) –ISA, RT, Gate, Circuito Teoria das Filas Regras Práticas Leis/Princípios

MO MO Revisado Benchmarks Aplicações Reais –Compiladores, processadores de texto,... –Problema de portabilidade, dificil medir o tempo de execução Aplicações Modificadas –Melhora a portabilidade, pode ser refinado para medir um certo aspecto de interesse (exp: tempo de cpu) Kernels –Usados para avaliar caractrísticas específicas –Livermore Loops, Linpack Toy Benchmarks –10 a 100 linhas de código, fácil de programar, avaliação inicial Benchmarks Sintéticos –Semelhantes aos Kernels –Whetstone, Dhrystone

MO MO Revisado Benchmarks Desktop –SPEC ( Servidores –SPEC Sistemas Embarcados –EEMBC (Embedded Microprocessor Benchmark Consortium) ( »Automotivo »Consumidor »Rede »Automação de Escritório »telecomunicações

MO MO Revisado Benchmarks SPEC: Standard Performance Evaluation Corporative ( Primeira Versão –10 programas (SPECmarks) Segunda Versão –SPECInt92 (6 programas) –SPECfp92 (14 programas) »Compiler Flags: livre Terceira Versão –SPECint95 (8 programas) –SPECfp95 (10 programas) –SPECint_base95, SPECfp_base95 »benchmarks útil por 3 anos »Compiler Flags: controladas

MO MO Revisado Benchmarks SPEC CPU CINT2000 ProgramaLinguagem Finalidade 164.gzip CCompression 175.vprCFPGA Circuit Placement and Routing 176.gccCC Programming Language Compiler 181.mcfCCombinatorial Optimization 186.craftyCGame Playing: Chess 197.parserCWord Processing 252.eonC++Computer Visualization 253.perlbmkCPERL Programming Language 254.gapC Group Theory, Interpreter 255.vortexCObject-oriented Database 256.bzip2CCompression 300.twolfCPlace and Route Simulator

MO MO Revisado Benchmarks SPEC CPU CFP2000 ProgramLinguagem Finalidade 168.wupwiseFortran 77Physics / Quantum Chromodynamics 171.swimFortran 77Shallow Water Modeling 172.mgridFortran 77Multi-grid Solver: 3D Potential Field 173.appluFortran 77Parabolic / Elliptic Differential Equations 177.mesaC3-D Graphics Library 178.galgelFortran 90Computational Fluid Dynamics 179.art C Image Recognition / Neural Networks 183.equakeCSeismic Wave Propagation Simulation 187.facerecFortran 90Image Processing: Face Recognition 188.ammpCComputational Chemistry 189.lucasFortran 90Number Theory / Primality Testing 191.fma3dFortran 90Finite-element Crash Simulation 200.sixtrackFortran 77High Energy Physics Accelerator Design 301.apsiFortran 77Meteorology: Pollutant Distribution

MO MO Revisado Benchmarks – Exemplo de Resultado para SpecINT2000 Base Base Base Peak Peak Peak Benchmarks Ref Time Run Time Ratio Ref Time Run Time Ratio 164.gzip * * 175.vpr * * 176.gcc * * 181.mcf * * 186.crafty * * 197.parser * * 252.eon * * 253.perlbmk * * 254.gap * * 255.vortex * * 256.bzip * * 300.twolf * * SPECint_base SPECint Intel OR840(1 GHz Pentium III processor)

MO MO Revisado Benchmarks Como Apresentar o Desempenho? Gerentes gostam de números. Técnicos querem mais: Reprodutibilidade – informações que permitam que o experimento seja repetido (reproduzido) Consistência nos dados, ié se o experimento é repetido os dados devem ser compativeis entre si Como Apresentar os Dados? Computador AComputador BComputador C Programa P1 (secs)11020 Programa P2 (secs) Total Time (secs)

MO MO Revisado Como Apresentar os Dados Média Aritmética (média aritmética ponderada) (T i )/n or (W i *T i ) Média Harmônica (média harmônica ponderada) n/ (1/R i ) or n/ (W i /R i ) Média geométrica ( T j / N j ) 1/n Tempo de execução normalizado (e.g., X vezes melhor que SPARCstation 10 - Spec) –Não use média aritmética para tempos de execução normalizado (o resultado, quando comparado n máquinas, depende de qual máquina é usada como referência), use média geométrica

MO MO Revisado Como Apresentar os Dados máquina A B programa 1 10 => t1A 20 => t1B programa 2 30 => t2A 5 => t2B Média aritmética normalizada em A: (t1A/t1A + t2A/t2A)/2 = 1 < (t1B/t1A+t2B/t2A)/2 = 13/12 Média aritmética normalizada em B: (t1A/t1B + t2A/t2B)/2 = 13/4 > (t1B/t1B + t2B/t2B)/2 = 1 CONTRADIÇÃO!!!! Média Geométrica : ((t1A* t2A)/(t1A*t2A))^-.5 = 1 > ((t1B*t2B)/(t1A*t2A))^-.5 = (1/3)^-.5 => normalizado em A ((t1A* t2A)/(t1B*t2B))^-.5 = 3^-.5 > ((t1B*t2B)/(t1B*t2B))^-.5 = 1 => normalizado em B

MO MO Revisado Custo, Preço e suas tendências

MO MO Revisado Custo de Circuito Integrado (IC) Custo do Die é proporcional à (área do die) 4

MO MO Revisado

MO MO Revisado Examplos Reais ChipMetalLine WaferDefectAreaDies/YieldDie Cost layers width cost /cm 2 mm 2 wafer 386DX20.90$ %$4 486DX230.80$ %$12 PowerPC $ %$53 HP PA $ %$73 DEC Alpha30.70$ %$149 SuperSPARC30.70$ %$272 Pentium30.80$ %$417 – From "Estimating IC Manufacturing Costs, by Linley Gwennap, Microprocessor Report, August 2, 1993, p. 15

MO MO Revisado Abordagem Quantitativa Faça o caso comum ser mais rápido Amdahls Law: –Relaciona o speedup total de um sistema com o speedup de uma porção do sistema O speedup no desempenho obtido por uma melhoria é limitado pela fração do tempo na qual a melhoria é utilizada

MO MO Revisado Speedup devido a uma melhoria E: Fração melhorada tEnhancemenWithoutePerformanc tEnhancemenWithePerformanc tEnhancemenWithTimeExecution tEnhancemenWithoutTimeExecution ESpeedup __ __ ___ ___ )( Abordagem Quantitativa Amdahl's Law

MO MO Revisado Abordagem Quantitativa Amdahl's Law T Old = T F + T nF T New = T F /S + T nF Lim TnF ->0 ? Lim F ->0 ? Suponha que a melhoria E acelera a execução de uma fração F da tarefa de um fator S e que o restante da tarefa não é afetado pela melhoria E. Qual o speedup?

MO MO Revisado ExTime new = ExTime old x (1 - Fraction enhanced ) + Fraction enhanced Speedup overall = ExTime old ExTime new Speedup enhanced = 1 (1 - Fraction enhanced ) + Fraction enhanced Speedup enhanced Fração Melhorada ExTime old ExTime new Abordagem Quantitativa Amdahl's Law

MO MO Revisado Exemplo: Suponha que as instruções de ponto flutuante foram melhoradas e executam 2 vezes mais rápidas, porém somente 10% das instruções, em um programa, são FP Speedup overall = =1.053 ExTime new = ExTime old x ( /2) = 0.95 x ExTime old Abordagem Quantitativa Amdahl's Law

MO MO Revisado Amdahl's Law Execução de um programa em N processadores

MO MO Revisado