Carregar apresentação
A apresentação está carregando. Por favor, espere
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 Avaliação de Desempenho Modelagem de Sistemas Computacionais Marcos José Santana Regina Helena Carlucci Santana
2
Técnicas de Avaliação de Desempenho
Protótipos Benchmarcks Coleta de Dados Aferição Rede de Filas Redes de Petri Statecharts Modelagem Simulação Analítica Aferição Sistema Medições Dados
3
Técnicas de Avaliação de Desempenho
Protótipos Benchmarcks Coleta de Dados Aferição Rede de Filas Redes de Petri Statecharts Modelagem Simulação Analítica Modelagem Modelo Solução Métodos Analíticos Simulação Sistema
4
Técnica baseada na contrução e análise de um Modelo
Técnica de Modelagem 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.
5
Técnica de Modelagem
6
Técnica de Modelagem Vantagens: Dificuldades: 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 Subsistema Central Percurso para todos os clientes Percurso para clientes da classe A Percurso para clientes da classe B Modelo Aberto Modelo Fechado Modelo 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
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 delas, etc.
11
Conjunto de etapas independentes, mas inter-relacionadas
Técnica de Modelagem Conjunto de etapas independentes, mas inter-relacionadas
12
Conjunto de etapas independentes, mas inter-relacionadas
Etapa 1 - Criar uma especificação condizente com o sistema real Componentes do sistema relevantes à avaliação Relacionamento entre eles Técnica de Modelagem Conjunto de etapas independentes, mas inter-relacionadas
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) Conjunto de etapas independentes, mas inter-relacionadas
14
Conjunto de etapas independentes, mas inter-relacionadas
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
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. Conjunto de etapas independentes, mas inter-relacionadas
16
Técnica de Modelagem Redes de Filas; Redes de Petri; Statecharts; etc.
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; Statecharts; etc.
17
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 Chegada dos Processos Partida dos Processos Fila de Espera de Processos Processador Centro de Serviço
18
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 Chegada dos Processos Partida dos Processos Fila de Espera de Processos Processador Centro de Serviço
19
Redes de Filas Um centro de serviços pode ter um ou mais servidores e uma ou mais filas
20
os centros podem ser de capacidade fixa ou centros delay
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 Correio tipo 1 - Agência de Água Vermelha – 1 caixa Incluir dois tipos de cliente: comum e preferencial
22
Use fila única sempre que possível
Redes de Filas Exemplos: Correio tipo 2 - Agência de São Carlos com: Dois tipos de serviço: comum (5 caixas), sedex (2 caixas) Dois tipos de clientes: comum, preferencial Incluir reserva de recurso para cliente preferencial Use fila única sempre que possível
23
Redes de Filas Exemplos: Correio tipo 3 - Agência de São Paulo com:
Três tipos de serviço: comum (10 caixas), sedex (2 caixas), encomendas (2 caixas) Dois tipos de clientes: comum, preferencial Parte dos clientes passam pelo balcão para fechar envelope (que possui infinitos tubos de cola) antes de ir para as filas dos caixas
24
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.
25
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.
26
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
27
Notação para Sistemas de Filas
Parâmetros A e B são normalmente representados por Distribuições de Probabilidade Uniforme Exponencial Erlang Triangular
28
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 < a F(x) = (x - a) / (b - a) para a ≤ x < b F(x) = 1 para x ≥ b Função densidade de probabilidade: f(x)= 1(b-a), para ≤ x ≤ b f(x) = 0, cc
29
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) = e- (1/80) 100 ≈ 0,2865
30
Notação para Sistemas de Filas
Erlang Triangular
31
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.
32
Variáveis Aleatórias em um Sistema de Filas
Sistema descrito por uma combinação de variáveis aleatórias e respectivas distribuições
33
Exemplos – Redes de Filas
Cinema com uma bilheteria Chegada dos Processos Partida dos Processos Fila de Espera de Processos Processador Centro de Serviço Quantos clientes são atendidos por unidade de tempo? Qual o número médio de clientes na fila? Qual o tempo médio de espera para compra do ingresso? Qual o tempo médio necessário para comprar o ingresso?
34
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?
35
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.
36
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.
37
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
38
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
39
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.
40
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
41
Formalmente, a rede de Petri é dada por uma quíntupla:
Redes de Petri 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;
42
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
43
Redes de Petri - Exemplo
RP = (P, T, A, V, K)
44
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};
45
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) }
46
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}.
47
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.
48
Redes de Petri Marcadas
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
49
Redes de Petri Marcadas
Exemplo
50
Redes Elementares – Distribuição
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
51
Redes Elementares – Junção
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.
52
Redes Elementares – não determinística
Redes de Petri Redes Elementares – não determinística uma rede que ao se disparar uma transição, inabilita-se a outra
53
Redes não determinística Exemplo – Protocolo de Comunicação
Redes de Petri Redes não determinística Exemplo – Protocolo de Comunicação
54
Rede de Petri Temporizada Determinística
Redes de Petri Rede de Petri Temporizada Determinística Tempo associado com as transições Tempo pode ser uma distribuição de probabilidade Redes de Petri estocásticas,
55
Redes de Petri - Exemplo
Fila de Processos Saída CPU Ocupada Liberar Processar CPU Livre
56
Redes de Petri 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.
57
Redes de Petri 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.
58
Statecharts Técnica de Representação de sistemas através da visão de seus estados e a modificação deles em conseqüência da ocorrência de uma determinada interferência (evento).
59
Statecharts Desenvolvido inicialmente para representar sistemas reativos complexos Técnica de alto nível, permitindo: agrupar estados num superestado; representar atividades paralelas; representar transições mais gerais do que um evento único e simples; manter a forma visual de um diagrama de estado
60
Statecharts Statecharts = Diagrama de Estados + Hierarquia + Concorrência + Mecanismos de Comunicação Hierarquia entre estados (agrupamento, abstração e refinamento de estados) Ortogonalidade (poder de visualizar estados paralelos) Representação de comunicação entre os diversos estados de um determinado sistema
61
Statecharts - Elementos Básicos
Estados - representam a situação do sistema; estado inicial ou estado default Eventos - estímulos que provocam uma transição; representados por rótulos um arco direcionado de uma transição Transições - realizam as mudanças de um estado para outro; representadas por um arco direcionado
62
Statecharts - Superestados
Agrupamento de diversos estados abstraindo detalhes não necessários ao observar o sistema numa visão mais ampla, único estado visível é o superestado No exemplo anterior pode-se definir o superestado Máquina
63
Statecharts - Paralelismo
Duas máquinas trabalhando em paralelo. Graficamente o paralelismo é descrito através de linhas tracejadas entre vários estados
64
Statecharts Ocorre evento e1 Condição c1 é satisfeita Ocorre evento e2
Configuração após a ocorrência de e1[c1] e e5
65
Statecharts - Exemplo CPU CPU Livre Fila de Processos Saída
CPU Ocupada Saída CPU
66
Statecharts Representam de forma explícita características como paralelismo e hierarquia entre estados Relacionamentos complexos entre componentes de um determinado sistema são mostrados de maneira mais efetiva Não contemplam o caminho linear seguido por um determinado cliente e ainda, a individualização de clientes
67
CPU CPU Livre Saída CPU Ocupada
Chegada dos Processos Partida dos Processos Fila de Espera de Processos Processador Centro de Serviço Fila de Processos Reprocessar Saída CPU Ocupada Liberar Processar CPU Livre CPU CPU Livre Fila de Processos Saída CPU Ocupada
69
Técnicas de Modelagem Técnicas de Avaliação de desempenho Modelagem
Métodos Analíticos Modelo Solução Simulação
70
Solução Analítica
71
Solução Analítica Detalhes em....
The art of computer systems performance analysis...... Raj Jain, John Wiley & Sons, 1991 Ou então... Modelos de Redes de Filas .... Andrezza R. F. da Silva Dissertação de Mestrado, ICMC, 2000
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.