Top Banner
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 de Instruções + Organização de Máquina CE-703 / ITA Paulo André Castro
47

O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Nov 06, 2018

Download

Documents

vuongcong
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

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 de Instruções + Organização de Máquina

CE-703 / ITAPaulo André Castro

Page 2: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Forças

CE-703 / ITAPaulo André Castro

Page 3: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Cenário Constante em Computação

� Desejo por melhor desempenho

� Desejo por sistemas menores e mais leves

� Desejo por maior capacidade de memória e armazenamento

CE-703 / ITAPaulo André Castro

� Desejo por menor consumo de energia (menor dissipação de calor) e conseqüentemente baterias menores e mais leves, fundamental em sistemas embutidos

Page 4: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Por que melhor desempenho?

� Softwares cada vez mais complexos� Sistemas gráficos com qualidade de imagem cada vez

maior� Novas aplicações

� Reconhecimento de voz,Processamento de imagem, (Localização, identificação,etc.)

CE-703 / ITAPaulo André Castro

� Processamento de imagem, (Localização, identificação,etc.)� Realidade Virtual, Servidores com enorme número de

usuários (Internet), etc.

� Aplicações clássicas � Previsão de Tempo, Simulação complexa, Solução de

Problemas Matemáticos, etc.

Page 5: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Problemas e Limites

� Há limites físicos para a tecnologia eletrônico-digital:� Custos de construção

� Velocidade da luz;

� Capacidade de integração dos circuitos;

� Distância entre componentes de um circuito;

Superaquecimento e custo de refrigeração

CE-703 / ITAPaulo André Castro

� Superaquecimento e custo de refrigeração

Page 6: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Alternativas

� Alternativas para obtenção de computadores mais poderosos:

1. Avanços na tecnologia eletrônico-digital;2. Aperfeiçoamento da arquitetura de computadores;

3. Utilização de vários processadores num único computador;

CE-703 / ITAPaulo André Castro

computador;4. Interligação de computadores entre si (redes de

computadores).

Page 7: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Situando Organização de

Máquina

CE-703 / ITAPaulo André Castro

Page 8: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Aperfeiçoamentos na

Arquitetura de Computadores

� Arquitetura de Conjunto de Instrução� Pipeline para diminuir a ociosidade da CPU no ciclo de instrução.� Emissão de várias instruções para execução, em processamento

superescalar.� Melhor organização dos circuitos aritméticos para se obter muitos

CE-703 / ITAPaulo André Castro

� Melhor organização dos circuitos aritméticos para se obter muitos resultados intermediários simultâneos.

Page 9: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Aperfeiçoamentos na

Arquitetura de Computadores

� Organização de Máquinas

� Memória cache para melhorar as interações entre memória e CPU.

� Memória entrelaçada para aumentar a largura de banda do sistema de memória

� Utilização de processadores de entrada e saída em paralelo com a CPU, em multiprogramação e time sharing.

CE-703 / ITAPaulo André Castro

Page 10: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Situando Arquitetura de

Conjunto de Instruções

CE-703 / ITAPaulo André Castro

Page 11: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Por que estudar

Arquitetura de Computadores?� Para entender melhor a estrutura e o funcionamento dos computadores

� Para entender as soluções de compromisso(tradeoffs) entre vários componentes

� Para entender melhor o impacto das tendências da tecnologia e forças de mercado sobre a evolução dos computadores

� Para aprender a utilizar técnicas de otimização de desempenho em sistemas computacionais (software ou hardware)

CE-703 / ITAPaulo André Castro

� Para aprender a utilizar técnicas de otimização de desempenho em sistemas computacionais (software ou hardware)

� Para estar apto a fazer projeto de sistemas embutidos e desenvolvimento de software embutido de modo mais eficiente, bem como melhores decisões de compra de hardware

Page 12: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Computação: Um pouco de

História...

� Pré-história� Máquinas de Calcular

� Ábacos Chineses (há mais de 2000 anos)

� Calculadoras Mecânicas (Pascal e Leibniz) ~1650

� História� O computador mecânico de Charles Babbage

CE-703 / ITAPaulo André Castro

� O computador mecânico de Charles Babbage

� A primeira programadora: Ada (~1840)

Page 13: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Mais um pouco de História

� O computador Eletrônico: Von Neumman (década de 40)� Instruções na Memória (ao contrário de cartões perfurados)

� usado até hoje!

� Primeiros Computadores (por volta de 1945...)� Z-1(alemão), Mark I (americano), ENIAC (americano, 500

CE-703 / ITAPaulo André Castro

� Z-1(alemão), Mark I (americano), ENIAC (americano, 500 multiplicações por segundo!)

Page 14: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

ENIAC (Electronic Numerical Integrator

and Calculator)

CE-703 / ITAPaulo André Castro

Page 15: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Evolução

� De 1946 para cá, a tecnologia eletrônico-digital evoluiu muito e continua a evoluir:

� Relés eletro-mecânicos, válvulas eletrônicas, transistores, circuitos impressos, circuitos integrados (MSI, LSI, VLSI, ULSI), fibra ótica, supercondutividade,

CE-703 / ITAPaulo André Castro

(MSI, LSI, VLSI, ULSI), fibra ótica, supercondutividade, raio laser, troca de silício por arsenato de gálio, etc..

� O ENIAC tinha 24 metros de extensão, algumas toneladas e capacidade de operar 500 multiplicações/segundo

� Um iPad 2 tem capacidade de 168.9MFLOPs e um iPhone 33.3 MFLOPs

Page 16: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Evolução da Unidades

Funcionais� Os primeiros micros só tinham hardware para somar e

subtrair números inteiros.

� Multiplicação e divisão de inteiros e operações com números reais eram realizadas por software.

CE-703 / ITAPaulo André Castro

� Hoje essas últimas e outras funções tais como as trigonométricas, exponenciais e logarítmicas já são implementadas por hardware.

� Além disso esse hardware vem sendo aperfeiçoado.

Page 17: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Os primeiros

Microprocessadores� O Intel 4004 foi o primeiro chip a conter todos os

elementos de uma CPU. � Fabricado em 1971, trazia ao mundo os microcomputadores.� Somava números de 4 bits e a multiplicação era obtida por

software, através de repetidas adições.� O Intel 8008 foi o primeiro microprocessador de 8

bits; introduzido no mercado em 1972; duas vezes

CE-703 / ITAPaulo André Castro

bits; introduzido no mercado em 1972; duas vezes mais complexo que o 4004.

� Ambos processadores, o 4004 e o 8008, foram projetados para aplicações especificas.

Page 18: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Os processadores x86

� Intel 8088 e 8086

� São os primeiros microprocessadores de 16 bits da Intel; lançados no mercado em 1978.

� Para aritmética de ponto-flutuante, existe o coprocessador 8087, opcional.

Diferenças Básicas

CE-703 / ITAPaulo André Castro

� Diferenças Básicas

� Barramento externo: do 8088, 8 bits; do 8086, 16 bits.

� Buffer de instruções: do 8088, 4 bytes, do 8086, 6 bytes.

Page 19: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Registradores no 8086

CE-703 / ITAPaulo André Castro

Page 20: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Modelo de

Memória do

8086

CE-703 / ITAPaulo André Castro

Page 21: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Mais Processadores x86

� Intel 80486: a partir de 1989� Uso de sofisticada tecnologia de memória cache e de pipeline de

instruções;� Coprocessador de ponto-flutuante passou a ser incorporado ao

processador principal.

� Pentium: a partir de 1992� Computador superescalar;

CE-703 / ITAPaulo André Castro

� Computador superescalar;� Cache de instruções separada de cache de dados;� Uso de tecnologia agressiva para reduzir os efeitos negativos das

instruções de desvio condicional no desempenho superescalar;

� Core 2: a partir de 2006� Computadores com múltiplos núcleos: Duo, quad, extreme

Page 22: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Registradores do Pentium e de seu ancestral o 8086

CE-703 / ITAPaulo André Castro

Page 23: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

A arquitetura x86

� O x86 não é tão complexo assim – ele só não faz muito sentido. (Mike Johnson, Líder de projeto do 80x86 na AMD, relatório de microprocessador (1994))

� Por isso, durante a maior parte do curso estaremos utilizando

CE-703 / ITAPaulo André Castro

� Por isso, durante a maior parte do curso estaremos utilizando processadores RISC como exemplos e como veremos a maior parte do sistemas embutidos utilizam processadores RISC

Page 24: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Os cinco componentes clássicos

de um Computador

CE-703 / ITAPaulo André Castro

Page 25: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Organização Simples

CE-703 / ITAPaulo André Castro

Page 26: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Exemplo de

Arquitetura de

um Computador

Atual

CE-703 / ITAPaulo André Castro

Page 27: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

O Processador em Funcionamento:

Executando Instruções

� Em linhas gerais, a execução de uma instruçãopode ser dividida nas seguintes fases:

1. Recuperação do código da operação

2. Decodificação do código da operação

3. Recuperação dos operandos

4. Execução propriamente dita

CE-703 / ITAPaulo André Castro

4. Execução propriamente dita

5. Armazenamento dos resultados

� As fases que envolvem acesso à memória podem ser dez vezes mais lentas que as demais ou até mais lentas

� Um processsador é um Software implementado em Hardware!

Page 28: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Tipos de Processadores segundo

posição dos operandos e resultado

� Processadores com Acumulador: Operações envolvem um registrador especial e [em alguns casos] a memória.

� Processadores com Registradores de Propósito Geral: Os operandos podem estar em vários registradores ou mesmo na memória.

CE-703 / ITAPaulo André Castro

memória.

� Processadores de Pilha: instruções e operandos ficam armazenados em uma estrutura de dados do tipo Pilha na memória.

Page 29: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Processadores com Acumulador

� Exemplo de Funcionamento de um Processador com Acumulador

� Comparação simples versus Processador com

CE-703 / ITAPaulo André Castro

� Comparação simples versus Processador com Registradores de Propósito Geral

Page 30: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Processador com Acumulador:

Um Caso Simples

CE-703 / ITAPaulo André Castro

Page 31: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Microprograma

da CPU com

Acumulador

CE-703 / ITAPaulo André Castro

Page 32: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Exemplo de programa

em Processador com Acumulador

� Pseudo-código:� T1=F+G

� T1=(H-I)*T1

� T2=E*F

X=A+B

CE-703 / ITAPaulo André Castro

� X=A+B

� X=((C-D)*X-T2)/T1

� Equivalente a:

� Qual o código assembly correspondente?)(*)(

)*()(*)(

GFIH

FEBADCX

+−−+−=

Page 33: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Acumulador x Registradores de

Propósitos Gerais

CE-703 / ITAPaulo André Castro

Page 34: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Pergunta...

� Considerando a seguinte divisão de fases:1. Recuperação do código da operação

2. Decodificação do código da operação

3. Recuperação dos operandos

4. Execução propriamente dita

5. Armazenamento dos resultados

CE-703 / ITAPaulo André Castro

� Há algum problema intrínseco de desempenho na arquitetura com acumulador? Qual?

Page 35: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Novos processadores

� As tarefas básicas ocorrem em todos os processadores:1. Recuperação do código da operação

2. Decodificação do código da operação

3. Recuperação dos operandos

4. Execução propriamente dita

5. Armazenamento dos resultados

Como isto é feito e/ou organizado muda (muito)

CE-703 / ITAPaulo André Castro

� Como isto é feito e/ou organizado muda (muito) principalmente por:� DESEMPENHO

Page 36: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Evolução dos desempenhos dos

processadores

CE-703 / ITAPaulo André Castro

Page 37: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Como medir desempenho?

� Como se mede o impacto de um melhoria no desempenho de um computador?

� Clock? FLOPS?� Desempenho (performance) deve ser medida através de um

conjunto de tarefas executadas por unidade de tempo ?

CE-703 / ITAPaulo André Castro

conjunto de tarefas executadas por unidade de tempo ?� Quanto maior melhor

� Desempenho deve ser medida pelo tempo gasto para realizar uma determinada tarefa ?� Quanto menor melhor

Page 38: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Medidas de Desempenho

� Throughput: Número de tarefas concluídas por unidade de tempo. Por exemplo, instruções/segundo. MFLOPs , Mbps.

� Tempo de resposta (latência): Tempo consumido para

CE-703 / ITAPaulo André Castro

� Tempo de resposta (latência): Tempo consumido para executar uma determinada tarefa ou conjunto de tarefas

Page 39: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Perguntas ?

� Aumentar o throughput sempre melhora o tempo de resposta?

� Diminuir o tempo de resposta sempre melhora o throughput?

CE-703 / ITAPaulo André Castro

Page 40: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Modelo Simples

Produtor-Consumidor

CE-703 / ITAPaulo André Castro

• Latência (Tempo de Resposta): tempo médio para a conclusão de uma tarefa.

•Para minimizar:

•A fila deveria estar vazia

•O servidor deveria estar ocioso(idle)

Page 41: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Modelo Simples

Produtor-Consumidor

CE-703 / ITAPaulo André Castro

• Throughput (“Taxa de Finalização”): Número de tarefas concluídas por unidade de tempo

•Para maximizar:

•A fila nunca deveria estar vazia

•O servidor nunca deveria estar ocioso(idle)

Page 42: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Aumentando o Throughput

CE-703 / ITAPaulo André Castro

• Em geral, throughput pode ser incrementado

•Colocando mais hardware (reduzindo latência relacionada a carga)

• Tempo de resposta é muito mais difícil de reduzir

•É preciso otimizar a arquitetura e/ou tecnologia de implementação

Page 43: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Aumento de Throughput X

Tempo de Resposta

CE-703 / ITAPaulo André Castro

Page 44: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Desempenho

� Estejamos preocupados com throughput ou latência, o mais importante é o tempo total de conclusão dos programas de interesse do usuário.� O computador mais rápido é aquele que executa suas tarefas em

menor tempo

CE-703 / ITAPaulo André Castro

� O fundamental é saber especificar quais as tarefas relevantes para aquele computador

Page 45: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Definindo Desempenho

� Considerando tempo de execução, temos:� Desempenho(x)= 1/TempoExecução(X)

� Logo, dizer que X é n vezes mais rápido que Y, significa:

CE-703 / ITAPaulo André Castro

ou,

nyDesempenho

xDesempenho =)(

)(

nXExecuçãoTempo

YExecuçãoTempo =)(_

)(_

Page 46: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Medindo o aumento de

desempenho

Aumento de desempenho ocorrido, devido a uma melhoria E.

CE-703 / ITAPaulo André Castro

Existem várias técnicas, componentes e meios de comunicação que podem ser alvo de aperfeiçoamentos. Por outro lado, existem também vários “tipos” de instruções quais devem ser melhoradas preferencialmente.

O que deve ser priorizado para possível melhoria?

Caso comum e a Lei de Amdahl

Page 47: O que é Arquitetura de Computadores - comp.ita.brpauloac/ce703/ce703_cap2_p1.pdf · sobre a evolução dos computadores Para aprender a utilizar técnicas de otimização de desempenho

Lei de Amdahl

� O ganho de desempenho possível de um dado melhoramento é limitado pela fração de tempo que a característica melhorada é usada.

� Suponha que um aperfeiçoamento ofereça um ganho de � Suponha que um aperfeiçoamento ofereça um ganho de desempenho S para uma fração do tempo F. Qual o ganho de desempenho?