Avaliação de Desempenho de Sistemas Discretos

Documentos relacionados
Avaliação de Desempenho de Sistemas Discretos

Avaliação de Desempenho de Sistemas DCC 074

Modelagem Analítica. Profa. Jussara M. Almeida 1 o Semestre de 2011

Avaliação de Desempenho de Sistemas Discretos

Equivalência de Fluxos e Modelagem Hierárquica. Profa. Jussara M. Almeida 1 o Semestre de 2014

Modelos de Redes de Filas com Múltiplas Classes (Análise de Valores Médios) Profa. Jussara M. Almeida 1 o Semestre de 2011

Avaliação Quantitativa de Sistemas

Modelos de Redes de Filas com Uma Classe (Análise de Valores Médios) Profa. Jussara M. Almeida 2 o Semestre de 2011

Análise e Modelagem de Desempenho de Sistemas de Computação. Profa. Jussara M. Almeida 1 o Semestre de 2014

Sistemas Operacionais. Escalonamento de processos

6 ESCALONAMENTO DE CPU

Modelos de Redes de Filas com Uma Classe (Análise de Valores Médios) Profa. Jussara M. Almeida 1 o Semestre de 2014

Sistemas Operacionais

Avaliação de Desempenho de Sistemas Discretos

Processos. Aula Passada. Aula Passada (2) Ciclos de CPU e de I/O (1)

Leis Fundamentais. Profa. Jussara M. Almeida 1 o Semestre de 2014

PCS 2039 Modelagem e Simulação de Sistemas Computacionais

Avaliação e Desempenho Aula 18

Processos. Escalonamento de Processos

Processos. Escalonamento de Processos

Mário Meireles Teixeira. Departamento de Informática, UFMA.

Escalonamento de Processos Uniprocessador

Gestão de Operações II Teoria das Filas. Prof Marcio Cardoso Machado

Processos Estocásticos aplicados à Sistemas Computacionais

Fundamentos de Sistemas Operacionais

Infra-Estrutura de Software. Escalonamento

SOP - TADS Escalonamento de Processos

Processos. Escalonamento de Processos

Processos. Objetivos do Escalonamento. Políticas de Escalonamento. Algoritmos de Escalonamento. Maximizar a taxa de utilização da UCP.

Sistemas Operacionais. Universidade Federal de Minas Gerais. Aula 3. Escalonamento

Evandro Deliberal Aula 06

Modelagem e Análise Aula 9

Leis Operacionais de Desempenho

Na Aula Anterior... Escalonamento de Processos. Nesta Aula. Escalonamento. Comportamento de um Processo. Historicamente...

SSC546 Avaliação de Sistemas Computacionais Parte 1 -Aula 3 Sarita Mazzini Bruschi

Escola de Engenharia de Lorena EEL/USP Curso de Engenharia de Produção. Teoria da Filas. Prof. Fabrício Maciel Gomes

Redes de Computadores. Fundamentos de Sistemas Operacionais - 2º Período

Conceitos de Análise de Desempenho

Sistemas Operacionais. Escalonamento de Processos

Sistemas de Informação. Sistemas Operacionais

Notas da Aula 10 - Fundamentos de Sistemas Operacionais

Davidson Rodrigo Boccardo

Sistemas de Computação. Processos e escalonamento

Análise de Valores Limites de Desempenho. Profa. Jussara M. Almeida 1 o Semestre de 2014

Algoritmos de escalonamento

Modelos Probabilísticos de Desempenho. Profa. Jussara M. Almeida 1º Semestre de 2014

Capítulo 2. Multiprogramação. Conteúdo. Objetivo. Recordando. Recordando. DCA-108 Sistemas Operacionais

Fundamentos de Sistemas Operacionais

Escalonamento. Pedro Cruz. EEL770 Sistemas Operacionais

Teoria das Filas aplicadas a Sistemas Computacionais. Aula 20

Conceitos Básicos de Planejamento

Escalonamento do CPU

Avaliação de Desempenho

Definição. ? Algoritmo de Escalonamento de CPU. ? Algoritmo do S.O. que determina qual o próximo processo a ocupar a CPU

SO: Escalonamento. Sistemas Operacionais Flavio Figueiredo (

Avaliação de Desempenho de Sistemas Discretos

Escalonamento de Processos

SSC546 -Avaliação de Desempenho de Sistemas

Sistemas Operacionais: Escalonamento de processos

UFRJ IM - DCC. Sistemas Operacionais I. Unidade III. Escalonamento de Processos. 24/04/2014 Prof. Valeria M. Bastos

Notas da Aula 8 - Fundamentos de Sistemas Operacionais

Questões de Provas de Períodos Anteriores

Material baseado nos slides de: Marcos José Santana Regina Helena Carlucci Santana

Ex: Sistema Tráfego Rodoviário

1. INTRODUÇÃO SIMULAÇÃO DISCRETA OBJETIVO DO CURSO RESPOSTA BANCO E FILIAIS O PROBLEMA DE PLANEJAMENTO DE CAPACIDADE

Escalonamento de Processos

Modelagem e Análise de Sistemas - COS767

Sistemas Operacionais

Estatística e Modelos Probabilísticos - COE241

Escalonamento de Processos

Sistemas Operativos. Sumário. Escalonador da CPU. Por Prioridades Round Robin. ! Algoritmos de escalonamento

Avaliação de Desempenho de Sistemas DCC 074

Fundamentos de Sistemas Operacionais

INTRODUÇÃO À TEORIA DAS FILAS

Modelos Probabilísticos Filas M/M/1, M/G/1. Profa. Jussara M. Almeida 1 o Semestre de 2014

Estatística e Modelos Probabilísticos - COE241

Sistemas Operacionais

PROCESSOS. Sistemas Operacionais. Vinícius Pádua

Modelos Probabilísticos

Fundamentos de Sistemas Operacionais

Estatística e Modelos Probabilísticos - COE241

Estatística e Modelos Probabilísticos - COE241

Infra-estrutura de Software. Escalonamento. Decidindo qual processo vai executar

AULA Nº 08 SISTEMAS OPERACIONAIS. Threads

Como modelar o comportamento de um sistema? MAB-515

Aula Entre classes pode ou não haver interrupção de uma classe em outra. - Classe 1 é a mais prioritária e Classe p é a menos prioritária.

Algoritmos e Estruturas de Dados II. Trabalho Prático 2

1 Classificação da Redes de Filas

Sistemas Operacionais

Sistemas Operacionais. Prof. André Y. Kusumoto

Tipos de Sistemas Operacionais

Escalonamento de processos

Sistemas Operacionais. Gerência de Processador

Sistemas Operacionais Aula 07: Scheduling da CPU. Ezequiel R. Zorzal

Desempenho de Redes de Computadores. Ricardo Couto A. da Rocha 2015

Sistema Operacional. Prof. Leonardo Barreto Campos. 1/30

Temporização (Scheduling) de Processos

Arquitetura de Computadores. Processamento Paralelo

Aula 2: Tipos de Sistemas Operacionais. Instituto Federal da Bahia Campus Salvador INF009 - Sistemas Operacionais Profª Flávia Maristela

Transcrição:

Modelos Avaliação de Desempenho de Sistemas Discretos Parte II: Modelagem de Sistemas Modelo é uma abstração de um sistema real Apenas as características importantes para a avaliação devem ser consideradas O único modelo completamente realista de um sistema é o próprio sistema (ou sua cópia fiel) Custo ou impossibilidade de tratar com sistema Na etapa de projeto, sistema não existe Professor: Reinaldo Gomes reinaldo@computacao.ufcg.edu.br Por que usar modelos? Normalmente é construído para se avaliar o comportamento para um dado sistema Comparação entre implementações do sistema Identificação de problemas Propostas de soluções Expansões em sistemas existentes... Usamos modelos para entender aspectos de nosso cotidiano Por que usar modelos? Desempenho e escalibilidade são mais facilmente alcançáveis se forem considerados no momento de projeto de um sistema Sistema Computacional = coleção de recursos Processadores, discos, enlaces de comunicação, threads de processos, seções críticas Recursos com capacidade finita para realizar trabalho Formação de filas de espera Modelagem inicial é baseada em Modelos Representação formal que permite um estudo mais detalhado do modelo Importância do uso de modelos Como construir um modelo? Modelos ajudam a simplificar problemas Melhor definição do foco do estudo Estudos diferentes podem ter focos diferentes e se complementar Princípio da separação de domínios Diferentes visões do mesmo sistema A redução da complexidade diminui também os custos e o tempo de desenvolvimento de soluções Intuição sofre de imprecisões ou polarizações Modelos podem ser criados com imperfeições Definições podem ser tendenciosas ou não reproduzir a realidade Necessitamos de metodologia mais formal ou científica para uma maior qualidade dos modelos Duas alternativas científicas principais para tentar realizar uma modelagem mais precisa Simulação Análise matemática 1

Exemplo de um servidor de BD Servidor de BD tem uma CPU e um disco Transações para o BD chegam ao servidor a uma taxa de 1,5 tps Durante a execução, uma transação pode alternar várias vezes entre CPU e disco Enquanto uma transação usa a CPU, uma outra pode usar o disco, e outras esperam pela CPU ou disco CPU e disco podem ser caracterizados por uma fila + servidor que atende às transações Exemplo de um servidor de BD Como posso representar esse sistema de tal forma que consiga realizar sua avaliação? Avaliação quantitativa sempre depende da representação matemática das métricas de desempenho do sistema Temos que criar equações que representem o nosso sistema Mas muita vezes precisamos detalhar ainda mais nossa representação, fazendo que as equações fiquem consideravelmente complexas Utilização de representações mais simples permitem que nos concentremos em modelar o sistema e não necessariamente em como montar melhor as equações Modelagem através de uma rede de filas! Representação de fila + servidor(es) Representação do servidor BD (Rede - RF) Modelagem de Sistemas com Redes Não é uma atividade trivial de ser feita É necessário abstrair o essencial para a avaliação Modelo do disco engloba aspectos da placa controladora, rotação, braço, etc. Para o modelo ser avaliado precisamos conhecer apenas o tempo que uma transação típica fica na CPU e no disco Calcular o tempo de espera na CPU e no disco Tempo total médio de uma transação = tempo de espera + serviço Os dispositivos podem ser modelados com um único parâmetro Qual o tempo médio de resposta (espera e serviço)? Qual o número de processos em espera? Qual o tempo médio de espera para ser atendido pelo sistema? 2

Qual a utilização da CPU? Qual a vazão do disco? Qual o número de processos em fila da CPU? Qual o número de processos em fila da disco? Qual o tempo médio de espera por processo na CPU? Qual o tempo médio de espera por atendimento no disco? Servidor de BD: múltiplas classes Transações podem ter características distintas Grupo de Aplicações (transações) % total Tempo médio CPU (s) No. Médio de E/S Trivial 45 0.04 5.5 Médio 25 0.18 28.9 Complexo 30 1.20 85.0 Qual é o gargalo do sistema? O que acontece se eu trocar a CPU por uma mais rápida? O que acontece se eu colocar mais um disco? Representando toda a carga através de um grupo único perderemos as características reais as quais o servidor é submetido resultados incorretos Solução: Criar Classes de fregueses na RF para representar os diferentes tipos de transações Usos de RF com múltiplas classes Classes de Clientes Demandas heterogêneas de serviço Pedidos que compõem a carga-de-trabalho são organizados em grupos que exibem demandas significativamente diferentes Tipos diferentes da carga-de-trabalho Ex: transações e processamento em lote (batch) Objetivos de serviço diferentes Representar com mais exatidão o sistema a ser modelado Classes Abertas: Número ilimitado de clientes no sistema Classes Fechadas: Número de clientes no sistema é limitado e conhecido 3

Classes de Clientes Classe aberta Intensidade da carga de trabalho especificada por taxa de chegadas Número médio de transações que chegam por unidade de tempo Quantidade ilimitada de fregueses no sistema Vazão é parâmetro de entrada Se a taxa de chegada é igual à vazão o sistema está em equilíbrio Um modelo de classe aberta exige que sejam configurados Taxa de chegada Tempo de serviço de cada um dos recursos Classes de Clientes Classe fechada Intensidade da carga de trabalho é especificada pela população de fregueses Número de requisições que competem pelos recursos depende da quantidade de clientes Número de fregueses no sistema é conhecido e limitado Vazão é parâmetro de saída Um modelo de classe aberta exige que sejam configurados Número de fregueses Tempo de serviço de cada um dos recursos Tipos de Modelos Modelo Misto para servidor BD Modelos de Redes Abertos Composto apenas por clientes de classes abertas Modelos de Redes Fechados Composto apenas por clientes de classes fechadas Modelos de Redes Mistos Composto tanto por clientes de classes abertas quanto fechadas Tipos de recursos Tipos de Recursos Delay resource: Representa apenas tempo gasto pelo cliente Recursos sem fila e dedicados Load dependent resource: Recursos que a taxa de serviço dependem da carga de trabalho (LAN) Load independent resource: Recursos com taxa de serviço constante (CPU, Disco) 4

SBD: Bloqueio Bloqueio (Rejeição, Perda) Para garantir Tempo Resposta (TR) para usuários, temos que limitar Nº de transações ao BD Controle de congestionamento ou de admissão (max W transações) Ex: Nº máximo de conexões TCP em servidor Web Ao chegar, transação que encontra sistema com W transações ou espera ou vai embora (perda) Vazão = Taxa de Chegadas x (1-Prob. Rejeição) Não necessariamente igual à taxa de chegadas SBD com controle de admissão SBD: Contenção de software Suponha SBD multithreaded Cada thread atende a uma transação por vez Máximo Nº de threads (m Max ) Nº de threads ótimo? Contenção de software (thread) X contenção física (CPU, disco) Tempo de Resposta pode crecer ou cair em função de m, dependendo do fator dominante (contenção de software ou física) TR vs. m (Nº threads) para λ 1 <λ 2 SBD: Posse de recursos simultâneos Suponha que transações necessitem fazer um lock na BD antes de fazerem atualização Quando conseguir um lock, a transação precisará de usar a CPU ou disco Posse de recursos simultâneos 5

Ilustração de posse de recursos simultâneos RF com posse de recursos simultâneos SBD: Mudança de classe Disciplinas de enfileiramento Suponha que antes de ter sua transação processada no BD, um usuário tenha que passar pela etapa de autenticação uso intensivo de criptografia, exigindo muita CPU Demanda de serviço varia muito, dependendo da etapa Modelo: freguês faz mudança de classe ao mudar de uma fila para outra p i,r,j,s = probabilidade do freguês classe r mudar para classe s ao migrar da fila i para a j Ex: SBD quer dar prioridade à transações com SLA FCFS serviço por ordem de chegada LCFS atendimento como uma pilha Prioridade estática, dinâmica (quebra de impasse por FCFS) Round Robin (RR) fatia de tempo ou quantum (escalonamento da CPU em SO) Processor Sharing (PS) Limite de RR quando fatia de tempo tende a zero (equivalente a n transações em servidor único: cada uma vez recursos n vezes mais lento) Outras: LCFS- Preemptive Resume, aleatória,... Definição mais formal de Modelos de RF Coleção de K filas interconectadas Fila inclui a fila de espera + recurso que fornece serviço para os fregueses Pode ser aberta, fechada ou mista dependendo das classes de fregueses Soluções destas RFs mais adiante no programa Parâmetros de entrada para um modelo RF Intensidade da carga-de-trabalho (taxa de chegadas para classes abertas e população de fregueses para fechadas) Demandas por serviço (tempo médio de serviço total) Soluções para um modelo Primeiro, definir claramente no modelo: Parâmetros ou características do sistema Entradas Saídas (medidas de interesse) Simulação Análise Matemática O Modelo pode ajudar também com medição 6