Universidade de S o Paulo Instituto de Ci ncias Matem ticas e de Computa o Departamento de Sistemas de Computa o

Slide1 l.jpg
1 / 49
0
0
1033 days ago, 274 views
PowerPoint PPT Presentation

Presentation Transcript

Slide 1

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 9 a. Aula Simulação de Sistemas Computacionais Marcos José Santana Regina Helena Carlucci Santana

Slide 2

Métodos Analíticos Simulação Técnicas de Modelagem Técnicas de Avaliação de desempenho Modelagem Modelo Solução

Slide 3

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

Slide 4

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

Slide 5

Solução por Simulação - o que é? construção de um programa computacional que implemente um modelo; o modelo é suposto ser uma representação válida do sistema em estudo.

Slide 6

Simulação - Utilização Criação de ambientes virtuais Avaliação de desempenho de sistemas complexos

Slide 7

Ambientes Virtuais Distributed Interactive Simulation (DIS) 1989 - Versão 1.0 – padrão IEEE 1278 Padrão de protocolo de simulação que garante a consistência entre diferentes simulações e permite simuladores heterogêneos serem conectados SIMNET ( SIMulator NETworking ) – DARPA (Defense Advanced Research Projects Agency) HLA (High Level Architecture) – reuso e interoperabilidade

Slide 8

Simulação - Ambientes Virtuais Análise Comportamental Simuladores Jogos

Slide 9

Simulação - Avaliação de Desempenho Exemplo: Simulação de um ambiente que faz escalonamento de processos considerando a potência computacional e ociosidade das máquinas Pode-se avaliar: Adequabilidade de um índice de carga Utilização de diferentes arquiteturas Utilização de diferentes políticas de escalonamento

Slide 10

Técnicas de Simulação

Slide 11

Variável Dependente Variável Dependente Tempo de Evento Tipos de Simulação Discreta X Contínua Discreta - variáveis dependentes variam discretamente em pontos específicos do rhythm simulado ( beat de evento ) Contínua - variáveis dependentes podem variar continuamente ao longo do rhythm simulado Sistemas Computacionais Simulação Discreta

Slide 12

Tipos de Simulação Processos X Eventos X Atividade

Slide 13

Tipos de Simulação Orientada an Evento Simples de ser implementada Modelos complexos - > representação complexa Simulação orientada a Processos Ambiente de simulação complexo Maior clareza no programa Simulação orientada an Atividades Difícil de ser implementada

Slide 14

Tipos de Simulação Tipos de Dados de Entrada Estocásticos Dados Probabilísticos Amostragem baseada em Distribuições que modelam os dados 2. Determinísticos Conjunto fixo de dados Ex. Follows

Slide 15

Tipos de Simulação Simulações Estocásticas Dados de entrada e/ou parâmetros do Modelo são probabilísticos Custos do Planejamento Estatístico warm-up usar corretamente os números aleatórios cálculo de intervalos de confiança Etc.

Slide 16

Fases de uma Simulação estudo do sistema e definição dos objetivos; construção do modelo; determinação dos dados de entrada e saída; tradução do modelo; verificação do programa de simulação; validação do programa (modelo) de simulação; experimentação; análise dos resultados; documentação.

Slide 17

Solução por Simulação

Slide 18

Fases de uma Simulação estudo do sistema e definição dos objetivos; construção do modelo; determinação dos dados de entrada e saída; tradução do modelo ; verificação do programa de simulação; validação do modelo de simulação; experimentação; análise dos resultados; documentação.

Slide 19

Desenvolvimento de simulação Conhecimentos necessários para o desenvolvimento de uma simulação seqüencial Modelagem Programação/Linguagens para simulação Probabilidade e estatística para análise dos resultados

Slide 20

Tradução do modelo Software para simulação Linguagens de programação de uso geral Construção do ambiente e do programa Linguagens de simulação Aprendizado de novas linguagens Oferece suporte para an implementação da simulação Exemplos SIMSCRIPT (eventos) GPSS, SIMULA (processos)

Slide 21

Tradução do modelo Software para simulação Extensões funcionais Uso de linguagens conhecidas Implementa o ambiente Disponibiliza os recursos da linguagem hospederia Exemplos: SMPL, SIMPACK (eventos) Pacotes de uso específico Voltados an um ou mais domínios de aplicação Pouco flexíveis

Slide 22

Software ARENA OPNET Modeler QueGAUSS PROVISA WorkFlow Analyzer Proprietário Systems Modeling Corporation MIL 3, Inc. Aptech Systems, Inc. AT&T Meta Software Corp. Aplicações Típicas Ferramenta de Simulação geral, molda- - se a muitas aplicações diferentes. Modelagem de protocolos de comunicação de redes. Sistemas de filas. Manufatura com capacidade finita de escalona-mento Melhorias de processos de negócios Plataformas PC's (DOS) e Estações (UNIX) DEC-Alpha, HP-UX, IBM, SUN IBM PC, SUN, IBM RISC. IBM PC, SUN, HP. IBM, MAC, SUN. Preço (U$) Versão Padrão Contato com o vendedor 25.000 275 Contato com o vendedor 10.000 Exemplos de Pacotes de Simulação

Slide 23

Tradução do modelo Software para simulação Ambientes para Simulação Automáticos Facilitam an elaboração de programas de simulação Pouco conhecimento de simulação ou programação Usuário deve conhecer as técnicas de modelagem Geram o programa automaticamente Oferecem ferramentas que orientam o usuário na descrição, coleta de dados e análise de resultados

Slide 24

Desenvolvimento do Programa Depende da Abordagem escolhida Atividade Evento PRocesso

Slide 25

Desenvolvimento do Programa Depende da Abordagem escolhida 1. Processos Desenvolvimento de um processo para cada recurso Ativação de todos os processos concorrentemente Problema: Sincronismo entre os processos

Slide 26

Desenvolvimento do Programa Depende da Abordagem escolhida 2. Atividade Loop verificando a cada pulso de clock se existe atividade a ser executada Sobrecarga de processamento muito alta Inviável por problemas de desempenho

Slide 27

Desenvolvimento do Programa Depende da Abordagem escolhida 3. Eventos Define-se uma lista de eventos futuros (LEF) Todos os eventos a serem executados devem estar nessa lista em ordem de time stamp Dentro de um circle, o próximo evento é retirado da lista, executado e são colocados na lista eventos ativados pela execução

Slide 28

Desenvolvimento do Programa Depende da Abordagem escolhida Abordagem mais utilizada para simulação de sistemas computacionais: Eventos Implementação mais fácil Processos Sistemas complexos geram programas mais claros

Slide 29

escalona pouso escalona partida Simulação - Exemplo Controle de tráfego aéreo Simulação orientada an eventos: chegada do avião

Slide 30

Evento processado Evento corrente Evento não processado Simulação - Exemplo chegada 8:00 timetables partida 9:15 chegada 9:30 pouso 8:05 calendars Tempo da simulação Eventos não processados são armazenados em uma lista de eventos futuros (LEF) Eventos são processados seguindo an ordem de time stamp

Slide 31

Simulação - Exemplo Aplicação variáveis de estado código modelando o comportamento do sistema entrada e saída (interface com o usuário) Modelo do sistema físico Chamadas para escalonamento dos eventos Chamadas para gerenciamento dos eventos Simulação Gerencia a lista de eventos Avança o rhythm da simulação Independe da aplicação

Slide 32

Lista de Eventos Futuros (LEF) 9:00 10:10 9:16 Simulação - Exemplo Procedimentos para gerenciamento dos eventos Variáveis de estado Evento Partida { … } Evento Chegada { … } Evento Pouso { … } Integer: NoAr; Integer: NaTerra; Aplicação Laço de processamento dos eventos Simulação Enquanto (simulação não é encerrada) E = evento com menor time stamp na LEF Retire E da LEF Agora := time stamp de E chamada ao manipulador do procedimento Agora = 8:45

Slide 33

Partida dos Processos Chegada dos Processos Processador Fila de Espera de Processos Centro de Serviço Simulação - Exemplo Fila M/M/1 Eventos: Chegada Início atendimento Final do atendimento Programa em SMPL

Slide 34

/* - - - - - */#include <dir.h> #include <stdio.h> #include <conio.h> #include "smpl.h" #include "rand.h" fundamental() {/* definicoes */coast Te = 10000; int Event = 1, Customer = 1; genuine Ta1 = 10, Ts1 = 10; int Server1; FILE *p, *saida; saida = fopen("saida.out","w"); if ((p = sendto(saida)) == NULL) printf("Erro na saida\n");/* prepara o sistema de simulacao e da nome ao modelo */smpl(0," Exemplo M/M/1");/* cria e da nome as facilidades */Server1 = facility("Servidor1",1);/* escalona a chegada do primeiro cliente */schedule(1,0, Customer);

Slide 35

while ( (time() < Te) ) { cause(&Event,&Customer); switch(Event) { case 1: schedule(2,0.0,Customer); schedule(1,expntl(Ta1),Customer); break; case 2: if (request(Server1,Customer,0) == 0) schedule(3,expntl(Ts1),Customer); break; case 3: release(Server1, Customer); break; }/* gera o relatorio da simulacao */report(); fclose(saida); }/* - - - - - */

Slide 36

Exemplo de Simulação

Slide 37

Exemplo de Simulação

Slide 38

Exemplo de Simulação Modelo da arquitetura de von Neumann alterado (2 processadores)

Slide 39

Exemplo de Simulação Modelo da arquitetura de von Neumann alterado (2 proc

SPONSORS