A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Avaliação de Desempenho de Sistemas Computacionais Protótipos e Monitores Marcos José Santana Regina Helena Carlucci Santana Universidade de São Paulo.

Apresentações semelhantes


Apresentação em tema: "Avaliação de Desempenho de Sistemas Computacionais Protótipos e Monitores Marcos José Santana Regina Helena Carlucci Santana Universidade de São Paulo."— Transcrição da apresentação:

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

2 Etapas a serem consideradas na Avaliação de Desempenho 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

3 Etapas a serem consideradas na Avaliação de Desempenho 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 As etapas apresentadas nem sempre são executadas linearmente como apresentado nesta lista

4 Conteúdo 1.Planejamento de Experimentos 2.Análise de Resultados 3.Técnicas para Avaliação de Desempenho

5 Conteúdo 1.Planejamento de Experimentos 2.Técnicas para Avaliação de Desempenho –Apresentação das técnicas –Técnicas de Aferição: Protótipos, Benchmarks e Monitores –Técnicas de Modelagem: Solução Analítica e por Simulação –Exemplos 3.Análise de Resultados

6 Conteúdo – Parte II 1.Planejamento de Experimentos 2.Técnicas para Avaliação de Desempenho –Apresentação das técnicas –Técnicas de Aferição: Protótipos, Benchmarks e Monitores –Técnicas de Modelagem: Solução Analítica e por Simulação –Exemplos 3.Análise de Resultados

7 Técnicas de Avaliação de Desempenho SistemaMedições Dados Protótipos Benchmarcks Coleta de Dados Aferição Rede de Filas Redes de Petri Statecharts Modelagem Simulação Analítica Aferição

8 Técnicas de Avaliação de Desempenho Modelo Solução Mé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

9 Técnicas de Avaliação de Desempenho Aferição Medidas no próprio sistema Sistema deve existir e estar disponível Experimentação restrita Muito cuidado com aquisição dos dados

10 Técnicas de Avaliação de Desempenho Modelagem Desenvolvimento de um modelo Não é necessário ter o sistema disponível Grande flexibilidade Resultados estocásticos Necessita validar modelo e solução

11 Conteúdo 1.Planejamento de Experimentos 2.Técnicas para Avaliação de Desempenho –Apresentação das técnicas –Técnicas de Aferição: Protótipos, Benchmarks e MonitoresProtótipos, Benchmarks e Monitores –Técnicas de Modelagem: Solução Analítica e por Simulação –Exemplos 3.Análise de Resultados

12 Técnicas de Aferição Construção de Protótipos –Sistema em Projeto Benchmarks –Comparação entre Sistemas –Avaliar partes específicas de um Sistema Monitores ou Coleta de Dados –Avaliar um Sistema ou partes dele

13 Técnicas de Aferição Construção de Protótipos Versão simplificada de um sistema computacional que contém apenas características relevantes para a análise do sistema

14 Técnicas de Aferição Construção de Protótipos uma implementação simplificada do sistema real; abstração das características essenciais; sistemas em fase de projeto; produz resultados com boa precisão; recomendado para verificação do projeto final; problema: custo e alterações.

15 Considerações envolvidas: identificar os objetivos do projeto; abstrair as características essenciais; definir a estratégia de coleta de dados no protótipo; desenvolver o protótipo; avaliar o seu desempenho; Além disso, devem ser considerados: viabilidade da prototipação do sistema; melhorias no protótipo, em função da avaliação e análise. Construção de Protótipos

16 1)Analisar se o sistema é um bom candidato a prototipação 2)Delimitar e conhecer perfeitamente os domínios funcionais e comportamentais do sistema 3)Desenvolver o protótipo 4)Testar o protótipo 5)Coletar dados do protótipo Após o passo 4, o protótipo já provê uma idéia do sistema real. Os passos 3, 4 e 5 são repetidos iterativamente até que se tenha toda a funcionalidade do sistema representada no protótipo

17 Construção de Protótipos 1)Analisar se o sistema é um bom candidato a prototipação Viabilidade da prototipação do sistema; Custo Dificuldades em alterar o protótipo Exemplos: i.Sistema de RAID para um servidor Sistema que pode ser construído em um laboratório Custo – proporcional ao sistema Possível realizar alterações ii.Sistema computacional a ser utilizado por uma empresa responsável pelas reservas de uma companhia aérea iii.Sistema computacional para controlar uma usina nuclear

18 Construção de Protótipos 1)Analisar se o sistema é um bom candidato a prototipação Viabilidade da prototipação do sistema; Custo Dificuldades em alterar o protótipo Exemplos: i.Sistema de RAID para um servidor ii.Sistema computacional a ser utilizado por uma empresa responsável pelas reservas de uma companhia aérea Sistema distribuído. Pode ser construído em um laboratório mas depende de várias máquinas Custo – elevado Possível realizar alterações iii.Sistema computacional para controlar uma usina nuclear

19 Construção de Protótipos 1)Analisar se o sistema é um bom candidato a prototipação Viabilidade da prototipação do sistema; Custo Dificuldades em alterar o protótipo Exemplos: i.Sistema de RAID para um servidor ii.Sistema computacional a ser utilizado por uma empresa responsável pelas reservas de uma companhia aérea iii.Sistema computacional para controlar uma usina nuclear Sistema distribuído. Necessidade de ativação/leitura de vários sensores Difícil de ser implementado e testado em um laboratório Custo – elevado Realização de alterações - difícil

20 Construção de Protótipos 2)Delimitar e conhecer perfeitamente os domínios funcionais e comportamentais do sistema Definir o objetivo da avaliação baseando-se nos objetivos do projeto Abstrair as características essenciais Verificar a possibilidade de obter os dados necessários para a avaliação do protótipo Exemplos: Protótipo de um carro em desenvolvimento por uma montadora. A montadora quer avaliar consumo e desempenho. O que é importante estar presente? Som? Banco de couro? Portas?

21 Construção de Protótipos 2)Delimitar e conhecer perfeitamente os domínios funcionais e comportamentais do sistema Exemplos: i.Sistema de RAID para um servidor Verificar a confiabilidade do sistema em questão Verificar o comportamento quando ocorre uma falha Dados podem ser coletados com testes no protótipo ii.Sistema computacional a ser utilizado por uma empresa responsável pelas reservas de uma companhia aérea iii.Sistema computacional para controlar uma usina nuclear

22 Construção de Protótipos 2)Delimitar e conhecer perfeitamente os domínios funcionais e comportamentais do sistema Exemplos: i.Sistema de RAID para um servidor ii.Sistema computacional a ser utilizado por uma empresa responsável pelas reservas de uma companhia aérea Verificar se sistema mantém a consistência dos dados Dados podem ser coletados com testes no protótipo iii.Sistema computacional para controlar uma usina nuclear

23 Construção de Protótipos 2)Delimitar e conhecer perfeitamente os domínios funcionais e comportamentais do sistema Exemplos: i.Sistema de RAID para um servidor ii.Sistema computacional a ser utilizado por uma empresa responsável pelas reservas de uma companhia aérea iii.Sistema computacional para controlar uma usina nuclear Verificar a confiabilidade do sistema em questão Verificar o comportamento quando ocorre uma falha Dados difíceis de serem coletados Situações complicadas de serem realizadas

24 Construção de Protótipos 3)Desenvolver o protótipo Qual técnica utilizar no desenvolvimento do protótipo i.Software Rotinas Básicas Interface simplificada Comunicação entre os módulos Documentação Básica ii.Hardware Implementação Manual (protoboard, wire-wrap, placas, etc.) FPGA PLA – Programable Logic Array

25 Construção de Protótipos 4)Testar e Validar o protótipo Garantir que as simplificações feitas não afetaram a precisão do protótipo Exemplo II – Companhia Será que um protótipo com todas as máquinas juntas em um laboratório é similar à máquinas distribuídas pelo mundo? Realizar testes envolvendo: i.Teste de condições extremas ii.Validação aparente – análise dos resultados por especialistas iii.Valores fixos iv.Consistência entre diferentes execuções 5)Coletar e Analisar os dados do protótipo Definir a estratégia de coleta de dados no protótipo Definir os dados a serem coletados

26 Construção de Protótipos Concluindo..... Ótima opção para verificação de projetos Bom para alguns tipos de sistemas Custo pode ser um problema Flexibilidade não é ponto forte!

27 Técnicas de Aferição Coleta de Dados Ferramenta para observar as atividades de um sistema coletando as características relevantes para a análise do sistema Ferramenta = Monitor

28 Monitores Avaliar o Desempenho e Identificar Pontos Críticos Objetivos: Determinar partes mais utilizadas Determinar gargalos Ajustar Parâmetros Caracterizar Carga de Trabalho Determinar Parâmetros para modelos

29 Monitores oferece os melhores resultados; problema central interfere com o sistema e o sistema TEM de existir! Dois tipos básicos de abordagens: Monitores de Software e de Hardware.

30 Componentes de um Monitor Observador Coletor Analisador Apresentação Interpretação Console Gerenciamento

31 Componentes de um Monitor 1.Observador Obtém Dados do Sistema Espião – observa as atividades do sistema Ex. Escuta em uma rede Instrumentação - incorpora pontos de prova, traces ou contadores Sobrecarga no sistema Ex. Determinar tempo para enviar mensagem Teste – inclui usuário para monitorar sistema Ex. Envia mensagens para monitorar filas Sistema pode ter um ou mais observadores

32 Componentes de um Monitor 2.Coletor Centraliza e Filtra os Dados Coletados Armazena dados obtidos e histórico dos dados Sistema pode ter um ou mais coletores: problemas de sincronismo e comunicação de dados 3.Analisador Analisa os Dados Coletados Considera análise estatística

33 Componentes de um Monitor 4.Apresentação dos Dados Produz Gráficos, Relatórios, Alarmes, etc. Oferece Interface Homem-Máquina 5.Interpretação Analisa o significado dos Dados Análise Inteligente

34 Componentes de um Monitor 6.Console Controla parâmetros e estados do monitor ou do Sistema Nem sempre faz parte do Monitor 7.Gerenciamento Toma decisão sobre o que deve ser alterado no sistema ou no monitor

35 Monitores Monitores podem ser classificados seguindo diferentes enfoques: 1.Forma de Ativação Mecanismo de Disparo 2.Forma de Obtenção dos dados Mecanismo de Coleta dos Dados Mecanismo Visualização dos Dados Definição da Carga de Trabalho 3.Forma de Implementação Hardware, Software, Firmware e Híbrido

36 Monitores Forma de Ativação - Mecanismo de Disparo Define quando o monitor será ativado para coletar e gravar as informações 1.Baseado em Evento Mudança de Estado no Sistema Ativa o Monitor Exemplos: Chaveamento de Processos, Acesso a disco, Acesso a rede 2.Baseado em Amostragem O Monitor é Ativado em Intervalos de Tempo Fixos Exemplo: a cada 1 seg o monitor verifica se a rede está ocupada

37 Monitores Mecanismo de Disparo 1.Baseado em Evento Assíncrono Adequado para eventos raros – causa menor sobrecarga 2.Baseado em Amostragem Síncrono Adequado para eventos freqüentes Pode perder eventos Período de amostragem deve ser adequadamente definido Longo – perda de eventos Curto – aumento de sobrecarga

38 Monitores Forma de Obtenção dos Dados - Mecanismo de Coleta dos Dados Define como os dados serão coletados 1.Coleta Direta Métrica é retirada Diretamente do Sistema Exemplos: Tempo de Resposta de um Disco 2.Coleta Indireta Métrica é Obtida através de Relações de dependência com outras métricas retiradas do sistema Exemplo: Cálculo da Utilização de um Processador

39 Monitores Forma de Obtenção dos Dados - Mecanismo Visualização dos Dados 1.On-line Analisados e apresentados ao avaliador ao mesmo tempo em que são coletados Exemplos: Avaliação do tráfego de uma rede 2.Batch Dados são coletados, armazenados e depois de terminada a coleta são analisados Exemplo: Tempo médio de resposta ou utilização de um processador

40 Monitores Mecanismo Visualização dos Dados 1.On-line Número pequeno de eventos Avaliação Comportamental do Sistema 2.Batch Grande número de eventos Avaliação de Desempenho, Confiabilidade ou da Segurança de um Sistema

41 Monitores Forma de Obtenção dos Dados - Definição da Carga de Trabalho 1.Passiva Coleta realizada com a operação normal do Sistema 2.Ativa Coleta realizada com cargas controladas Carga é gerada e injetada no sistema

42 Monitores Definição da Carga de Trabalho 1.Passiva Resultados não podem ser reproduzidos 2.Ativa Carga Controlada Mais limitada que a Passiva Resultados não pode ser totalmente reproduzidos Testes podem ser repetidos de forma similar Carga Sintética Não real Resultados podem facilmente ser reproduzidos

43 Monitores Forma de Implementação Define o nível em que o monitor será implementado 1.Hardware 2.Software 3.Firmware 4.Híbrido

44 Monitores Forma de Implementação Hardware –monitor de hardware que é conectado com o sistema (observador silencioso) –não interfere no funcionamento normal do sistema medido –captura eventos rápidos –apresenta dificuldades em fazer medidas em nível de software –técnica cara

45 Monitores Forma de Implementação Software Vantagens: generalidade flexibilidade para medidas em nível de programas Desvantagens: ele pode interferir com o normal funcionamento do sistema não captura eventos que ocorrem rapidamente

46 Monitores Forma de Implementação - Exemplos Software R otina inserida nos protocolos de comunicação para medir o tempo gasto em uma transação em arquivos Hardware Hardware adicionado ao sistema para espionar e contabilizar o tempo gasto em uma transação em arquivos

47 Monitores Forma de Implementação Firmware Implementado através da alteração de micro-código do processador Implementação em hardware, de rotinas de software através de MEF (Máquinas de Estado Finito) Similar ao monitor de Software

48 Monitores Forma de Implementação Híbrido Vantagens: esboça as vantagens de ambas técnicas de monitoramento ( hardware e software) flexível seu domínio de aplicação sobrepõe as outras técnicas Desvantagens: sincronização pode causar interferência difícil obtenção de programas ou medidas em nível de S.O. caro

49 Comparação entre monitores de Software e Hardware CritérioHardwareSoftware DomínioEventos de HardwareEventos de SO e Software Taxa de EntradaAlta (10 5 / Seg)Depende do proc. ResoluçãoNanosegundosMilisegundos Conhecimento Necessário HardwarreSoftware Capacidade de Armazenamento Limitada pelo armazenamento disp. Limitada pela sobrecarga Largura de Entrada Obtém vários dados simultâneos Único processador – um evento

50 Comparação entre monitores de Software e Hardware CritérioHardwareSoftware SobrecargaNenhumaVariável - <5% PortabilidadeGrandePequena ErrosMais fácil de ocorrer Raro CustoAltoBaixo DisponibilidadeGrande– mesmo com crash Para durante crash FlexibilidadeBaixaAlta

51 Coleta de Dados Monitores de Software: Gerais e Flexíveis Produzem interferência no sistema Informações possíveis de serem obtidas: Nível de aplicação Sistema operacional

52 Coleta de Dados Monitores de Hardware: Eficientes Menos invasivos Problemas: custo e complexidade

53 Monitores Concluindo.... Podem gerar resultados bastante confiáveis. O sistema deve existir e estar disponível. Cuidado com a interferência do Monitor nos resultados Dois tipos básicos de abordagens: Monitores de Software e de Hardware.

54 Técnicas - Aferição Concluindo.... Protótipos –Sistema não existe –Fase de Projeto –Avaliar comportamento ou desempenho Monitores –Avaliação de sistemas existentes – real ou protótipo

55 Tarefa para próxima aula.... Cada dupla... Pesquisar ferramentas para monitoração Escolher uma por dupla para detalhar Preparar apresentação de 15 minutos –Objetivo do Monitor –Variáveis de resposta –Mecanismo de disparo –Mecanismo de visualização dos dados –Forma de implementação –Exemplo de utilização Duplas não devem repetir a mesma ferramenta


Carregar ppt "Avaliação de Desempenho de Sistemas Computacionais Protótipos e Monitores Marcos José Santana Regina Helena Carlucci Santana Universidade de São Paulo."

Apresentações semelhantes


Anúncios Google