marcos josé santana regina helena carlucci santana universidade de são paulo instituto de...

Post on 17-Apr-2015

104 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Marcos José SantanaRegina Helena Carlucci

Santana

Universidade de São PauloInstituto de Ciências Matemáticas e de

ComputaçãoDepartamento de Sistemas de Computação

Junho - 2010

Informação Profissional em Engenharia da Comp. II

Avaliação de Desempenho

Avaliação de Desempenho

O que vem a ser isso?

Exemplos

Forma de medir até que ponto determinados objetivos foram

atingidos

Máquinas

Professores

Impressora

Artistas

Dança dos Famosos

Alunos

Avaliação de Desempenho

Como????

Alunos

Provas!!!

Visão do Aluno

Visão do Professor

Visão do Coordenador

Avaliação de Desempenho

Avaliação de Desempenho depende

Do que se espera do sistema Do objetivo De quem está realizando

AlunosO mesmo sistema pode ser avaliado de diferentes formas

Avaliação de Desempenho

Etapas

1.  Estudar o sistema e definir os objetivos

2.  Determinar os serviços oferecidos pelo sistema

O que vem a ser Avaliação de

Desempenho?Avaliar um sistema (computacional ou não)

Determinar a eficiência com a qual um sistema atinge seus objetivos

Buscar uma métrica que indique quantidade ou qualidade, por exemplo, de um serviço

prestado;

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 medir?

Quero ter informação sobre o comportamento de um sistema e com isso poder melhorar seu desempenho

Depende do que é melhorar o desempenho

Métrica depende do Objetivo

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

Exemplo Como avaliar um aquário?

Avaliação de Desempenho

Etapas

1.  Estudar o sistema e definir os objetivos

2.  Determinar os serviços oferecidos pelo sistema

3.  Selecionar métricas de 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

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ê Avaliar 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 discoNova configuração

O que fazer?

Importante realizar uma avaliação do

sistema, das aplicações, etc.

Por quê Avaliar 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ê Avaliar 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

Banco de Dados

Por quê Avaliar 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ê Avaliar Desempenho?

Por quê Avaliar 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

Métricas:

•Tempo para a cerveja atingir a temperatura desejada

•Número de cervejas que atingem a temperatura desejada por hora

Aquário

Fatores:

•Tamanho do aquário

•Quantidade de cervejas

•Quantidade de gelo

•Espessura do vidro

•Temperatura inicial da cerveja

Aquário

Avaliação de Desempenho

Etapas1.  Estudar o sistema e definir os objetivos

2.  Determinar os serviços oferecidos pelo sistema

3.  Selecionar métricas de avaliação

4.  Determinar os parâmetros que afetam o desempenho do sistema

5.  Determinar o nível de detalhamento da análise

Como medir o desempenho?

Qual técnica deve ser utilizada?

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

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 Avaliação de Desempenho

Sistema Medições Dados

Protótipos

Benchmarcks

Coleta de Dados

Aferição

Rede de Filas

Redes de Petri

Statecharts

Modelagem

Simulação

Analítica

Aferição

Técnicas de Avaliação de Desempenho

Modelo SoluçãoMétodos Analíticos

Simulação

Sistema

Protótipos

Benchmarcks

Coleta de Dados

Aferição

Rede de Filas

Redes de Petri

Statecharts

Modelagem

Simulação

Analítica

Modelagem

Avaliação de Desempenho

Etapas1.  Estudar o sistema e definir os objetivos

2.  Determinar os serviços oferecidos pelo sistema

3.  Selecionar métricas de avaliação

4.  Determinar os parâmetros que afetam o desempenho do sistema

5.  Determinar o nível de detalhamento da análise

6.  Determinar a Técnica de Avaliação apropriada

O que vocês acham de um banco em dia de pagamento?

Mais um ponto deve ser considerado....

Filas longas... Muita espera

Desempenho ruim...

Avaliação de Desempenho

E o mesmo banco alguns dias antes do pagamento?

Mais um ponto deve ser considerado....

Filas curtas... Rapidez.... Atenção...

Desempenho ótimo...

Mas o mesmo sistema pode ter desempenho ótimo/ruim?

Avaliação de Desempenho

Mais um ponto deve ser considerado....

Carga de trabalho imposta ao sistema

Avaliação de Desempenho

“Conjunto de todas as informações de entrada que um sistema recebe

durante um período de tempo determinado” [MENASCÉ, ALMEIDA,

2003]

Avaliação de Desempenho

Etapas1.  Estudar o sistema e definir os objetivos

2.  Determinar os serviços oferecidos pelo sistema

3.  Selecionar métricas de avaliação

4.  Determinar os parâmetros que afetam o desempenho do sistema

5.  Determinar o nível de detalhamento da análise

6.  Determinar a Técnica de Avaliação apropriada

7.  Determinar a carga de trabalho característica

8.  Realizar a avaliação e obter os resultados

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

ão

(K

pa

ge

s/s

)

0

10

20

30

40

50

60

70

80

90

100

Me

ria

Uti

liza

da

(%

)

% memória utilizada page in page out % swap utilizado

Projeto desenvolvido por uma

empresa de Consultoria

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ê Avaliar Desempenho?

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

ão

(K

pa

ge

s/s

)

0

10

20

30

40

50

60

70

80

90

100

Me

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 ?

Avaliação de Desempenho

Etapas1.  Estudar o sistema e definir os objetivos

2.  Determinar os serviços oferecidos pelo sistema

3.  Selecionar métricas de avaliação

4.  Determinar os parâmetros que afetam o desempenho do sistema

5.  Determinar o nível de detalhamento da análise

6.  Determinar a Técnica de Avaliação apropriada

7.  Determinar a carga de trabalho característica

 8.  Realizar a avaliação e obter os resultados

9.  Analisar e interpretar os resultados

Avaliação de Desempenho

Como 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

                                

Organizar Resultados

Pensar na melhor forma de apresentar os dados

Tabelas são ótimas para observar detalhes e valores precisos

Gráficos são adequados para melhor visualizar os resultados

Avaliação de Desempenho

Avaliação de Desempenho

Etapas1.  Estudar o sistema e definir os objetivos

2.  Determinar os serviços oferecidos pelo sistema

3.  Selecionar métricas de avaliação

4.  Determinar os parâmetros que afetam o desempenho do sistema

5.  Determinar o nível de detalhamento da análise

6.  Determinar a Técnica de Avaliação apropriada

7.  Determinar a carga de trabalho característica

 8.  Realizar a avaliação e obter os resultados

9.  Analisar e interpretar os resultados

10. Apresentar os resultados

Avaliação de Desempenho

Etapas1.  Estudar o sistema e definir os objetivos

2.  Determinar os serviços oferecidos pelo sistema

3.  Selecionar métricas de avaliação

4.  Determinar os parâmetros que afetam o desempenho do sistema

5.  Determinar o nível de detalhamento da análise

6.  Determinar a Técnica de Avaliação apropriada

7.  Determinar a carga de trabalho característica

 8.  Realizar a avaliação e obter os resultados

9.  Analisar e interpretar os resultados

10. Apresentar os resultados

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

top related