Sei sulla pagina 1di 14

Avaliação de Desempenho em Sistemas de Computação e Comunicação

Magnos Martinello

Universidade Federal do Espírito Santo - UFES Departamento de Informática - DI Laboratório de Pesquisas em Redes Multimidia - LPRM

Santo - UFES Departamento de Informática - DI Laboratório de Pesquisas em Redes Multimidia - LPRM

UFES – Agosto 2010

Objetivos do Curso

Estudar os fundamentos de avaliação de desempenho e teoria das filas

Ilustrar os fundamentos através de diversos exemplos e aplicações em sistemas computacionais

Fornecer elementos e técnicas para auxiliar na construção de modelos analíticos de sistemas.

Magnos Martinello

2

Programa

Avaliação de Desempenho

O que é ?

Para que serve ?

Como avaliar o desempenho ?

Pilares da avaliação de desempenho

Principais técnicas

Conceitos básicos de desempenho

Leis operacionais de desempenho

Lei de Little

Métricas Comuns

Teoria das Filas

Revisão de probabilidade e estatística

Noções de Processos Estocásticos

Cadeias de Markov

Filas M/M/1, M/M/1/b, M/M/m, M/M/m/b

Magnos Martinello

3

Avaliação

Duas provas (P1 + P2)

1 trabalho

Listas de exercícios

nao valem nota

provas serão baseadas nas listas

Cálculo das médias

P2 tem maior peso (cobre todo conteúdo)

M P = 0, 7 ( P1 + P2*2) / 3 + 0, 3 T

Magnos Martinello

4

Livros e Referências

Notas de Aula no website

“Introduction to Probability Models”, por S.M. Ross, Academic Press,

2006.

The Art of Computer Systems Performance Analysis: Techniques for Experimental Design, Measurement, Simulation, and Modeling, por Raj Jain, John Wiley and Sons, 1991.

“Probability & Statistics with Reliability, Queuing and Computer Science Applications”, por K.S. Trivedi. Willey, 2001

Capacity planning for web services, Prentice Hall PTR, 2001. Menascé, D. A. and V. A. F. Almeilda,

“Performance by Design: Computer Capacity Planning by Example”, por D. Menascé & V. Almeida & L. Dowdy. Prentice Hall, 2004

» Disponíveis na Biblioteca!

Magnos Martinello

5

O que é Avaliação de desempenho ?

Contrariamente ao senso comum, avaliação de desempenho é uma arte segundo Raj Jain. Como um trabalho de arte não pode ser produzido mecanicamente.

Cada avaliação necessita um conhecimento íntimo do sistema além de uma seleção cuidadosa da metodologia, carga de trabalho (workload) e ferramentas.

Consenso: Avaliação de desempenho é chave para aumentar o grau de confiança no projeto de um novo sistema, ou de um sistema já existente

Magnos Martinello

6

Para que estudar avaliação de desempenho ?

Objetivo chave comum para analistas, engenheiros, cientistas e usuários de um sistema de computação é obter o melhor desempenho à um dado custo.

Para alcançar este objetivo, é preciso ter pelo menos um conhecimento básico de avaliação de desempenho e suas técnicas

Magnos Martinello

7

Para que serve avaliação de desempenho ?

Serve para :

avaliar alternativas de projetos;

comparar sistemas,

determinar o ótimo valor de um parâmetro (ajuste),

identificar o gargalo,

caracterizar a carga em um sistema,

determinar o número e os tamanhos de componentes de um sistema (planejamento de capacidade)

prever o desempenho com futuras cargas (previsão).

Magnos Martinello

8

Como Avaliar o Desempenho ?

Como Avaliar o Desempenho ? Magnos Martinello 9

Magnos Martinello

9

Principais Técnicas

Medição : é o processo de quantificação de métricas efetuado sobre um sistema já existente.

Modelagem Analítica: é um conjunto de equações que capturam a essência do desempenho de um sistema apoiando-se em diversas teorias : leis operacionais, probabilidade e estatística, teoria das filas, teoria dos jogos, otimização, modelos matemáticos de forma geral.

Simulação : consiste em desenvolver um programa representando os componentes de um sistema. Apóia-se em uma linguagem

suportada por um simulador.

Magnos Martinello

10

Selecionando uma técnica de avaliação

Critério

Modelagem

Simulação

Medições

Analítica

Estágio

Qualquer

Qualquer

Pós-protótipo

Tempo

Varia

Varia

Varia

necessário

Ferramentas

Analistas

Linguagens Pacotes de

Instrumentação

Exatidão

Varia

simulação Varia

Varia

Accuracy Trade-off(s) na avaliação

Fácil

Moderado

Difícil

Custo

Varia

Varia

Varia

Convencimento

Baixo

Médio

Alto

Magnos Martinello

11

Selecionando métricas de desempenho

Para cada estudo de desempenho, um conjunto de métricas deve ser escolhido

Uma forma de preparar este conjunto é listar os serviços providos pelo sistema

Para cada requisição de serviço, há vários resultados possíveis

Magnos Martinello

12

Selecionando métricas de desempenho

Selecionando métricas de desempenho Magnos Martinello 13

Magnos Martinello

13

Métricas comumente usadas

Disponibilidade: fração do tempo que o sistema está operacional aos usuários

Confiabilidade : é a probabilidade que o sistema esteja funcionando corretamente sobre um período de tempo fixo t

Tempo de resposta: é o intervalo de tempo entre a requisição de um usuário e a resposta do sistema

Throughput (vazão) : é a taxa ( pacotes|requisições por unidade de tempo) que pode ser servida por um sistema.

RTT : atraso de ida e volta entre cliente e servidor, inclui atraso de propagação, atraso de transmissão, atraso de processamento e atraso de fila

Magnos Martinello

14