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

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

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 Marcos José

Apresentações semelhantes


Apresentação em tema: "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 Marcos José"— Transcrição da apresentação:

1 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 Marcos José Santana Regina Helena Carlucci Santana Modelagem de Sistemas Computacionais

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

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

4 Técnica baseada na contruçã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. Técnica de Modelagem

5

6 Vantagens: –Flexibilidade –Pode ser utilizada para sistema existente ou não –Custo X Precisão Dificuldades: –Descrição das características principais –Validação

7 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.

8 Classificação dos Modelos Chegada de Clientes Saída de Clientes Subsistema Central Subsistema Central Chegada de Clientes Saída de Clientes Subsistema Central Percurso para todos os clientes Percurso para clientes da classe A Percurso para clientes da classe B Modelo AbertoModelo FechadoModelo Misto

9 Classificação dos Modelos Sistemas Abertos Número desconhecido e ilimitado de clientes no sistema Carga no sistema – depende da taxa de chegada Sistemas Fechados Número limitado e conhecido de clientes no sistema Carga do sistema depende do número de clientes

10 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 delas, etc. Classificação dos Modelos

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

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

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

14 Conjunto de etapas independentes, mas inter-relacionadas Técnica de Modelagem 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.

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

16 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.

17 Redes de Filas Chegada dos Processos Partida dos Processos Fila de Espera de Processos Processador Centro de Serviço 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

18 Redes de Filas Chegada dos Processos Partida dos Processos Fila de Espera de Processos Processador Centro de Serviço 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

19 Redes de Filas Um centro de serviços pode ter um ou mais servidores e uma ou mais filas

20 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

21 Redes de Filas Exemplos: Cinema com uma bilheteria Banco com quatro caixas Incluir dois tipos de cliente: comum e preferencial

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 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 Notação para Sistemas de Filas

25 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 a probabilidade de se gerar qualquer ponto em um intervalo contido no espaço amostral é proporcional ao tamanho do intervalo Distribuição uniforme Função densidade de probabilidade: f(x)= 1(b-a), para x b f(x) = 0, cc A função de distribuição acumulada: F(x) = 0 para x < a F(x) = (x - a) / (b - a) para a x < b F(x) = 1 para x b

27 Notação para Sistemas de Filas Distribuição exponencial Função densidade de probabilidade: f(x) = λ e - λ x para x 0 e f(x) = 0 para x < 0 A função de distribuição acumulada: F(x) = P(X x) = 1 - e - λ x 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 Média – 1 / λ

28 Notação para Sistemas de Filas Erlang Triangular

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

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

31 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?

32 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.

33 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.

34 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

35 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

36 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.

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

38 Formalmente, a rede de Petri é dada por uma quí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; K capacidade dos lugares; Redes de Petri

39 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 Redes de Petri - Exemplo

40 RP = (P, T, A, V, K)

41 Redes de Petri - Exemplo RP Ano_Letivo = (P, T, A, V, K) P = {1 o Período, Férias1, 2 o Período, Férias2}; T = {GozarF é rias1, Retornar2 o Per í odo, GozarF é rias2, Retornar1 o Per í odo};

42 Redes de Petri - Exemplo A = {(1 o Per í odo, GozarF é rias1), (GozarF é rias1, F é rias1), (F é rias1, Retornar2 o Per í odo), (Retornar2 o Per í odo, 2 o Per í odo), (2 o Per í odo, GozarF é rias2), (GozarF é rias2, F é rias2), (F é rias2, Retornar1 o Per í odo), (Retornar1 o Per í odo, 1 o Per í odo) }

43 Redes de Petri - Exemplo V = {1, 1, 1, 1, 1, 1, 1, 1} K = { K 1oPeríodo = 1, K Férias1 = 1, K 2oPeríodo = 1, K Férias2 = 1}.

44 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, M o ), onde R é a estrutura da rede e M o a marcação inicial. Redes de Petri Marcadas

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

46 Exemplo

47 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 Redes de Petri

48 Redes Elementares – Junção Modela a sincronização entre atividades concorrentes. A transição t 1 só dispara quando existirem tokens tanto em P 1, quanto em P 2. Redes de Petri

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

50 Redes não determinística Exemplo – Protocolo de Comunicação Redes de Petri

51 Rede de Petri Temporizada Determinística Redes de Petri Tempo associado com as transições Tempo pode ser uma distribuição de probabilidade Redes de Petri estocásticas,

52 Redes de Petri - Exemplo Fila de Processos CPU Ocupada Processar CPU Livre Liberar Saída

53 Vantagens de Redes de Petri –Representação gráfica; –Fácil aprendizado; –Utilizadas em diversas áreas; –Podem representar aspectos estáticos e dinâmicos do sistema; –Formalismo matemático; –Adequada para sistemas paralelos, concorrentes, assíncronos, não determinísticos, etc. Redes de Petri

54 Desvantagens de Redes de Petri Não possuem uma representação para tratar filas - um lugar com vários tokens não possui um algoritmo de escalonamento, uma taxa de chegada e prioridades para clientes; A representação de paralelismo não é explícita; Um lugar não pode ser subdividido em sublugares, o que pode levar à explosão do número de lugares e transições do modelo; Poucas ferramentas implementam extensões hierárquicas, que possibilitam uma maior compactação do modelo. Redes de Petri

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

56 Soluções para o Modelo Solução Analítica Modelos analíticos descrevem a operação do sistema e sua carga em termos completamente abstratos.

57 Soluções para o Modelo Solução Analítica –Estimativas de desempenho são obtidas através da resolução analítica ou numérica do modelo matemático –Relação funcional entre parâmetros do sistema e critérios de desempenho escolhidos –Rápido –Resultados exatos –Restrição - Simplificações Modelo baseado em redes de filas

58 Solução Analítica

59 Soluções para o Modelo Solução por Simulação Modelos de simulação são programas de computador nos quais a operação de um sistema e sua carga são descritas utilizando- se algoritmos apropriados.

60 Soluções para o Modelo Solução por simulação –Estimativas de desempenho são obtidas através da execução de um programa que simula o modelo –Resultados estocásticos –Necessidade de tratamento estatístico –Tempo para obtenção dos resultados –Flexível

61 Soluções para o Modelo Uso preferencial das técnicas de modelagem

62 Soluções para o Modelo Uso preferencial das técnicas de modelagem Solução por Simulação


Carregar ppt "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 Marcos José"

Apresentações semelhantes


Anúncios Google