1 / 17

Desempenho de Sistemas de Computadores 2003 -2004

Pedro Medeiros - prof. auxiliar gab. P2/9, telef. 10738, pm@di.fct.unl.pt. 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. Porquê estudar desempenho de sistemas de computadores?.

lynley
Download Presentation

Desempenho de Sistemas de Computadores 2003 -2004

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Pedro Medeiros - prof. auxiliar gab. P2/9, telef. 10738, pm@di.fct.unl.pt 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

  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 tc – tempo de acesso à cache tm – tempo de acesso à RAM h – hit rate tmédio = h* tc + (1 –h) tm tc etm 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 tc etm 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

  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 • Introdução: terminologia • Técnicas e ferramentas de medida • Experiências e análise de dados • Simulação de sistemas • Modelação de sistemas baseadas em filas de espera • 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 http://asc.di.fct.unl.pt/~pm/DSC-03-04/

  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); 16.10-18.00; sala a indicar Quem conseguir aprovação através do teste só poderá melhorar a nota se se inscrever para esses efeito

More Related