Upload
internet
View
114
Download
2
Embed Size (px)
Citation preview
Avaliação de Desempenho
Marcos José SantanaRegina Helena Carlucci Santana
Universidade de São PauloInstituto de Ciências Matemáticas e de Computação
Departamento de Sistemas de Computação
Junho - 2009
Avaliação de Desempenho
O que vem a ser isso?
Quando se preocupar com o desempenho?
Por quê se preocupar com isso?
Como medir o desempenho? Que técnicas utilizar?
O que medir?
Como confiar nas métricas obtidas?
Quem deve se preocupar com a avaliação?
Avaliação de DesempenhoO que vem a ser isso?
Quando se preocupar com o desempenho?
Por quê se preocupar com isso?
Como medir o desempenho? Que técnicas utilizar?
O que medir?
Como confiar nas métricas obtidas?
Quem deve se preocupar com a avaliação?
O que vem a ser Avaliação de Desempenho?
Avaliar um sistema (computacional ou não)
buscar uma métrica que indique quantidade ou qualidade, por exemplo, de um serviço prestado;
Determinar a eficiência com a qual um sistema atinge seus objetivos
Avaliação de Desempenho
exemplo 1: uma montadora de automóveis
número de carros produzidos em 1 hora; qualidade dos carros produzidos; lucro obtido por carro fabricado; quantidade de quilômetros por litro de combustível; tempo necessário para acelerar o carro de 0 a 100 km; etc.
Avaliação de Desempenho
exemplo 2: um sistema computacional
tempo de resposta experimentado por um usuário;sobrecarga do escalonador de processos;taxa de utilização do processador;taxa de acerto da memória cache;taxa de acerto do cache do disco;sobrecarga das rotinas de redundância em disco;etc.
Avaliação de Desempenho
exemplo 3: uma impressora jato de tinta
qualidade de impressão;velocidade de impressão no modo texto;velocidade de impressão no modo gráfico;relação custo/benefício;capacidade de armazenamento local (buffer interno);velocidade de comunicação (linha serial/paralela);duração de um cartucho de tinta;etc
Avaliação de Desempenho O que vem a ser isso?
Quando se preocupar com o desempenho?
Por quê se preocupar com isso?
Como medir o desempenho? Que técnicas utilizar?
O que medir?
Como confiar nas métricas obtidas?
Quem deve se preocupar com a avaliação?
Avaliação de Desempenho
• Quando se preocupar com a avaliação de desempenho?
•Usuário reclamando
•Troca de sistema
•Comparação entre sistemas
•Avaliação de um projeto
Avaliação de Desempenho O que vem a ser isso?
Quando se preocupar com o desempenho?
• Por quê se preocupar com isso?
• Como medir o desempenho? Que técnicas utilizar?
O que medir?
Como confiar nas métricas obtidas?
Quem deve se preocupar com a avaliação?
Avaliação de Desempenho
Por quê se preocupar com isso?
Por quê saber qual a temperatura no final de Por quê saber qual a temperatura no final de semana?semana?
A avaliação da temperatura é
importante para planejar!
Por quê se preocupar com Avaliação de Desempenho?
1. Suponha que você tenha um sistema que apresenta problemas de desempenho – usuários reclamando!!
2. É disponibilizada verba para fazer um upgrade de um sistema.
Mais memóriaCPU mais rápidaAumentar memória virtualProcessadores adicionaisMais unidades de discoRAIDNova configuração
O que fazer?
Importante realizar uma avaliação do
sistema, das aplicações, etc.
Por quê se preocupar com Avaliação de Desempenho?
• Se eu tenho n clientes e quero expandir meu negócio para 2*n clientes – meu sistema vai agüentar?– Quanto devo investir no sistema para
poder expandir sem degradar o sistema?• E se a quantidade de informação no
meu banco de dados mudar?– meu sistema vai agüentar?– Quanto devo investir no sistema para
poder expandir sem degradar o sistema?
Banco de Dados
Avaliação do MySQLAlguns Resultados....
Trabalho desenvolvido por alunos do Curso de Bach em Ciências da
Computação
Por quê se preocupar com Avaliação de Desempenho?
• Suponha que os seguintes resultados foram obtidos durante medidas em um sistema operacional....
Sistema Operacional
I/O - Janeiro/2008
0
20
40
60
80
100
120
140
160
180
200
dom
ingo
segu
nda-
feira
quar
ta-fe
ira
quin
ta-fe
ira
sexta
-feira
Leituras (MB/s) Escritas (MB/s) IOPS (x1000)
Projeto desenvolvido por uma
empresa de Consultoria
Por quê se preocupar com Avaliação de Desempenho?
• Suponha que os seguintes resultados foram obtidos durante medidas em um sistema operacional....
Sistema Operacional
Memória - Janeiro/2008
0
10
20
30
40
50
60
70
80
90
100
doming
o
segu
nda-fe
ira
quar
ta-fe
ira
quinta
-feira
sexta
-feira
Pa
gin
aç
ão
(K
pa
ge
s/s
)
0
10
20
30
40
50
60
70
80
90
100
Me
mó
ria
Uti
liza
da
(%
)
% memória utilizada page in page out % swap utilizado
Projeto desenvolvido por uma
empresa de Consultoria
Por quê se preocupar com Avaliação de Desempenho?
• Suponha que os seguintes resultados foram obtidos durante medidas em um sistema operacional....
Sistema Operacional
CPU - Janeiro/2008
0
10
20
30
40
50
60
70
80
90
100
dom
ingo
segu
nda-
feira
quar
ta-fe
ira
quin
ta-fe
ira
sexta
-feira
% U
tiliz
ação
CP
U
0
5
10
15
20
25
30
Qtd
e. d
e P
roce
sso
na
Fila
de
Exe
cuçã
o
% user % sys % w ait for IO Fila de Execução
Projeto desenvolvido por uma
empresa de Consultoria
Por quê se preocupar com Avaliação de Desempenho?
• Suponha que os seguintes resultados foram obtidos durante medidas em um sistema operacional....
Sistema Operacional
CPU - Janeiro/2008
0
10
20
30
40
50
60
70
80
90
100
dom
ingo
segu
nda-
feira
quar
ta-fe
ira
quin
ta-fe
ira
sexta
-feira
% U
tiliz
ação
CP
U
0
5
10
15
20
25
30
Qtd
e. d
e P
roce
sso
na
Fila
de
Exe
cuçã
o
% user % sys % w ait for IO Fila de Execução
Memória - Janeiro/2008
0
10
20
30
40
50
60
70
80
90
100
doming
o
segu
nda-fe
ira
quar
ta-fe
ira
quinta
-feira
sexta
-feira
Pa
gin
aç
ão
(K
pa
ge
s/s
)
0
10
20
30
40
50
60
70
80
90
100
Me
mó
ria
Uti
liza
da
(%
)
% memória utilizada page in page out % swap utilizado
I/O - Janeiro/2008
0
20
40
60
80
100
120
140
160
180
200
dom
ingo
segu
nda-
feira
quar
ta-fe
ira
quin
ta-fe
ira
sexta
-feira
Leituras (MB/s) Escritas (MB/s) IOPS (x1000)
O que fazer com esses resultados?
Como analisar ?
Por quê se preocupar com Avaliação de Desempenho?
• Tenho um sistema com dois tipos de discos:– 10K RPM– 15K RPM
Banco de Dados
1. Identificar os possíveis ganhos de desempenho com a migração de todos os discos atuais de 10K RPM para 15K RPM
2. Analisar os ganhos de desempenho ao ambiente do sistema pela adição de novos discos (3TB), sendo estes de 10K RPM ou 15K RPM
Projeto desenvolvido por uma empresa de Consultoria
Por quê se preocupar com Avaliação de Desempenho?
Banco de Dados
Por quê se preocupar com Avaliação de Desempenho?
Resultado geral = Ganho de apenas 0,65%
Conclusão:A migração de discos de 10 para 15K RPM não
trará ganhos significativos (o ganho é muito pequeno para o trabalho/custo da migração)
Banco de Dados1. Identificar os possíveis ganhos de desempenho com a
migração de todos os discos atuais de 10K RPM para 15K RPM
Por quê se preocupar com Avaliação de Desempenho?
Por conta desse volume de I/O existente (KB/s) recomendamos a utilização de discos de 10K RPM para a montagem dos novos filesystems para o SISTEMA-B, visto o throughput real é 3 ordens de grandeza menor do que o disco pode suportar.
Banco de Dados2. Analisar os ganhos de desempenho ao ambiente do
sistema pela adição de novos discos (3TB), sendo estes de 10K RPM ou 15K RPM
Avaliação de Desempenho
Por quê se preocupar em avaliar um sistema?
Obter o melhor desempenho possível a um menor custo.
O que é “melhor desempenho possível”?
O que deve ser analisado?
Depende do ponto de vista
Avaliação de Desempenho
O que o sistema precisa?
Qual é o tipo de usuário?
Qual é o objetivo do sistema?
Como se dá o gerenciamento de recursos?
Avaliação de Desempenho
Precisamos saber responder....
O que o sistema precisa?
Qual é o tipo de usuário?
Qual é o objetivo do Sistema?
Como se dá o gerenciamento de recursos?
Para podermos avaliar o sistema e oferecer um melhor serviço
Exemplo• Como avaliar um aquário?
Avaliação de Desempenho O que vem a ser isso?
Quando se preocupar com o desempenho?
Por quê se preocupar com isso?
• Como medir o desempenho? Que técnicas utilizar?
O que medir?
Como confiar nas métricas obtidas?
Quem deve se preocupar com a avaliação?
Técnicas para Avaliação de Desempenho
Como medir o desempenho?
Como escolher a técnica mais adequada?
• Deve deixar a análise isenta • Não deve ser um fator degenerador• Deve considerar o domínio da aplicação • Intrusões em sistemas já estabelecidos
nem sempre são bem-vindas
Avaliação de Desempenho Técnicas e Ferramentas
cada domínio tem seu instrumental próprio
ferramentas variam de acordo com o domínio e a técnica: avaliar o desempenho de um automóvel é diferente
do caso de uma impressora, ou de um servidor de arquivos;
mas a essência da técnica pode ser a mesma: por exemplo modelagem, com solução analítica
Técnicas para Avaliação de Desempenho
Técnicas de Modelagem
Técnicas para Avaliação de Desempenho
Técnicas de Aferição
Avaliação de Desempenho O que vem a ser isso?
Quando se preocupar com o desempenho?
Por quê se preocupar com isso?
Como medir o desempenho? Que técnicas utilizar?
O que medir?
Como confiar nas métricas obtidas?
Quem deve se preocupar com a avaliação?
Avaliação de Desempenho
O que medir?
Ter informação o mais fiel possível sobre o comportamento de um sistema e com isso poder melhorar seu desempenho
Depende do que é melhorar o desempenho
Avaliação de Desempenho
Aeronave
Boeing 747
BAD/Sud Concorde
Velocidade
610 mph
1350 mph
Washington a Paris
6.5 horas
3 horas
ExemplExemploo
Avaliação de Desempenho
Passageiros
470
132
Throughput (pmph)
286,700
178,200
Aeronave
Boeing 747
BAD/Sud Concorde
Velocidade
610 mph
1350 mph
Washington a Paris
6.5 horas
3 horas
ExemplExemploo
Avaliação de Desempenho O que vem a ser isso?
Quando se preocupar com o desempenho?
Por quê se preocupar com isso?
Como medir o desempenho? Que técnicas utilizar?
O que medir?
Como confiar nas métricas obtidas?
Quem deve se preocupar com a avaliação?
Avaliação de DesempenhoComo confiar nas métricas obtidas?
Avaliação e Análise
se a avaliação do automóvel levou a 20 Km/litro de gasolina, então a análise se preocupa em se certificar que:
a metodologia utilizada foi correta; que os números levantados são suficientemente precisos; e, então, conclui se o desempenho avaliado é bom, ruim,
etc.
Avaliação de Desempenho O que vem a ser isso?
Quando se preocupar com o desempenho?
Como medir o desempenho? Que técnicas utilizar?
O que medir?
Como confiar nas métricas obtidas?
Por quê se preocupar com isso?
Quem deve se preocupar com a avaliação?
Avaliação de Desempenho
• Quem deve se preocupar com a avaliação de desempenho?
cada domínio implica em um profissional
exemplo: sistemas computacionais: analista de sistemas; gerente de sistemas; engenheiro de sistemas; projetista de hardware ou software; programador; etc.
Vocês!!!!
Avaliação de Desempenho
• Disciplinas que devem preparar vocês para essa tarefa
– Cálculos
– Estatística
– Avaliação de Desempenho de Sistemas Computacionais
– Ênfases