1 / 70

Avaliação de Desempenho

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. Modelagem de Sistemas Computacionais. Marcos José Santana Regina Helena Carlucci Santana. Conteúdo. Introdução Planejamento de Experimentos

edison
Télécharger la présentation

Avaliação de Desempenho

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. Universidade de São PauloInstituto de Ciências Matemáticas e de ComputaçãoDepartamento de Sistemas de Computação Avaliação de Desempenho Modelagem de Sistemas Computacionais Marcos José Santana Regina Helena Carlucci Santana

  2. Conteúdo • Introdução • Planejamento de Experimentos • Análise de Resultados • Técnicas para Avaliação de Desempenho • Apresentação das Técnicas • Aferição – Benchmarks e Protótipos • Aferição - Monitores • Desenvolvimento de Modelos • Solução de Modelos – Simulação e Analítica

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

  4. Rede de Filas Simulação Sistema Modelo Solução Métodos Analíticos Simulação Técnicas de Avaliação de Desempenho Modelagem Aferição Modelagem Protótipos Benchmarcks Redes de Petri Analítica Coleta de Dados

  5. Técnica de Modelagem Técnica baseada na construção e análise de um Modelo • Abstração que contempla as características essenciais de um sistema real • Aproximação de como o sistema se comporta • Depende dos objetivos da avaliação • Sofrem alterações no decorrer do tempo, pois as variáveis de estado de um sistema são dependentes do tempo.

  6. Técnica de Modelagem

  7. Técnica de Modelagem • Vantagens: • Flexibilidade • Pode ser utilizada para sistema existente ou não • Custo X Precisão • Dificuldades: • Descrição das características principais • Validação

  8. Classificação dos Modelos Modelos quanto ao comportamento de suas variáveis de estado em relação ao tempo • Modelo de mudança discreta (ou modelo discreto): variáveis dependentes variam discretamente em pontos específicos do tempo simulado • Modelo de mudança contínuo: variáveis dependentes podem variar continuamente ao longo do tempo simulado Sistemas computacionais utilizam-se modelos discretos, uma vez que a alteração de estado em computadores ocorre a intervalos discretos de tempo.

  9. Modelo Aberto Modelo Fechado Modelo Misto Chegada de Saída de Subsistema Subsistema Clientes Clientes Chegadade Subsistema Saída de Central Central Central Clientes Clientes Percurso para todos os clientes Percurso para clientes da classe A Percurso para clientes da classe B Classificação dos Modelos

  10. Classificação dos Modelos Sistemas Abertos • Número desconhecido e ilimitado de clientes no sistema • Carga no sistema – depende de: • Taxa de chegada -  • Tempo de Serviço - S • Quando sistema em equilíbrio -> Throughput = 

  11. Classificação dos Modelos • Sistemas Fechados • Número limitado e conhecido de clientes no sistema • Carga do sistema depende de: • Número de clientes - N • Tempo de pensar – Z - tempo entre final da requisição e início da próxima de um determinado cliente • Tempo de Serviço - S

  12. Classificação dos Modelos Classes de Clientes • Um modelo pode possuir uma ou mais classes de clientes • Quando um modelo possui mais de uma classe de clientes, pode-se estabelecer prioridades entre as mesmas, trajetórias distintas para cada uma delas, etc.

  13. Técnica de Modelagem Conjunto de etapas independentes, mas inter-relacionadas

  14. Técnica de Modelagem Etapa 1 - Criar uma especificação condizente com o sistema real Componentes do sistema relevantes à avaliação Relacionamento entre eles Conjunto de etapas independentes, mas inter-relacionadas

  15. Técnica de Modelagem Etapa 2- Parametrizar o modelo com elementos que serão dados de entrada para a próxima fase (solução) Conjunto de etapas independentes, mas inter-relacionadas

  16. Etapa 3 - Solução do modelo Aplicação de um método matemático (estocástico), automatizado ou não, para adquirir medidas de desempenho a partir das entradas. Técnica de Modelagem Conjunto de etapas independentes, mas inter-relacionadas

  17. Técnica de Modelagem Etapa 4 - Apresentar os resultados através de uma maneira conveniente: gráficos, arquivos-texto, etc. Conjunto de etapas independentes, mas inter-relacionadas

  18. Técnica de Modelagem Etapa 1 - Criar uma especificação condizente com o sistema real • Componentes do sistema relevantes à avaliação • Relacionamento entre eles • Como representar o modelo: • Redes de Filas; • Redes de Petri; • etc.

  19. Redes de Filas Ramo da probabilidade que estuda o fenômeno da formação de filas de solicitantes de serviços, que são providos por um determinado recurso Partida dos Clientes Chegada dos Clientes -  Processador Tempo de Serviço S Fila de Espera de Processos Centro de Serviço

  20. Redes de Filas Um centro de serviços pode ter um ou mais servidores e uma ou mais filas S1 SK

  21. Redes de Filas os centros podem ser de capacidade fixa ou centros delay • Não há competição por existir um número muito grande de servidores disponíveis, • Serviço infinitamente disponível

  22. Redes de Filas Exemplos: • Sistema de arquivos com um processador e quatro unidades de disco. Algumas requisições (30%) não necessitam acessar os discos para serem executadas. • Sistema de arquivos onde um servidor central recebe as requisições e redireciona para outros quatro servidores.

  23. Notação para Sistemas de Filas   A/B/c/K/m/Z A  tempo entre chegadas; B  distribuição tempo de serviço; c  número de servidores; K  capacidade do sistema; m  número de clientes na fonte; Z  disciplina da fila.

  24. Notação para Sistemas de Filas Normalmente usa-se apenas A/B/c: ·não há limite para o tamanho da fila; ·fonte de clientes é infinita; ·disciplina da fila é FCFS M/M/1 • taxas de chegadas entre clientes - distribuição exponencial • tempo de serviço - distribuição exponencial • um único servidor

  25. Notação para Sistemas de Filas Parâmetros A e B são normalmente representados por Distribuições de Probabilidade • Uniforme • Exponencial • Erlang • Triangular

  26. Notação para Sistemas de Filas Distribuição uniforme a probabilidade de se gerar qualquer ponto em um intervalo contido no espaço amostral é proporcional ao tamanho do intervalo A função de distribuição acumulada:F(x) = 0 para x < aF(x) = (x - a) / (b - a) para a ≤ x < bF(x) = 1 para x ≥ b Função densidade de probabilidade: f(x)= 1(b-a), para ≤ x ≤ bf(x) = 0, cc

  27. Notação para Sistemas de Filas Distribuição exponencial A função de distribuição acumulada:F(x) = P(X ≤ x) = 1 - e- λ x para x ≥ 0 Média – 1 / λ Função densidade de probabilidade: f(x) = λ e- λ x para x ≥ 0 e f(x) = 0 para x < 0 Exemplo: O tempo de espera para obtenção de um arquivo em um servidor, segue uma distribuição exponencial e, em média, leva 80mseg para ser atendido. Qual a probabilidade de levar mais de 100mseg? P(X > 100) = 1 - P(X ≤ 100) = 1 - F(100) = 1 - 1 + e- (1/80) 100 ≈ 0,2865

  28. Notação para Sistemas de Filas Erlang – soma de várias exponenciais com médias iguais função densidade de probabilidade função de distribuição acumulada K – No. De Exponenciais somadas  - média das Exponenciais

  29. Notação para Sistemas de Filas Triangular

  30. Notação para Sistemas de Filas Disciplinas de Atendimento de Clientes • FCFS - First Come First Served; • LCFS - Last Come Last Served; • RR - Round Robin (Circular); • Prioridades e Preempção.

  31. Variáveis Aleatórias em um Sistema de Filas Sistema descrito por uma combinação de variáveis aleatóriase respectivas distribuições

  32. Exemplos – Redes de Filas Banco com quatro caixas • Qual o tempo médio de espera na fila? • Qual o tempo de atendimento total? • Tempo de atendimento/na fila encontra-se em um patamar desejado? Ponto A da figura • Qual a conseqüência em se diminuir um caixa? • A fila e o tempo de atendimento diminuirá substancialmente aumentando um caixa? Compensa aumentar um caixa? • Quantos caixas devem ser abertos para trazer o sistema para próximo ao ponto A?

  33. Redes de Filas Exemplos: • Sistema de arquivos com um processador e quatro unidades de disco. Algumas requisições (30%) não necessitam acessar os discos para serem executadas. • Sistema de arquivos onde um servidor central recebe as requisições e redireciona para outros quatro servidores.

  34. Redes de Filas • Restrições das redes de filas: • Representação gráfica oferece apenas os elementos fila e servidor • Não permite posse simultânea de recursos • Necessidade de representação mais minuciosa de filas e servidores Isso leva a uma perda da realidade quando representando sistemas reais.

  35. Redes de Filas • Considere o exemplo anterior: Sistema de arquivos com um processador e quatro unidades de disco. Algumas requisições (30%) encontram as informações necessárias no cache e não necessitam acessar os discos. Represente esse sistema em Redes de Filas considerando que o cache também é um recurso do sistema

  36. Redes de Filas Por outro lado... • a representação do caminho linear que os clientes traçam através do sistema é descrita com bastante propriedade, noção que na maioria das técnicas é perdida com facilidade • possuem uma base matemática bastante solidificada

  37. Redes de Petri Ferramenta de modelagem efetiva para a descrição e a análise de concorrência e sincronização em sistemas paralelos, demonstrando ações cooperativas de diferentes entidades.

  38. Redes de Petri Elementos básicos de uma Rede de Petri pontos onde elementos dinâmicos são armazenados; variáveis de estado determinam as mudanças do sistema; ações realizadas pelo sistema

  39. Redes de Petri Formalmente, a rede de Petri é dada por umaquíntupla: RP = (P, T, A, V, K ) • P é um conjunto finito de lugares; • T conjunto finito de transições; • A conjunto de arcos; • V função de pesos; • Kcapacidade dos lugares;

  40. Redes de Petri - Exemplo Representação do ano letivo de uma Universidade. O ano letivo começa com o primeiro período (semestre) letivo, seguido das primeiras férias (de julho), logo após, tem-se o segundo período letivo, e finalmente as férias de final de ano

  41. Redes de Petri - Exemplo RP = (P, T, A, V, K)

  42. Redes de Petri - Exemplo RPAno_Letivo= (P, T, A, V, K) P = {1oPeríodo, Férias1, 2oPeríodo, Férias2}; T = {GozarFérias1, Retornar2oPeríodo, GozarFérias2, Retornar1oPeríodo};

  43. Redes de Petri - Exemplo A = { (1oPeríodo, GozarFérias1), (GozarFérias1, Férias1), (Férias1, Retornar2oPeríodo),(Retornar2oPeríodo, 2oPeríodo), (2oPeríodo, GozarFérias2), (GozarFérias2, Férias2), (Férias2, Retornar1oPeríodo), (Retornar1oPeríodo, 1oPeríodo) }

  44. Redes de Petri - Exemplo V = {1, 1, 1, 1, 1, 1, 1, 1} K = { K1oPeríodo = 1, K Férias1 = 1, K2oPeríodo = 1, K Férias2 = 1}.

  45. Redes de Petri Marcadas • Marcas (tokens) - informações atribuídas aos lugares, para representar a situação (estado) da rede em um determinado momento. • Elementos dinâmicos. Podem se mover pela Rede. • Podem ser de várias classes. • Representada pela dupla RM = (R, Mo), onde R é a estrutura da rede e Mo a marcação inicial.

  46. Redes de Petri Marcadas • Disparo das transições depende de: • número de marcas • distribuição das marcas noslugares. • uma transição t está habilitada se, e somente se todos os lugares de entrada (pi pertence aP) de t são tais que M(pi)≥ 1 • a marcação da rede de Petri é modificada a cada transiçãodisparada

  47. Redes de Petri Marcadas Exemplo

  48. Redes de Petri Redes Elementares – Distribuição Utilizada na criação de processos paralelos a partir de um processo pai. Os processos filhos são criados através da distribuição dos tokens encontrados no processo (lugar) pai

  49. Redes de Petri Redes Elementares – Junção Modela a sincronização entre atividades concorrentes. A transição t1 só dispara quando existirem tokens tanto em P1, quanto em P2.

  50. Redes de Petri Redes Elementares – não determinística uma rede que ao se disparar uma transição, inabilita-se a outra

More Related