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

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

Desempenho de Sistemas de Computadores 2003-2004 Sumário: Apresentação. Introdução à problemática da medição, avaliação, previsão e afinação do desempenho.

Apresentações semelhantes


Apresentação em tema: "Desempenho de Sistemas de Computadores 2003-2004 Sumário: Apresentação. Introdução à problemática da medição, avaliação, previsão e afinação do desempenho."— Transcrição da apresentação:

1 Desempenho de Sistemas de Computadores Sumário: Apresentação. Introdução à problemática da medição, avaliação, previsão e afinação do desempenho Pedro Medeiros - prof. auxiliar gab. P2/9, telef ,

2 Porquê estudar desempenho de sistemas de computadores? Quão bem está este sistema de computdores a fazer o que devia? Para responder é necessário definir a carga de trabalho típica (workload) e os níveis de serviço (SLA - service level agreement) Porque é que este programa executa tão devagar? Para um aumento de carga prevista, o que é preciso fazer ao sistema?

3 Gestão de desempenho Optimização de aplicações ferramentas para aumentar a eficácia do programa (profilers) e ferramentas para avaliar a eficiência do sistema de operação -> system tuning Diagnóstico Determinar as causas para os problemas Planeamento da capacidade (capacity planning) fornecer a médio e longo prazo o nível de serviço especificado, face ao aumento da carga prevista pela evolução das actividades da instituição Gestão de recursos escalonamento do uso dos recursos existentes

4 Exemplo Numa dada organização, uma aplicação descarregava os pagamentos de um dia num ficheiro de movimentos. O processamento demorava 1 hora. Verificou-se que tal se devia a duas ordens de razões: 1) os discos eram lentos; 2) para cada pagamento o ficheiro de movimentos era percorrido desde o início Soluções: - comprar discos mais rápidos - acrescentar um módulo à aplicação que construia um índice do ficheiro em memória. Esta medida reduziu o tempo para 5'

5 Área multidisciplinar Arquitectura de Computadores Sistemas de Operação Redes Compilação Teoria das filas de espera Simulação

6 Medição do desempenho Dificuldade em definir o que é o desempenho de um sistema de computadores Dificuldade em medir o desempenho e em interpretar os valores O que é a velocidade e o tamanho de um sistema? Não se lida muitas vezes com sistemas completos A interacção entre componentes é complexa, e por vezes, imprevisível Dificuldade em obter os dados (perturbar o sistema) Dificuldade em interpretar os dados obtidos

7 Objectivos da análise de desempenho (1) Comparar alternativas – Aquisição de novo equipamento: escolha da configuração – número de CPUs, RAM, interfaces de rede, discos ; comparação de alternativas dos fornecedores Determinar o impacto de uma alteração – Desenho de novos sistemas ou upgrade – impacto da adição ou remoção de uma funcionalidade do sistema (before and after comparison) Afinação do sistema (system tuning) – Determinar um conjunto de parâmetros que produza o máximo de desempenho global do sistema. Exemplos: número de utilizadores simultâneos; fatia de tempo do algoritmo de escalonamento, tamanho e número de buffers de rede e disco. Interligação de parâmetros pode tornar a afinação complicada...

8 Objectivos da análise de desempenho (2) Identificar o desempenho relativo – O desempenho só tem sentido num dado contexto histórico, de utilização, etc – comparar o desempenho com outros sistemas ou outras configurações do mesmo. Quantificar o desempenho face às expectativas dos utilizadores Debugging de desempenho – Depois de um programa funcionar, pode tornar-se necessário determinar tornar a sua execução mais rápida – ferramentas e técnicas de análise devem permitir determinar as razões Preparar expectativas – Prever as possibilidades das novas gerações de equipamento, de forma a que os utilizadores saberem o que esperar

9 Técnicas para a análise de desempenho Medição de sistemas existentes – Na posse das ferramentas adequadas, não é preciso fazer hipóteses simplificativas. Resultados fiáveis mas limitados – só válidos para o sistema em causa... extrapolação ? – Certos parâmetros podem ser muito difíceis de medir Simulação – Programa que modela certos aspectos do sistema em estudo: facilmente modificado – Custo de desenvolver o programa e executar as simulações – É impossível incluir todos os aspectos, têm de se fazer hipóteses simplificativas Modelação – Descrição matemática do sistema. Resultados menos credíveis e fiáveis do que nos casos anteriores. – Podem fornecer aproximações rápidas ao funcionamento do sistema ou de um dos seus componentes – Podem validar resultados de medidas ou simulação

10 Exemplo: tempo de acesso à memória Medição Uma hierarquia de memória complexa dificulta a medida. Um utilizador perito pode escrever programas que permitam deduzir as características de partes da hierarquia de memória: – Um programa que acede repetidamente à mesma variável, permite medir o tempo de acesso à cache. Um programa que force cache misses pode permitir estimar o tempo de acesso à RAM – Estas experiências podem não permitir tirar conclusões para um programa completo Simulação – Um simulador permite variar um grande número de parâmetros: dimensão e tempos de acesso da cache e da RAM, associatividade da cache,... – Já pode ser difícil incluir aspectos de optimização dos CPUs modernos (pipeline, execução fora de ordem, especulativa), o que enfraquece os resultados Modelação matemática

11 Exemplo: tempo de acesso à memória Modelação matemática t c – tempo de acesso à cache t m – tempo de acesso à RAM h – hit rate t médio = h* t c + (1 –h) t m t c e t m podem ser obtidos nas especificações do fabricante, ou obtidos por experiências h é mais difícil de obter para uma aplicação, mas pode ser usado um simulador O modelo é grosseiro, mas permite compreender os efeitos de aumentar o hit rate e os modificar t c e t m no desempenho da aplicação

12 Critérios de avaliação Flexibilidade Quão fácil é mudar o sistema de avaliação para estudar diferentes configurações. Custo Quanto custa (tempo, esforço e dinheiro) fazer as experiências Confiabilidade Mede o grau de confiança que o destinatário do estudo terá nos resultados obtidos. Precisão Quão próximos estão os resultados obtidos daqueles que se conseguiriam num máquina real

13 Comparação das três abordagens CritérioModelação matemática SimulaçãoMedição FlexibilidadeAlta Baixa CustoBaixoMédioAlto ConfiabilidadeBaixaMédiaAlto PrecisãoBaixaMédiaAlta

14 Conclusões A escolha de uma técnica depende do problema Um dos talentos de um especialista em desempenho é determinar qual (ou quais) das técnicas é a mais adequada em cada situação Neste curso, procurar-se-á desenvolver esse talento A análise de desempenho é às vezes encarada como uma arte em vez de uma ciência Muitas vezes esta observação é falsa: é preciso indicar todos os resultados obtidos e como foram obtidos (parâmetros e ferramentas usados na recolha, apresentação e análise dos dados)

15 Programa 1. Introdução: terminologia 2. Técnicas e ferramentas de medida 3. Experiências e análise de dados 4. Simulação de sistemas 5. Modelação de sistemas baseadas em filas de espera 6. Optimização de programas

16 Bibliografia David J. Lilja, Measuring Computer Performance: A Practitioner´s Guide, Cambridge University Press, 2000 Raj Jain The Art of Computer Systems Performance Analysis: techniques for experimental design, measuring, simulation and modeling, Wiley, 1991 D. Menascé, V. Almeida Capacity Planning for WEB Performance: Metrics,Tools and Methods, Prentice-Hall, 1998 Hennessy, Patterson Computer Architecture a Quantitative Approach 3rd Ed, Morgan Kauffman 2002 outras referências, ver página da cadeira

17 Avaliação LEI/MEI C1 (exame ou teste), C2 (trabalhos práticos) Nota Final = 0.7*C1+0.3*C2 Teste: 17/12/2003 (4ª feira); ; sala a indicar Quem conseguir aprovação através do teste só poderá melhorar a nota se se inscrever para esses efeito


Carregar ppt "Desempenho de Sistemas de Computadores 2003-2004 Sumário: Apresentação. Introdução à problemática da medição, avaliação, previsão e afinação do desempenho."

Apresentações semelhantes


Anúncios Google