Escolar Documentos
Profissional Documentos
Cultura Documentos
Aula 2
Fundamentos do Projeto e
Análise Quantitativos
Engenharia de Computação 1
Aula Anterior
Arquitetura de Computadores x Conjunto de Instruções
Conjunto de habilidades para o projeto de arquiteturas
5 princípios quantitativos para projeto
Abordagem quantitativa
Engenharia de Computação
2
Revisão
Princípios quantitativos de projetos
Explorar o paralelismo
Ex: Busca em paralelo em múltiplos bancos de
memória (sistema de cache) ou Pipeline.
Princípio da localidade
Localidade temporal x Localidade espacial
Foco no caso comum
O caso freqüente é geralmente mais simples e
portanto mais fácil de ser aprimorado do que o
caso infrequente
Engenharia de Computação
3
Revisão
Lei de Amdahl
Limita o desempenho a ser conseguido com o uso
de algum modo de execução mais rápido.
Será limitado pela fração de tempo que o modeo mais
rápido pode ser usado.
Equação de desempenho do processador:
Tempo de CPU = no. instruções x ciclos por instrução x
tempo de ciclo de clock
Engenharia de Computação 4
Agenda
Acompanhando as tendências
tecnológicas
Comparações quantitativas:
Definindo e quantificando a potência
Definindo e quantificando o custo
Definindo e quantificando a confiabilidade
Definindo, quantificando e sintetizando
desempenho relativo
Engenharia de Computação 5
Tendências na tecnologia
Para ser bem sucedida:
ISA precisa ser projetada para sobreviver às
rápidas mudanças na tecnologia dos
computadores
Tecnologias que mudam em ritmo notável:
Tecnologia do CI
DRAM
Flash
Disco Magnético
Engenharia de Computação 6
Tendências na tecnologia
Engenharia de Computação 8
Discos: Arcaico vs. Moderno
CDC Wren I, 1983 • Seagate 373453, 2003
3600 RPM • 15000 RPM (4X)
0.03 GBytes capacity • 73.4 GBytes (2500X)
Tracks/Inch: 800 • Tracks/Inch: 64000 (80X)
Bits/Inch: 9550 • Bits/Inch: 533,000 (60X)
Three 5.25” platters • Four 2.5” platters
(in 3.5” form factor)
Bandwidth: • Bandwidth:
0.6 MBytes/sec 86 MBytes/sec (140X)
Latency: 48.3 ms • Latency: 5.7 ms (8X)
Cache: none • Cache: 8 MBytes
Engenharia de Computação 9
Latência vs. Largura de banda (por ~ 20 anos)
10000
• Marcos de
desempenho
1000
Relative
BW Disk • Disk: 3600, 5400,
100
Improve 7200, 10000, 15000
ment
RPM
10
(Latency improvement
= Bandwidth improvement)
1
1 10 100
Relative Latency Improvement
Engenharia de Computação 10
Memória
1980 DRAM • 2000 Double Data Rate Synchr.
(asynchronous) (clocked) DRAM
0.06 Mbits/chip • 256.00 Mbits/chip (4000X)
35 mm2 • 204 mm2
16-bit data bus per module, • 64-bit data bus per
16 pins/chip DIMM, 66 pins/chip (4X)
13 Mbytes/sec • 1600 Mbytes/sec (120X)
Latency: 225 ns • Latency: 52 ns (4X)
(no block transfer) • Block transfers (page mode)
Engenharia de Computação 11
Latência vs. Largura de banda (por ~ 20 anos)
10000
• Marcos de desempenho
1000
Memory Module: 16bit plain
DRAM, Page Mode DRAM,
Relative Memory
BW Disk 32b, 64b, SDRAM,
100
Improve
ment
DDR3 SDRAM
• Disk: 3600, 5400, 7200,
10 10000, 15000 RPM
(Latency improvement
= Bandwidth improvement)
1
1 10 100
Relative Latency Improvement
Engenharia de Computação 12
Redes Locais (LANs)
Engenharia de Computação 13
Latência vs. Largura de banda (por ~ 20 anos)
10000
• Marcos de desempenho
1000
Network
• Ethernet: 10Mb/s, 100Mb/s,
Relative Memory
BW Disk 1000Mb/s, 10000 Mb/s
100
Improve
ment
• Memory Module: 16bit plain
DRAM, Page Mode DRAM,
10 32b, 64b, SDRAM,
DDR SDRAM
(Latency improvement • Disk: 3600, 5400, 7200,
= Bandwidth improvement)
1 10000, 15000 RPM
1 10 100
Relative Latency Improvement
Engenharia de Computação 14
CPUs
1982 Intel 80286 • 2001 Intel Pentium 4
Engenharia de Computação 15
Latência vs. Largura de banda (por ~ 20 anos)
Engenharia de Computação 16
Regra empírica latência-banda
Em determinado período que a banda
dobra, a latência aumento no máximo por
um fator de 1,4.
Posto de outra forma:
A banda aumenta de maneira quadrática em
relação ao aumento da latência.
Engenharia de Computação 17
Atraso entre latência e banda (1)
1) A Lei de Moore auxilia mais a largura de
banda do que a latência
Transistores mais rápidos, em maior número,
e mais terminais no CI ajudam a banda.
Transistores menores e mais rápidos, porém
com comunicação sobre linhas mais longas:
limita a latência.
Engenharia de Computação 18
Atraso entre latência e banda (2)
2) Distância limita a latência
Tamanho de um bloco de DRAM => longas
linhas de bits e de palavras => maior parcela
do tempo de acesso
3) É mais fácil vender banda
(”maior=melhor”)
e.g., 10 Gbits/s Ethernet vs. 10 micro seg
latência ethernet
4400 MB/s DIMM (”PC4400”) vs. 50 ns de
latência
Engenharia de Computação 19
Atraso entre latência e banda (3)
4) Melhora da Latência (diminuição do tempo) ajuda a
largura (aumento) mas não o contrário
Aumento da velocidade de rotação dos discos melhora
é melhorada em 4.2 X
Alta densidade linear ajuda a largura (capacidade
também) mas não melhora a latência (diminuição)
9550 BPI (bit per inch)=> 533000 BPI => 60X na largura
Engenharia de Computação 20
Atraso entre latência e banda (4)
Para discos, LAN, memórias e
microprocessadores a banda é melhorada
de maneira quadrática em relação a
melhora da latência.
A melhoria é provavelmente maior em
sistemas reais quando a banda é
aumentada com a replicação de
componentes.
Engenharia de Computação 21
Tendências na alimentação dos CI
Engenharia de Computação 22
Potência vs. Energia
Para dispositivos móveis, energia é uma
métrica melhor:
Edinâmica = ½ x Carga capacitiva x Voltagem2
Engenharia de Computação 23
Potência vs. Energia
Para uma tarefa fixa:
Reduzir a taxa de clock reduz a potência, mas
não a energia.
A capacitância de carregamento é uma
função do número de transistores e da
tecnologia de semicondutores usados.
Com o propósito de poupar energia, a
maioria das CPUs desligam o clock dos
módulos inativos.
Engenharia de Computação 24
Exercício 1
Suponha que uma redução de 15% na
voltagem resulte em uma redução de 15%
na freqüência. Sendo assim, qual é o
impacto na energia dinâmica e na potência
dinâmica?
Engenharia de Computação 25
Exercício 1
A capacitância é inalterada, a resposta
para a energia é a razão das voltagens
Engenharia de Computação 26
Exercício 1
Para a potência, nós avaliamos a taxa
das frequências de chaveamento:
Engenharia de Computação 27
Tendências nos custos
Custo de um componente manufaturado
diminui com o tempo, mesmo que não
haja melhorias na tecnologia de
implementação básica
Curva de aprendizado
Volumes maiores afetam o custo
Reduz o tempo necessário da curva de aprendizado
Aumenta e eficiência de compras e manufatura
Diminui a quantidade de custo a ser amortizada por
computador
Engenharia de Computação 28
Tendências nos custos
Commodities: Produtos idênticos vendidos
por vários fornecedores em grandes
volumes
Produtos ofertados nas prateleiras: DRAMs,
flash, discos...
Altamente competitivo
Lucro limitado!!!
Engenharia de Computação 29
Tendências nos custos
Wafers: Lingote de cristal de silício fatiado
Os wafers passam por uma série de etapas
de processamento, dentre os quais são
depositados padrões de elementos químicos
criando os transistores, condutores e
isolamentos
Dies: As seções individuais cortadas de
um wafer, mas informalmente conhecidos
como chips
Engenharia de Computação 30
Tendências nos custos
Custo do circuito integrado
Engenharia de Computação 31
Tendências nos custos
Engenharia de Computação 32
Tendências nos custos
Rendimento do die:
Bose-Einstein formula
Engenharia de Computação 33
Exercício 2
Encontre o rendimento para os dies: um
com 1,5 cm de um lado e outro com 1,0
cm de lado, considerando uma densidade
de defeito de 0,031 por cm2 e N de 13,5.
Engenharia de Computação 34
Exercício 2
As áreas totais de die são 2,25cm2 e
1,00cm2.
Para um die maior, o rendimento é :
Rendimento do die = 1/(1+0,031 x 2,25)13,5 =
0,40
Para o die menor, o rendimento é :
Rendimento do die = 1/(1+0,031 x 1,00)13,5 =
0,66
Menos da metade do die grande é bom,
porém mais de dois terços do die pequeno
são bons.
Engenharia de Computação 35
Dependability
Como decidir quando um sistema está
operando adequadamente?
Provedores de infraestrutura atualmente
oferecem um acordo que qualifica a
disponibilidade dos serviços. (Service Level
Agreements (SLA)).
Estados: Em operação e Interrupção.
Transições: Falha, Restauração.
Engenharia de Computação 36
Dependability
Confiabilidade (reability) do módulo: Tempo de
serviço contínuo.
Mean time to failure (MTTF)
Failures In Time (FIT) = 1/MTTF, Taxa de falhas
Tradicionamente reportado em falhas por bilhões de horas de
operação
Mean time to repair (MTTR)
Mean time between failures (MTBF) = MTTF + MTTR
Disponibilidade (availability)
Mede a alternância do serviço entre os 2 estados (operação
e interrupção)
Availability = MTTF / MTBF
Engenharia de Computação 37
Dependability
Se uma coleção de módulos tiver tempos
de vida distribuídos exponencialmente
Significando que a idade de um módulo não é
importante na probabilidade de falha
Então, a taxa de falha geral do conjunto é
a soma das taxas de falhas dos módulos.
Engenharia de Computação 38
Exercício 3
Engenharia de Computação 39
Exercício 3
Engenharia de Computação 40
Medindo desempenho
Medidas típicas de desempenho:
Tempo de resposta
Throughput
Tempo de execução
Tempo de relógio de parede: inclui todos os overheads do sistema
(E/S, acesso à memória, overhead do SO)
Tempo de CPU: somente o tempo que o processador está computando
Benchmarks :
Kernels (e.g. multiplicar matriz)
Programas de brinquedo (e.g. sorting)
Benchmarks sintéticos (e.g. Dhrystone)
Benchmark suites (e.g. SPEC06fp, TPC-C)
Engenharia de Computação 41
Conclusão
Acompanhar a tecnologia é parte da
responsabilidade de um projetista de
computadores
Esperar por um aumento da banda de discos,
DRAM, LANs e processadores de maneira
quadrática em relação ao aumento da latência.
Quantificar a potência dinâmica e estática.
Quantificar o custo
Quantificar a confiabilidade.
Engenharia de Computação 42
Tarefa
Entrega: dia 23/04
Exercícios da 5ª edição:
1.1, 1.2, 1.3, 1.4, 1.11, 1.13, 1.15
Engenharia de Computação 43