Você está na página 1de 43

Arquitetura de Computadores II

Aula 2
Fundamentos do Projeto e
Análise Quantitativos

Profa. Daniela Cascini


(cascini@decom.cefetmg.br)

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

 Acompanhamento da tecnologia e antecipação

 Mudança de paradigma de computação seqüencial para


computação paralela

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

Lei de Moore: O número de transistores / circuitos


integrados dobra a cada 18-24 meses
Engenharia de Computação 7
Tendências na tecnologia
 Largura de banda (throughput): Número
de trabalho realizado por unidade de
tempo.
 e.g., Rede de taxa de M bits / segundo, Disco
de M bytes / segundo.
 Latência (tempo de resposta): Duração de
um evento
 e.g., tempo médio de acesso ao disco em
milisegundos

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)

 Ethernet 802.3 •Ethernet 802.3ae


 Year of Standard: 1978 •Year of Standard: 2003
 10 Mbits/s •10,000 Mbits/s (1000X)
link speed link speed
•Latency: 190 micro sec (15X)
 Latency: 3000 micro sec

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

 12.5 MHz • 1500 MHz (120X)

 2 MIPS (peak) • 4500 MIPS (peak) (2250X)

 Latency 320 ns • Latency 15 ns (20X)

 Tamanho do die: 47 mm2 • 217 mm2

 16-bit data bus, 68 pins • 64-bit data bus, 423 pins

 (no caches) • On-chip 8KB Data caches,


96KB Instr. Trace cache,
256 KB L2 cache

Engenharia de Computação 15
Latência vs. Largura de banda (por ~ 20 anos)

10000 • Marcos de desempenho


Processor • Processor: ‘286, ‘386, ‘486,
1000
Pentium, Pentium Pro, Pentium
Network 4
Relative Memory
Disk
• Ethernet: 10Mb, 100Mb,
BW
Improve
100 1000Mb, 10000 Mb/s
ment
• Memory Module: 16bit plain
10
DRAM, Page Mode DRAM,
32b, 64b, SDRAM, DDR
(Latency improvement SDRAM
= Bandwidth improvement)
1
• Disk : 3600, 5400, 7200,
1 10 100
Relative Latency Improvement
10000, 15000 RPM

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

a latência (diminui o tempo) e melhora também a banda


(aumento)
 3600 RPM => 15000 RPM = 4.2X

 Latência => 8.3 ms => 2.0 ms

 Permanecendo estáticos os outros fatores, a largura

é 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

 A energia é o segundo maior desafio


 Alimentação precisa ser trazida e distribuída
pelo chip
 A energia é dissipada como calor e precisa
ser removida

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

 Energia de pulso da transição 0->1 ou 1->0


 Para chips CMOS, o maior consumo de
energia é produzido pelo chaveamento
dos transistores (potência dinâmica)
 Pdinâmica = ½ x Carga capacitiva do transistor x
Voltagem2 x Frequência das transições

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

 Reduzindo assim a energia para cerca de


72% da original

Engenharia de Computação 26
Exercício 1
 Para a potência, nós avaliamos a taxa
das frequências de chaveamento:

 Reduzindo assim a potência para cerca de


61% do original

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

Custo do CI = (custo do die + custo de encapsulamento e


teste final ) / rendimento de teste final

Custo do die = custo do wafer / (dies per wafer x


rendimento do die)

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

 Aumento de velocidade de X relativo a Y


 Tempo de ExecuçãoY / Tempo de ExecuçãoX

 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

Você também pode gostar