Avaliação de Desempenho de Sistemas Operacionais Marcos José Santana Regina Helena Carlucci...

Preview:

Citation preview

Avaliação de Desempenho de Sistemas Operacionais

Marcos José Santana

Regina Helena Carlucci Santana

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

Departamento de Sistemas de Computação

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

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

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

Técnicas de Aferição

• Construção de Protótipos– Sistema em Projeto

• Monitores ou Coleta de Dados– Avaliar um Sistema ou partes dele

• Benchmarks– Comparação entre Sistemas– Avaliar partes específicas de um Sistema

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

Construção de Protótipos

• Ótima opção para verificação de projetos

• Bom para alguns tipos de sistemas

• Custo pode ser um problema

• Flexibilidade não é ponto forte!

• Produz resultados com boa precisão;

Técnicas de Aferição

• Construção de Protótipos– Sistema em Projeto

• Monitores ou Coleta de Dados– Avaliar um Sistema ou partes dele

• Benchmarks– Comparação entre Sistemas– Avaliar partes específicas de um Sistema

           

       

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

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

MonitoresForma de Implementação

Define o nível em que o monitor será implementado

1. Hardware

2. Software

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

Exemplo: rotina inserida nos protocolos de comunicação para medir o tempo gasto em uma transação em arquivos

Coleta de Dados

Monitores de Hardware:

Eficientes Menos invasivos Problemas: custo e complexidade Exemplo: pequeno hardware adicionado

ao sistema para espionar e contabilizar o tempo gasto em uma transação em arquivos

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.

Técnicas de Aferição

• Construção de Protótipos– Sistema em Projeto

• Monitores ou Coleta de Dados– Avaliar um Sistema ou partes dele

• Benchmarks– Comparação entre Sistemas– Avaliar partes específicas de um Sistema

           

       

Técnicas de Aferição

• Benchmarks

Programa escrito em linguagem de alto nível, representativo de uma

classe de aplicações, utilizado para medir o desempenho de um dado

sistema ou para comparar diferentes sistemas

Benchmarks

• Instrumento fixo, que permite comparar um novo registro (mark - marca) a um padrão preestabelecido, a partir de um ponto de observação (bench - banco)

• Exemplo:– Termômetro

Benchmarks

Termômetro

Vinho

T = 38O

Febre!!!

T = 36,5O

Normal

Benchmark!!

Benchmarks

• Comparar desempenho de máquinas diferentes

• Reprojetar hardware e software• Decidir sobre aquisição de sistemas• Ajudar na otimização de programas• Previsão de desempenho de

aplicações em computadores específicos

Exemplos de Benchmarks

• Benchmarks mais comums• Whetstone, Linpack, Dhrystone

• Outros programas de Benchmarks• Stanford Small Programs Benchmark Set

• EDN Benchmarks

• Sieve of Eratosthenes

• Livermore Fortran Kernels

• Perfect Club Benchmarks

• SPEC Benchmarks

• EuroBen Benchmarks

Concluindo....

Benchmarks podem ser utilizados para verificar diversos tipos de

sistemas ...– Servidores Web,– Banco de dados,– Processadores,– Redes de comunicação

O importante é...

• Escolher o Benchmark adequado,

• Aplicar o Benchmark de forma adequada,

• Analisar os resultados obtidos com critério.

Técnicas de 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

Modelagem

Estudo do sistema e definição dos objetivos; Construção do modelo; Modelos Analíticos x Modelos de Simulação:

Modelo solução analítica modelo analítico;

Modelo solução por simulação modelo de simulação;

Modelo solução híbrida modelo híbrido!

A n á lise d o V a lo r M é d io (A V M )

E q u açã o G lob a l d e E q u ilíb rio

R ed es B C M P

D ecom p os içã o H ie rá rq u ica

L im ites d e D esem p en h o

R ed e d e Jackson

P rocesso N asc im en to -e -M orte

M od e lo A b erto

A n á lise d o V a lo r M é d io (A V M )

E q u açã o G lob a l d e E q u ilíb rio

R ed es B C M P

D ecom p os içã o H ie rá rq u ica

L im ites d e D esem p en h o

M é tod o d e G ord on e N ew e ll

M od e lo F ech ad o

M é tod os d e S o lu çã o A n a lít ica

Solução Analítica

•Descrição matemática do comportamento do sistema e da carga de trabalho.

•Geram equações.

•Solução das equações de forma analítica ou numérica

Solução Analítica

Restrições: Distribuição do tempo entre chegadas deve

ser do tipo exponencial. A posse simultânea de recursos não é

permitida. Disciplinas de filas com prioridades não são

permitidas. Todas as filas são consideradas de

capacidade infinita.

Simulação - Utilização• Criação de ambientes virtuais• Avaliação de desempenho de sistemas complexos

Mundoreal

simulaçõesmilitares

Jogos Simulação

Aumenta o grau de abstração e velocidade

Aumenta o grau de realismo e custo

Decisões humanasfazem parte do

processo

Decisões humanasnão fazem parte do

processo

Ambientes Virtuais SimulaçõesAnalíticas

Simulação - Avaliação de Desempenho

Exemplo: Simulação de um ambiente que faz escalonamento de processos considerando a potência

computacional e ociosidade das máquinas

Pode-se avaliar: –Adequabilidade de um índice de carga

–Utilização de diferentes arquiteturas

–Utilização de diferentes políticas de escalonamento

Solução por Simulação

construção de um programa computacional para implementar modelos de fenomenos ou sistemas dinamicos (estados que se alteram com o tempo);

o modelo é suposto ser uma representação válida do sistema em estudo.

Soluções para o Modelo

• Solução por Simulação– Versatilidade (aplicada em diferentes

situações)– Flexibilidade (adaptável a novas

situações)– Baixo custo (com um mesmo programa

pode-se simular diferentes situações do mesmo problema)

– Útil quando o sistema não está disponível– Facilidade de uso– Problemas: precisão e validação

Comparação das Técnicas de Avaliação de Desempenho

Modelos de Simulação X Analíticos

Analíticos: Requer validação do modelo Dificuldade em resolver a equação Requer simplificações Resultados precisos Pouco tempo de processamento

Comparação das Técnicas de Avaliação de Desempenho

Modelos de Simulação X AnalíticosSimulação: Requer validação do modelo

Elaboração e Teste de programa Poucas restrições aos modelos Resultados probabilísticos Requer estudo estatístico Alto tempo de processamento

Comparação das Técnicas de Avaliação de Desempenho

Uso Apropriado

Uso Secundário

Menor com-plexidade do

Modelo

Grande n de Informações

Maior com-plexidade do

Modelo

Modelos Analíticos Simulação

Recommended