Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouGiovana Santiago Alterado mais de 10 anos atrás
1
Avaliação de Desempenho de Sistemas Computacionais
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 de Sistemas Computacionais Protótipos e Monitores Marcos José Santana Regina Helena Carlucci Santana
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 Planejamento de Experimentos Análise de Resultados
Técnicas para Avaliação de Desempenho
5
Conteúdo Planejamento de Experimentos
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 Análise de Resultados
6
Conteúdo – Parte II Planejamento de Experimentos
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 Análise de Resultados
7
Técnicas de Avaliação de Desempenho
Protótipos Benchmarcks Coleta de Dados Aferição Rede de Filas Redes de Petri Statecharts Modelagem Simulação Analítica Aferição Sistema Medições Dados
8
Técnicas de Avaliação de Desempenho
Protótipos Benchmarcks Coleta de Dados Aferição Rede de Filas Redes de Petri Statecharts Modelagem Simulação Analítica Modelagem Modelo Solução Métodos Analíticos Simulação Sistema
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 Planejamento de Experimentos
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 Análise de Resultados
12
Técnicas de Aferição Construção de Protótipos Benchmarks
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
Construção de Protótipos
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
Construção de Protótipos
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.
16
Construção de Protótipos
Analisar se o sistema é um bom candidato a prototipação Delimitar e conhecer perfeitamente os domínios funcionais e comportamentais do sistema Desenvolver o protótipo Testar o protótipo 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
Analisar se o sistema é um bom candidato a prototipação Viabilidade da prototipação do sistema; Custo Dificuldades em alterar o protótipo Exemplos: 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 Sistema computacional a ser utilizado por uma empresa responsável pelas reservas de uma companhia aérea Sistema computacional para controlar uma usina nuclear
18
Construção de Protótipos
Analisar se o sistema é um bom candidato a prototipação Viabilidade da prototipação do sistema; Custo Dificuldades em alterar o protótipo Exemplos: Sistema de RAID para um servidor 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 Sistema computacional para controlar uma usina nuclear
19
Construção de Protótipos
Analisar se o sistema é um bom candidato a prototipação Viabilidade da prototipação do sistema; Custo Dificuldades em alterar o protótipo Exemplos: Sistema de RAID para um servidor Sistema computacional a ser utilizado por uma empresa responsável pelas reservas de uma companhia aérea 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
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
Delimitar e conhecer perfeitamente os domínios funcionais e comportamentais do sistema Exemplos: 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 Sistema computacional a ser utilizado por uma empresa responsável pelas reservas de uma companhia aérea Sistema computacional para controlar uma usina nuclear
22
Construção de Protótipos
Delimitar e conhecer perfeitamente os domínios funcionais e comportamentais do sistema Exemplos: Sistema de RAID para um servidor 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 Sistema computacional para controlar uma usina nuclear
23
Construção de Protótipos
Delimitar e conhecer perfeitamente os domínios funcionais e comportamentais do sistema Exemplos: Sistema de RAID para um servidor Sistema computacional a ser utilizado por uma empresa responsável pelas reservas de uma companhia aérea 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
Desenvolver o protótipo Qual técnica utilizar no desenvolvimento do protótipo Software Rotinas Básicas Interface simplificada Comunicação entre os módulos Documentação Básica Hardware Implementação Manual (protoboard, wire-wrap, placas, etc.) FPGA PLA – Programable Logic Array
25
Construção de Protótipos
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: Teste de condições extremas Validação aparente – análise dos resultados por especialistas Valores fixos Consistência entre diferentes execuções 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
Avaliar o Desempenho e Identificar Pontos Críticos
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
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
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 Analisador Analisa os Dados Coletados Considera análise estatística
33
Componentes de um Monitor
Apresentação dos Dados Produz Gráficos, Relatórios, Alarmes, etc. Oferece Interface Homem-Máquina Interpretação Analisa o significado dos Dados Análise Inteligente
34
Componentes de um Monitor
Console Controla parâmetros e estados do monitor ou do Sistema Nem sempre faz parte do Monitor Gerenciamento Toma decisão sobre o que deve ser alterado no sistema ou no monitor
35
Monitores Monitores podem ser classificados seguindo diferentes enfoques: Forma de Ativação Mecanismo de Disparo Forma de Obtenção dos dados Mecanismo de Coleta dos Dados Mecanismo Visualização dos Dados Definição da Carga de Trabalho 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 Baseado em Evento Mudança de Estado no Sistema Ativa o Monitor Exemplos: Chaveamento de Processos, Acesso a disco, Acesso a rede 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 Baseado em Evento Baseado em Amostragem
Assíncrono Adequado para eventos raros – causa menor sobrecarga 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
Métrica é retirada Diretamente do Sistema
Monitores Forma de Obtenção dos Dados - Mecanismo de Coleta dos Dados Define como os dados serão coletados Coleta Direta Métrica é retirada Diretamente do Sistema Exemplos: Tempo de Resposta de um Disco 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
Exemplo: Tempo médio de resposta ou utilização de um processador
Monitores Forma de Obtenção dos Dados - Mecanismo Visualização dos Dados On-line Analisados e apresentados ao avaliador ao mesmo tempo em que são coletados Exemplos: Avaliação do tráfego de uma rede 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
Mecanismo Visualização dos Dados
Monitores Mecanismo Visualização dos Dados On-line Número pequeno de eventos Avaliação Comportamental do Sistema 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
Passiva Coleta realizada com a operação normal do Sistema Ativa Coleta realizada com cargas controladas Carga é gerada e injetada no sistema
42
Resultados não podem ser reproduzidos
Monitores Definição da Carga de Trabalho Passiva Resultados não podem ser reproduzidos 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 Hardware Software Firmware 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 Hardware
Rotina 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ério Hardware Software Domínio Eventos de Hardware Eventos de SO e Software Taxa de Entrada Alta (105 / Seg) Depende do proc. Resolução Nanosegundos Milisegundos Conhecimento Necessário Hardwarre 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ério Hardware Software Sobrecarga Nenhuma Variável - <5% Portabilidade Grande Pequena Erros Mais fácil de ocorrer Raro Custo Alto Baixo Disponibilidade Grande– mesmo com crash Para durante crash Flexibilidade Baixa Alta
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 Monitores
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
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.