Avaliação de Desempenho

Slides:



Advertisements
Apresentações semelhantes
Sistemas Operacionais
Advertisements

Simulação de Sistemas Antonio J. Netto AULA1.
Lei de Little.
Amintas engenharia.
INTRODUÇÃO À ORGANIZAÇÃO DE COMPUTADORES E SISTEMAS OPERACIONAIS VIVIANE LUCY Sistemas Operacionais Gerência de Processador WebDesign Redes de Computadores.
Amintas engenharia.
Resumo 1.1) Introdução 1.2) Abordagem Convencional de Arquivos
Diagrama de Classes.
Engenharia de Software
Medida do Tempo de Execução de um Programa
Medida do Tempo de Execução de um Programa
Modelagem e simulação de sistemas
Diretrizes para Desenvolvimento do Projeto
Sistemas Operacionais Planejamento de Experimento
Avaliação de Sistemas Operacionais
Avaliação de Desempenho
Avaliação de Desempenho de Sistemas Computacionais
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 SSC SISTEMAS OPERACIONAIS I Turmas.
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é
Marcos José Santana Regina Helena Carlucci Santana
Avaliação de Desempenho Planejamento de Experimentos 2 Aula 2 Marcos José Santana Regina Helena Carlucci Santana Universidade de São Paulo Instituto de.
Avaliação de Desempenho de Sistemas Operacionais
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é
Avaliação de Desempenho
Avaliação de Desempenho Planejamento de Experimentos 1
Avaliação de Desempenho de Sistemas Computacionais
Avaliação de Desempenho
Avaliação de Desempenho Introdução Aula 1 Marcos José Santana Regina Helena Carlucci Santana Universidade de São Paulo Instituto de Ciências Matemáticas.
Alessandro Nakamuta Bruno Guazzelli Batista
Avaliação de Desempenho Introdução Aula 1 Marcos José Santana Regina Helena Carlucci Santana Universidade de São Paulo Instituto de Ciências Matemáticas.
SSC Avaliação de Desempenho de Sistemas Computacionais Prof. Marcos José Santana 2o semestre / 2009 Métodos Analíticos: Processo de Nascimento e.
Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA2.
Prof. MSc Sofia Mara de Souza AULA3
Variáveis Aleatórias Uma variável aleatória associa um número real a cada resultado de um experimento aleatório. Mais precisamente…
Variáveis Aleatórias Contínuas
Análise de Desempenho Analíticos Simulação Implementação real
Ambiente de simulação Os algoritmos previamente discutidos foram analisados usando um simulador de mobilidade. Ele modela uma cidade de 20 Km de raio,
INF-103: Avaliação de Desempenho
Protocolo CMB em simulação distribuída
Sistemas Operacionais
Avaliação de Desempenho
Gerência de Recursos Processador
Tópicos em redes e sistemas distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Uma introdução ao seu funcionamento
Redes Bayesianas - Aplicação em Risco Operacional
Diagramas de Atividade
Soluções Analíticas para Distribuições Discretas na GSPN César Augusto L. Oliveira
SISTEMAS OPERACIONAIS I
Avaliação de Desempenho Simulação
Modelagem de Sistemas Dinâmicos
Unified Modeling Language Professor Mário Dantas A NÁLISE O RIENTADA A O BJETOS Nov/2010.
Sistemas Digitais e Automação
UFPA - PPGEE - LPRAD Laboratório de Planejamento de Redes de Alto Desempenho Um Modelo de Desempenho Markoviano para Escalonamento de Processos Paralelos.
Guilherme Amaral Avelino
MSCC - Introdução Baseado no capítulo 1 do livro Performance Evalution of Computer and Communication Systems, de Jean-Yves Le Boudec (EPFL)
Equivalência de Fluxos e Modelagem Hierárquica Profa. Jussara M. Almeida 1 o Semestre de 2011.
Prof. André Luis Meneses Silva
Capítulo 9: SAD orientado a Modelo
Modelos Probabilísticos de Desempenho Profa. Jussara M. Almeida 1º Semestre de 2011.
Analise de Algoritmos e Notação Assintótica
Fatores de Gestão ligados a Desempenho
Abordagem Sistemática Guilherme Amaral Avelino Avaliação e Controle de Sistemas de Informação.
Professora Michelle Luz
ISO9001:2000 para Software Professor: Alexandre Vasconcelos Equipe: Amanda Pimentel Börje Karlsson Danielly Karine Erika Pessoa Jorge Cavalcanti Jose Edson.
©2000 Paulo Adeodato Avaliação de Desempenho de Sistemas Introdução à Teoria das Filas Paulo Adeodato Departamento de Informática Universidade Federal.
Sistemas Operacionais
PESQUISA OPERACIONAL II Professor: D. Sc. Edwin B. Mitacc Meza
Bruna Cavallero Martins Universidade Católica de Pelotas.
ADMINISTRAÇÃO INTERDISCIPLINAR
Transcrição da apresentação:

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

Avaliação de Desempenho Introdução Planejamento de Experimentos Análise de Resultados Técnicas para Avaliação de Desempenho

Conteúdo Introdução Planejamento de Experimentos Análise de Resultados Motivação Introdução à Avaliação de Desempenho Etapas de um Experimento Planejamento de Experimentos Análise de Resultados Técnicas para Avaliação de Desempenho

Conteúdo Introdução Planejamento de Experimentos Conceitos Básicos Carga de trabalho Modelos para Planejamento de Experimento Análise de Resultados Técnicas para Avaliação de Desempenho

Conteúdo Introdução Planejamento de Experimentos Análise de Resultados Medidas de Desempenho Análise Estatística dos Resultados Comparação de Resultados Procedimento para análise de resultados Técnicas para Avaliação de Desempenho

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

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

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

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.

Técnica de Modelagem

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

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.

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  

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 = 

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

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.

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

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

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

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

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

Técnica de Modelagem Redes de Filas; Redes de Petri; 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; etc.

Chegada dos Clientes -  Fila de Espera de Processos 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 Clientes -  Partida dos Clientes Fila de Espera de Processos Processador Tempo de Serviço S Centro de Serviço

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

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

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.

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.

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

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

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

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

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

Notação para Sistemas de Filas Triangular

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.

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

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?

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.

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.

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

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

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.

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

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;

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

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

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};

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) }

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

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.

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

Redes de Petri Marcadas Exemplo

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

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.

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

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

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,

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

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.

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.

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

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.

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

Soluções para o Modelo Parâmetros Básicos: T = Tempo em que o sistema é observado. A = Número de clientes que chegaram no tempo T. Ci = Número de término de atendimentos do servidor “i”. Bi = Quantidade de tempo que o servidor “i” ficou ocupado. W = Tempo total acumulado dos clientes no sistema (tempo na fila + tempo de serviço).

Soluções para o Modelo Parâmetros Derivados: T = Tempo Total A = Clientes chegam Taxa de Chegada  = A/T T = Tempo Total Ci= Términos Throughput X = Ci/T T = Tempo Total Bi = Tempo ocupado Utilização Ui = Bi/T Ci= Términos Bi = Tempo ocupado Tempo Médio de Serviço Si = Bi/ Ci

Soluções para o Modelo Parâmetros Derivados: Número Médio de Clientes no Sistema N = W/T T = Tempo Total W= Tempo dos clientes Tempo de permanência no sistema R = W/Ci Ci = Términos W= Tempo dos clientes

Tempo de permanência no sistema Soluções para o Modelo Lei de Little:    Cálculo do Número Médio de Clientes no Sistema N = W/T = C/T * W/C Throughput X = Ci/T Tempo de permanência no sistema R = W/Ci N = X*R Pode ser utilizada para um recurso, conjunto de recursos ou sistema todo

Soluções para o Modelo Lei da Utilização: U = X*S = C/T * B/C Throughput X = Ci/T Tempo Médio de Serviço Si = Bi/ Ci

Solução Analítica

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.

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

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

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