Avaliação de Desempenho

Slides:



Advertisements
Apresentações semelhantes
Avaliação de Desempenho Planejamento de Experimentos
Advertisements

Limites de Desempenho Grupo 8.
Simulação de Sistemas Antonio J. Netto AULA1.
ESTUDO E ANÁLISE DO TRABALHO
Amintas engenharia.
Sistemas distribuídos Metas de Projeto Prof. Diovani Milhorim
Sistemas Distribuídos
Sistemas Operacionais
Avaliação de Desempenho
Diretrizes para Desenvolvimento do Projeto
Sistemas Operacionais Planejamento de Experimento
SSC SISTEMAS OPERACIONAIS I Aulas 6 – Escalonamento de Processos
Avaliação de Sistemas Operacionais
Avaliação de Desempenho de Sistemas Computacionais
Avaliação de Desempenho
Marcos José Santana Regina Helena Carlucci Santana
Avaliação de Desempenho
Avaliação de Desempenho Planejamento de Experimentos 2 Aula 2 Marcos José Santana Regina Helena Carlucci Santana Universidade de São Paulo Instituto de.
Avaliação de Desempenho Planejamento de Experimentos 3
Avaliação de Desempenho de Sistemas Operacionais
Avaliação de Desempenho
Avaliação de Desempenho Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação Marcos José
Avaliação de Desempenho
Avaliação de Desempenho Planejamento de Experimentos 1
Avaliação de Desempenho de Sistemas Computacionais
Avaliação de Desempenho
Avaliação de Desempenho Introdução Aula 1 Marcos José Santana Regina Helena Carlucci Santana Universidade de São Paulo Instituto de Ciências Matemáticas.
Avaliação de Desempenho Introdução Aula 1 Marcos José Santana Regina Helena Carlucci Santana Universidade de São Paulo Instituto de Ciências Matemáticas.
Avaliação de Desempenho Introdução Aula 1 Marcos José Santana Regina Helena Carlucci Santana Universidade de São Paulo Instituto de Ciências Matemáticas.
Avaliação de Desempenho Planejamento de Experimentos 1 Aula 1 Marcos José Santana Regina Helena Carlucci Santana Universidade de São Paulo Instituto de.
Questões Resolvidas - A.C.-10/08/05
Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA2.
CONCEITOS INICIAIS DE CONFIABILIDADE
TIPOS DE TESTES APLICÁVEIS E NÃO APLICÁVEIS AO PROJETO
Gerência de Redes Áreas Funcionais de Gerenciamento
TSDD Teste de segurança durante o desenvolvimento.
Performance em aplicações web – Parte I
REDUNDÂNCIA POR SOFTWARE
Avaliação de Desempenho
Sistemas Distribuídos
Carlos Oberdan Rolim Ciência da Computação
ÍNDICES DE CARGA E DE DESEMPENHO SSC-642 SISTEMAS COMPUTACIONAIS DISTRIBUÍDOS.
Avaliação de Desempenho Planejamento de Experimentos 3
Sistemas Distribuídos
Gerenciamento de Redes Utilizando Agentes Móveis
Introdução à Simulação
GESTÃO DE PROCESSOS Aula 8 – Modelagem dos Processos / Indicadores de Desempenho de Processos Prof. Cláudio Zeferino.
Avaliação de Desempenho Simulação
Confiabilidade - Árvore de Falhas
Experimentação Algorítmica
Análise e Projeto de Sistemas UNIVERSIDADE DE CRUZ ALTA Ciência da Computação 2010/1.
Processos.
O que é? É o processo de investigação técnica com intuito de identificar a qualidade, a segurança e a exatidão do software desenvolvido. A validação do.
Sistemas de Informação
Avaliação de Desempenho UFABC Pós-graduação em Engenharia da Informação Professor: Carlos Alberto Kamienski ( ) Santo André, Fevereiro.
Definição um sistema de BD distribuído consistem em uma rede de várias ocorrências de bases de dados interligadas. característica principal para o usuário,
Gestão de Projetos de Software
Avaliação de Desempenho de Sistemas Computacionais
MSCC - Introdução Baseado no capítulo 1 do livro Performance Evalution of Computer and Communication Systems, de Jean-Yves Le Boudec (EPFL)
Tolerância a Falhas Carlos Oberdan Rolim Ciência da Computação.
Processo e Qualidade.
Abordagem Sistemática Guilherme Amaral Avelino Avaliação e Controle de Sistemas de Informação.
Engenharia de Software
Professora Michelle Luz
Arquitetura de computadores
Prof. Sidney Galeote. 2 www. prasabermais. com  Visão Geral sobre a dimensão de qualidade “performance”  Custo da qualidade  Como a performance deve.
Análise e Projeto de Sistemas Análise e Projeto de Sistemas Aula 2 Professor: Italo Rodrigues Castro.
SERVIDORES E SERVIÇOS Leandro Escobar 2009 SERVIDORES E SERVIÇOS.
TÉCNICAS DE ESTIMATIVAS
Bruna Cavallero Martins Universidade Católica de Pelotas.
Transcrição da apresentação:

Avaliação de Desempenho Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação Avaliação de Desempenho Introdução Aula 1 Marcos José Santana Regina Helena Carlucci Santana

Conteúdo Planejamento de Experimentos Técnicas para Avaliação de Desempenho Análise de Resultados

Conteúdo Planejamento de Experimentos Motivação Introdução à Avaliação de Desempenho Etapas de um Experimento Planejamento do Experimento Conceitos Básicos Carga de trabalho Modelos para Planejamento de Experimento Técnicas para Avaliação de Desempenho Análise de Resultados

Conteúdo Planejamento de Experimentos Técnicas para Avaliação de Desempenho Técnicas de Aferição: Protótipos, Benchmarks e Monitores Técnicas de Modelagem: Solução Analítica e por Simulação Análise de Resultados

Conteúdo Planejamento de Experimentos Técnicas para Avaliação de Desempenho Análise de Resultados Análise Estatística dos Resultados Comparação de Resultados Aplicações em Sistemas Operacionais

Conteúdo Planejamento de Experimentos Motivação Introdução à Avaliação de Desempenho Etapas de um Experimento Planejamento do Experimento Conceitos Básicos Carga de trabalho Modelos para Planejamento de Experimento Técnicas para Avaliação de Desempenho Análise de Resultados

Avaliação de Desempenho Por quê se preocupar com isso? Por quê saber qual a temperatura no final de semana? A avaliação da temperatura é importante para planejar!

Motivação 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

Motivação O que o sistema precisa? Qual é o tipo de usuário? Qual é o objetivo do sistema? Como se dá o gerenciamento de recursos?

Exemplo 1: Tornar um sistema mais rápido Motivação Exemplo 1: Tornar um sistema mais rápido Identificar os pontos de atraso e verificar o impacto desse atraso 2. Propor soluções 3. Avaliar soluções

Avaliação de Desempenho de Sistemas Computacionais Motivação Como Agilizar? Identificar os pontos de atraso e verificar o impacto desse atraso: Verificar a freqüência com que o procedimento ocorre Eventos raros e lentos: Pouco impacto Muita otimização para ser perceptível Exemplo: procedimento ao ligar o computador, falha ao entrar em uma região crítica Eventos freqüentes: Muito impacto Pequena otimização pode ser perceptível Exemplo: processo escalonador 2. Propor soluções 3. Avaliar soluções Avaliação de Desempenho de Sistemas Computacionais

Avaliação de Desempenho de Sistemas Computacionais Motivação Exemplo2: Tornar um sistema mais seguro Identificar os pontos vulneráveis e verificar o impacto desses pontos 2. Propor soluções 3. Avaliar soluções Avaliação de Desempenho de Sistemas Computacionais

Conteúdo Planejamento de Experimentos Motivação Introdução à Avaliação de Desempenho Etapas de um Experimento Planejamento do Experimento Conceitos Básicos Carga de trabalho Modelos para Planejamento de Experimento Técnicas para Avaliação de Desempenho Análise de Resultados

Avaliação de Desempenho O que vem a ser isso? Quando se preocupar com o desempenho? Quem deve se preocupar com a avaliação? Como medir o desempenho? Que técnicas utilizar? O que medir? Como confiar nas métricas obtidas?

Avaliação de Desempenho O que vem a ser isso? Quando se preocupar com o desempenho? Quem deve se preocupar com a avaliação? Como medir o desempenho? Que técnicas utilizar? O que medir? Como confiar nas métricas obtidas?

Avaliação de Desempenho O que vem a ser isso? Análise detalhada: Dos recursos do sistema Dos gerenciadores Dos Usuários Dos objetivos do sistema e da avaliação Caso contrário pode-se trocar um conjunto de problemas por outro

Exemplo Como avaliar um aquário?

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 Avaliar um sistema (computacional ou não) Determinar a eficiência com a qual um sistema atinge as necessidades e expectativas de seus usuários e de seus desenvolvedores, para uma dada aplicação

Avaliação de Desempenho O que vem a ser isso? Quando se preocupar com o desempenho? Quem deve se preocupar com a avaliação? Como medir o desempenho? Que técnicas utilizar? O que medir? Como confiar nas métricas obtidas?

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? Quem deve se preocupar com a avaliação? Como medir o desempenho? Que técnicas utilizar? O que medir? Como confiar nas métricas obtidas?

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.

Avaliação de Desempenho O que vem a ser isso? Quando se preocupar com o desempenho? Quem deve se preocupar com a avaliação? Como medir o desempenho? Que técnicas utilizar? O que medir? Como confiar nas métricas obtidas?

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

Técnicas para Avaliação de Desempenho Técnicas de Aferição: Realizam experimentação no sistema Construção de Protótipos; Coleta de Dados; Benchmarks. Técnicas de Modelagem: Criam abstrações desse sistema Desenvolvimento de um Modelo Solução do Modelo

Avaliação de Desempenho Por quê se preocupar com isso? O que vem a ser isso? Quando se preocupar com o desempenho? Quem deve se preocupar com a avaliação? Como medir o desempenho? Que técnicas utilizar? O que medir? Como confiar nas métricas obtidas?

Planejamento de Experimentos Variável de Resposta O que medir? Quero ter a informação mais fiel possível sobre o comportamento de um sistema Diversos enfoques: Responsividade – tempo que leva para executar um serviço Produtividade – taxa de execução de um serviço por unidade de tempo Utilização – recurso utilizado para a execução do serviço

Planejamento de Experimentos Variável de Resposta O que medir? Velocidade Confiabilidade Disponibilidade Métricas individuais Métricas globais

Planejamento de Experimentos Variável de Resposta O que medir? Média Variabilidade Distribuição Máximo e mínimo Desvio Padrão Intervalo de confiança

Medidas de Desempenho Tempo de resposta intervalo entre o pedido do usuário e a resposta do sistema pedido e resposta instantâneos pedido e resposta realistas

Medidas de Desempenho tempo de resposta com pedido e resposta realistas geralmente o tempo de resposta cai na medida que a carga de trabalho diminui

Medidas de Desempenho Tempo de Resposta Visão do usuário Medida individual ou global Velocidade de execução de uma tarefa em determinadas condições Influencia da carga de trabalho do sistema Engloba diversas fases: tempo de espera por um trabalho comprimento de uma fila por um recurso tempo de processamento Valores médios/máximos/mínimos/distribuições

Medidas de Desempenho Troughput Taxa de pedidos que podem ser servidos pelo sistema (pedidos por unidade de tempo) Capacidade nominal Troughput geralmente aumenta até certo ponto, depois começa a cair Eficiência Medidas orientadas ao sistema

Avalia quão bem os vários elementos do sistema estão sendo utilizados Medidas de Desempenho Utilização Fração de tempo em que o recurso está ocupado Relação entre o serviço útil executado e a carga máxima suportada pelo sistema (processador por exemplo) Avalia quão bem os vários elementos do sistema estão sendo utilizados Medidas orientadas ao sistema

Medidas de Desempenho Disponibilidade fração de tempo em que o sistema está disponível pode ser utilizada como uma medida de desempenho, apesar de medir aspectos de confiabilidade; algumas medidas úteis: tempo de vida; intervalo de disponibilidade; MTTF (mean time to failure); MTTR (mean time to repair); MTBF (mean time between failures).

Produtividade do Sistema Medidas de Desempenho Produtividade do Sistema Indica como o usuário pode submeter o seu trabalho; Indica o grau de facilidade oferecido pelo sistema; Aspectos de manutenção do sistema; Existe certa dificuldade para quantificar esse item.

Medidas de Desempenho Custo/Desempenho Confiabilidade melhor relação tempo provável em que o sistema fica livre de erros

Medidas de Desempenho MIPS MFLOPS Milhões de Instruções por Segundo Milhões de Instruções de Ponto Flutuante por Segundo Fabricantes apresentam números de pico de MIPS e MFLOPS superiores aos reais, valores obtidos em situações ideais Comparação entre máquinas com conjunto de instruções diferentes – CISC X RISC

Medidas de Desempenho MIPS e MFLOPS são relevantes quando aplicados em computadores de mesma arquitetura para análise comparativa Apresentam características similares de hardware e software Números de MIPS e MFLOPS mais coerentes

Avaliação de Desempenho Qual ou quais das medidas acima devem ser consideradas? Depende da aplicação (do tipo do sistema): Uso Geral  tempo de resposta e utilização  desempenho; disponibilidade  confiabilidade. Alta Disponibilidade (bancos, res. aéreas, etc.)  tempo de resposta, disponibilidade e produtividade  desempenho.

Avaliação de Desempenho Qual ou quais das medidas acima devem ser consideradas? Tolerantes a Falhas  Disponibilidade e recuperação  desempenho Tempo Real  tempo de resposta e carga de trabalho  desempenho. Orientados a Missão  disponibilidade  desempenho.

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. 43

Avaliação de Desempenho exemplo 2: um sistema computacional centralizado  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. 44

Avaliação de Desempenho exemplo 3: um sistema computacional distribuído  todas as considerações do caso centralizado; tempo de resposta para operações remotas; impacto do uso de cache local (nas estações); impacto do algoritmo de escalonamento no servidor; influência do disco no servidor de arquivos; balanceamento de carga no sistema; sobrecarga devido à redundância de informação; sobrecarga devido aos mecanismos de tolerância a falhas; etc. 45

Avaliação de Desempenho Qual ou quais medidas devem ser consideradas? Depende da aplicação, do tipo do sistema, do objetivo, etc. Exemplo 1: sistemas computacional de uso geral tempo de resposta disponibilidade Exemplo 2: Sistema Computacional de um Banco segurança

Avaliação de Desempenho Qual ou quais medidas devem ser consideradas? Cuidado

Avaliação de Desempenho Aeronave Boeing 747 BAD/Sud Concorde Velocidade 610 mph 1350 mph Washington a Paris 6.5 horas 3 horas Fastest for 1 person? Which takes less time to transport 470 passengers?

Avaliação de Desempenho Aeronave Boeing 747 BAD/Sud Concorde Velocidade 610 mph 1350 mph Washington a Paris 6.5 horas 3 horas Passageiros 470 132 Throughput (pmph) 286,700 178,200 Fastest for 1 person? Which takes less time to transport 470 passengers? Tempo para executar a tarefa tempo de resposta, latência Tarefas por dia, por hora, etc. Throughput, bandwidth

Avaliação de Desempenho O que vem a ser isso? Quando se preocupar com o desempenho? Quem deve se preocupar com a avaliação? Como medir o desempenho? Que técnicas utilizar? O que medir? Como confiar nas métricas obtidas?

Avaliação de Desempenho Como confiar nas métricas obtidas? Avaliação versus Análise  Qual a diferença? Avaliar  obter, produzir, levantar dados a respeito de uma entidade; exemplo: determinar o consumo de um automóvel  usar alguma técnica para medir a distância percorrida e o volume de combustível consumido;

Avaliação de Desempenho Avaliação versus Análise  Qual a diferença? Analisar  verificar a precisão, a validade, o significado da grandeza produzida durante a avaliação. exemplo: 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.

Pontos Importantes para a Avaliação de Desempenho  Entendimento completo do sistema, dos problemas e dos objetivos da avaliação Abordagem sistemática Não devem ser considerados parâmetros, cargas, métricas, etc. arbitrários. Definição de uma carga de trabalho característica Definição da metodologia mais apropriada Definição do nível de detalhamento Análise dos resultados Considerar os limites, suposições e margem de erro

Avaliação de Desempenho Planejamento de Experimentos Motivação Introdução à Avaliação de Desempenho Etapas de um Experimento Planejamento do Experimento Conceitos Básicos Carga de trabalho Modelos para Planejamento de Experimento Análise de Resultados Técnicas para Avaliação de Desempenho

Etapas a serem consideradas 1.  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 Planejamento de Experimento Técnica de Avaliação Análise dos Resultados

Avaliação de Desempenho Planejamento de Experimentos Motivação Introdução à Avaliação de Desempenho Etapas de um Experimento Planejamento do Experimento Conceitos Básicos Carga de trabalho Modelos para Planejamento de Experimento Análise de Resultados Técnicas para Avaliação de Desempenho