• Nenhum resultado encontrado

Modelagem e Simulação CCMP0057

N/A
N/A
Protected

Academic year: 2021

Share "Modelagem e Simulação CCMP0057"

Copied!
43
0
0

Texto

(1)

Modelagem e Simulação

CCMP0057

www.univasf.edu.br/~brauliro.leal

Prof. Brauliro Gonçalves Leal

(2)
(3)

Modelagem Conceitual de SF

Os pacotes chegam na Fila, um por vez, o Servidor os atendem também um por vez.

Um pacote aguardará na Fila se o Servidor estiver ocupado, caso contrário, será atendido.

(4)

Modelagem Conceitual de SF

A figura abaixo é uma representação gráfica de Sistemas de Fila M/M/1 e seus elementos constituintes:

● o Sistema de Fila (SF) ● uma Fila (F)

(5)

Modelagem Conceitual de SF

Variável Descrição

τ tempo entre chegadas, isto é, o intervalo de tempo entre duas chegadas sucessivas

λ taxa média de chegada por unidade de tempo

s tempo de serviço, tempo requerido para processar pacotes ou tempo no Servidor

(6)
(7)

Modelagem Conceitual de SF

Os valores que ns pode assumir são 0 ou 1,

correspondendo a Servidor ocioso ou Servidor ocupado, respectivamente.

Os valores que nf pode assumir são os

inteiros positivos, nf ∈ [0,∞), temos também

que:

nsf = nf + ns.

As variáveis cpf, eps e sps, são as variáveis de estado do sistema, são eventos discretos no tempo.

Para o mesmo evento tem-se que:

(8)

Modelagem Conceitual de SF

A figura ao lado é uma ilustração estática do Modelo Conceitual de Sistemas de Fila M/M/1.

Mas nela está implícito os aspectos dinâmicos deste modelo.

Pacotes chegam continuamente no sistema, os pacotes um a um, são encaminhados para o Servidor e após, ser processadas, saem do sistema.

Este fluxo permite gerar uma tabela com os valores de cpf, eps e sps, discutida a seguir.

(9)

Modelagem Conceitual de SF

Cálculo de da taxa de chegada (λ) e do tempo de serviço (μ)

Os dados de entrada para a simulação de Sistemas de Fila M/M/1 são:

● a taxa média de chegada (λ) ou os valores de ic de cada pacote

● a taxa média de serviço(μ) ou os valores de ts de cada pacote

As unidades de ic e ts são segundo/pacote (s/p). Os valores de ic = 1/λ e ts = 1/μ.

O valor de ic depende do modelo de negócio. O tamanho do pacote, usado para calcular o valor de ts, depende do serviço prestado, que depende também do modelo de negócio.

(10)

Modelagem Conceitual de SF

A figura abaixo é um infográfico da Nasdaq: DOMO de 11/08/2020, com o tráfego por minuto de plataformas e aplicativos mundiais. Com estes dados pode-se estimar o valor de ic destas plataformas e aplicativos, como ilustrado na tabela.

Plataforma Pacotes por Minuto λ (p/s) ic (s/p)

Amazon 6.659 111 0,00900

Facebook 150.000 2500 0,0004000

Zoom 208.333 3472 0,0002880

Instagram 347.222 5787 0,0001728

(11)

Modelagem Conceitual de SF

Estimar o tamanho máximo de um pacote do Instagram?

Comprimentos máximos de itens de uma mensagem do aplicativo Instagram, em caracteres:

● legendas: 2.200 caracteres

● hashtags: 30 hashtags de até 24 caracteres ● biografia: 150 caracteres

● nome de usuário: 30 caracteres

Tamanho máximo de um pacote do Instagram = 2200 + 30 x 24 + 150 + 30 B = 3100 B ≈ 3 KB

Vale destacar que pacotes são partes dos protocolos de comunicação. Quando os pacotes são muito pequenos, o tamanho dos protocolos de comunicação não precisam ser considerados.

(12)

Modelagem Conceitual de SF

Exemplo Estimar o tamanho máximo de um pacote do Twitter?

Comprimentos máximos de itens de uma mensagem do aplicativo Twitter, em caracteres, são destacados abaixo (sem DM):

● Tuíte: 140 caracteres ● Usuário: 15 caracteres

● Nome de perfil: 20 caracteres

Tamanho máximo de um pacote do Twitter = 140 + 15 + 20 B = 175 B

Observe que o datagrama do IPv6 (40 B) deve ser inserido no pacote do Twitter para fins de tráfego na Internet, desta forma, o pacote final terá 215 B.

O protocolo IPv6 representa 18,6% do tamanho do pacote final, o que é considerável.

(13)

Modelagem Conceitual de SF

A memória RAM GDDR6X da Nvidia GeForce RTX 3080 tem taxa de transferência de 19 Gb/s. Qual o tempo de serviço desta RAM para pacotes de 5 MB?

Tamanho do pacote = 5 MB Taxa de serviço:

Tempo de serviço:

Ou seja, esta memória pode transferir, aproximadamente, 486 pacotes de 5 MB a cada segundo; o tempo requerido para transferir um único pacote de 5 MB é 0,00205 s. μ=19Gb /s=19 Gb s pacote pacote= 19 Gb pacote pacote s = 19Gb 5 MB pps= 19×1024 Mb 5 M×8 b =486,4 pps ts=μ =1 1 486,4 pps=0,00205 s / p

(14)

Modelagem Conceitual de SF

A Nvidia GeForce RTX 3080 tem taxa bruta de 29,77 Teraflops (TFLOPS) de performance computacional. Qual o tempo de serviço desta placa para multiplicação de matrizes quadradas de tamanho 5000?

O tempo de execução para a multiplicação de matrizes quadradas de ordem n é O(n³) – algoritmos convencionais.

Tamanho do pacote = 5000³= 1,25e11 FLOP Taxa de serviço:

Tempo de serviço:

Ou seja, esta placa pode multiplicar, aproximadamente, 238 matrizes quadradas de ordem 5000 a cada segundo, a duração de uma única multiplicação é 0,00420 s. μ=29,77TFLOPS=29,77TFLOP s pacote pacote= 29,77 TFLOP pacote pps= 29,771012FLOP 1,25×1011FLOP pps=238,2 pps ts=μ =1 1 238,2 pps=0,00420 s/ p

(15)
(16)

Modelagem Conceitual de SF

Sejam N = 10 pacotes que chegam em um Sistema de Fila M/M/1 com intervalo entre chegadas:

ic = { 8, 5, 12, 15, 8, 11, 9, 10, 7, 6 },

e tempos de serviço:

ts = { 11, 10, 9, 12, 9, 11, 14, 8, 9, 10 },

ic e ts em segundos (s).

A simulação do sistema é feita conforme mostrado na tabela ao lado.

p

ic

ts

cpf eps sps

1

8

11

2

5

10

3

12

9

4

15

12

5

8

9

6

11

11

7

9

14

8

10

8

9

7

9

10

6

10

(17)

Modelagem Conceitual de SF

Valores Iniciais da Simulação

O estado inicial do Sistema de Fila:

● Fila vazia

● Servidor ocioso.

Para iniciar a contagem do tempo, o cronômetro é zerado:

(18)

Modelagem Conceitual de SF

p

ic

ts

cpf

eps

sps

0

0

0

1

8

11

2

5

10

3

12

9

4

15

12

5

8

9

6

11

11

7

9

14

8

10

8

9

7

9

10

6

10

valores iniciais da simulação t = cpf = eps = sps = 0

(19)

Modelagem Conceitual de SF

Valores Iniciais da Simulação

No exemplo, após 8 s chega o primeiro pacote:

p = 1, ic = 8 s/p, ts = 11 s/p

O pacote 1 chega na Fila em cpf = 8 s.

Como o Servidor está ocioso, ele recebe o pacote em eps = 8 s e demora 11 s para processá-lo, assim:

(20)

Modelagem Conceitual de SF

p

ic

ts

cpf

eps

sps

0

0

0

1

8

11

8

8

19

2

5

10

3

12

9

4

15

12

5

8

9

6

11

11

7

9

14

8

10

8

9

7

9

10

6

10

p = 1 eps[1] = ic[1]

eps[1] = cpf[1]

sps[1] = eps[1] + ts[1]

(21)

Modelagem Conceitual de SF

Cálculo de cpf

Quando o segundo pacote chega na Fila do sistema:

p = 2, ic = 5 s, ts = 10 s/p

O tempo transcorrido é a soma dos ic dos pacotes anteriores,

neste caso são 8+5 = 13 s/p. Esta soma é armazenada em

cpf, logo:

cpf[2] = cpf[1] + ic[2] = 8 + 5 = 11 s/p.

Generalizando:

(22)

Modelagem Conceitual de SF

p

ic

ts

cpf

eps

sps

0

0

0

1

8

11

8

8

19

2

5

10

13

3

12

9

25

4

15

12

40

5

8

9

48

6

11

11

59

7

9

14

68

8

10

8

78

9

7

9

85

10

6

10

91

cpf[p] = cpf[p-1] + ic[p], p > 1

(23)

Modelagem Conceitual de SF

Cálculo de eps

Quando o segundo pacote chega no Sistema de Fila, o Servidor pode estar ocioso ou ocupado.

Servidor Ocioso Servidor Ocupado

O Servidor recebe o pacote e o valor de eps é igual ao de cpf, ambos do segundo pacote.

O Servidor permanece ocupado até o tempo sps do pacote anterior e, assim, eps é igual ao valor de sps do pacote anterior

(24)

Modelagem Conceitual de SF

Cálculo de eps

Desta forma, para o cálculo de eps[p], p ∈ [2,N], é necessário considerar duas alternativas, a saber:

cpf[p] > sps[p-1] então eps[p] = cpf[p], o Servidor está ocioso e o pacote é

enviado a ele

cpf[p] ≤ sps[p-1] então eps[p] = sps[p-1], o pacote aguarda na Fila e será

enviado ao Servidor assim que ele finalizar o pacote anterior

Servidor Ocioso Servidor Ocupado

(25)

Modelagem Conceitual de SF

Na figura ao lado, estão representados três pacotes de um Sistema de Fila, Pi-2, Pi-1 e Pi. Cada pacote com seus três tempos

dos eventos discretos: ∎ - chegada de pacote na Fila (cpf), ∎ - entrada de pacote no Servidor (eps) e ∎ - saída de pacote do

Servidor (sps).

O valor de cpf de um pacote é calculado em função da taxa de chegada, já sps deste mesmo pacote depende da taxa de serviço e eps.

O valor de epsi depende do valor de spsi-1, ou seja, para

calcular epsi de um pacote é necessário o valor de sps do

pacote que o antecede.

Ao chegar no Sistema de Fila, o pacote será encaminhado ao Servidor se ele estiver ocioso. Servidor ocioso indica que o pacote anterior foi processado e, neste caso, cpfi > spsi-1. Por

outro lado, se o Servidor estiver ocupado então o pacote anterior ainda não foi processado e, neste caso, cpfi ≤ spsi-1.

Em termos matemáticos, o cálculo de eps de Pi-1 e Pi da figura acima é:

● epsi-1 = spsi-2 ● epsi = cpfi

(26)

Modelagem Conceitual de SF

eps[p] = cpf[p] > sps[p-1] ? cpf[p] : sps[p-1], p > 1

p

ic

ts

cpf

eps

sps

0

0

0

1

8

11

8

8

19

2

5

10

13

19

3

12

9

25

29

4

15

12

40

40

5

8

9

48

52

6

11

11

59

61

7

9

14

68

72

8

10

8

78

86

9

7

9

85

94

10

6

10

91

103

(27)

Modelagem Conceitual de SF

Cálculo de sps

Quando o segundo pacote sai do Servidor do Sistema de Fila,

o tempo transcorrido é igual ao valor de eps acrescido de ts,

ambos do segundo pacote.

(28)

Modelagem Conceitual de SF

p

ic

ts

cpf

eps

sps

0

0

0

1

8

11

8

8

19

2

5

10

13

19

29

3

12

9

25

29

38

4

15

12

40

40

52

5

8

9

48

52

61

6

11

11

59

61

72

7

9

14

68

72

86

8

10

8

78

86

94

9

7

9

85

94

103

10

6

10

91

103

113

sps[p] = eps[p] + ts[p], p > 1

(29)

Modelagem Conceitual de SF

(30)

Modelagem Conceitual de SF

Algoritmo para Calcular nf

Para calcular o valor de nf é necessário comparar os valores de cpf de

um dado pacote com os de sps dos pacotes anteriores. Considerando o Servidor inicialmente ocioso, tem-se:

o pacote p = 1, o primeiro a chegar no Sistema de Fila, vai

diretamente para o Servidor, isto é nf[1] = 0

quando o segundo pacote (p = 2) chegar no Sistema de Fila, o

Servidor pode estar ocioso ou ocupado. Se o Servidor estiver ocioso, não há pacote na Fila, então cpf[2] ≥ sps[1] e nf[2] = 0. Se o

Servidor estiver ocupado então cpf[2] < sps[1] e nf[2] = 1

o terceiro pacote (p = 3), ao chegar no Sistema de Fila, se cpf[3] ≥

sps[2] então o Servidor está ocioso e nf[3] = 0, caso contrário nf[3]

= 1, pelo menos o pacote 2 está na Fila. Se cpf[3] < sps[1] então o primeiro pacote ainda está na Fila e nf[3] = 2.

(31)

Modelagem Conceitual de SF

Algoritmo para Calcular nf

Generalizando, quando o p-ésimo pacote chega no Sistema de Fila, o tamanho da Fila nf[p] será igual à contagem dos casos em que cpf[p] <

sps[c].

n

f

[

p ]=

c =1 p−1

(32)

Modelagem Conceitual de SF

Algoritmo para Calcular nf

void Nf( int p ){ nf[p] = 0; for( int c = 0; c < p-1; c++ ) if( cpf[p] < sps[c] ) nf[p] += 1; } void Nf( int p ){ int c = p-1; nf[p] = 0; while( cpf[p] < sps[c] ){ nf[p] += 1; c--; } }

n

f

[

p ]=

c =1 p−1

1 , cpf [ p]<eps[c]

(33)

Modelagem Conceitual de SF

Algoritmo para Calcular U

A Utilização é a razão entre o tempo de ocupação do Servidor e o tempo da simulação.

O tempo que o Servidor fica ocupado durante a simulação igual a soma dos valores de ts durante todo processo e U pode ser estimada pela

equação:

U =

tempo de ocupaçãp do Servidor

tempo da simulação

U =

1

T

p=1 N

(34)

Modelagem Conceitual de SF

Algoritmo para Calcular U

U =

1

T

p=1 N

t

s

[

p]

T = sps[N-1];

Sx = 0;

for( int p = 0; p < N; p++ )

Sx += sps[p]-eps[p];

U = Sx/T;

p0 = 1-U;

t

s

[

p]=sps[ p ]−eps[ p]

(35)

Modelagem Conceitual de SF

Sumário do Modelo Conceitual de Sistemas de Filas

Entrada N, λ e μ

Parâmetros ic e ts, com ic = 1/λ e ts = 1/μ

Eventos cpf, eps, sps

Saída T, U, E[nf], E[tf], E[ts], E[tsf], U, DP[nf], DP[tf], DP[ts], DP[tsf]

p = 1 eps[1] = cpf[1] = ic[1]sps[1] = cpf[1] +ts[1]

2 ≤ p ≤ N cpf[p] = cpf[p-1] + ic[p]cpf[p] > sps[p-1] então eps[p] = cpf[p] senão eps[p] = sps[p-1] sps[p] = eps[p] + ts[p]

(36)

Modelagem Conceitual de SF

No Sistema de Fila M/M/1 simulado abaixo, com N = 10 pacotes,

ic(s/p) = {3, 5, 4, 3, 8, 5, 9, 8, 7, 6 } e ts(s/p) = { 12, 12, 10, 9, 2, 2, 1, 3, 2, 5 } p ic ts cpf eps sps nf tf tsf 1 3 12 3 3 15 0 0 12 2 5 12 8 15 27 1 7 19 3 4 10 12 27 37 2 15 25 4 3 9 15 37 46 2 22 31 5 8 2 23 46 48 3 23 25 6 5 2 28 48 50 3 20 22 7 9 1 37 50 51 3 13 14 8 8 3 45 51 54 4 6 9 9 7 2 52 54 56 1 2 4 10 6 5 58 58 63 0 0 5 58 58 19 108 166

(37)

Modelagem Conceitual de SF

Tem-se que T = sps[10] = 63 s.

O tempo de espera na Fila é dada por tf[p] = eps[p]-cpf[p].

Os valores de tf estão calculados na tabela acima: E[tf] = ∑tf[p]/N = 108/10 = 10,8 s. O tamanho médio da Fila é E[nf] = ∑nf[p]/N = 19/10 = 1,9 ou E[nf] = 2

A utilização U = ∑tps[p]/T = 58/63 = 0,921 ou U = 92,1%. O cálculo de p0 = 1-U = 0,079 ou p0 = 7,9%. O cálculo de E[tps] = ∑tps[p]/N = 58/10 = 5,8 s. p ic ts cpf eps sps nf tf tsf 1 3 12 3 3 15 0 0 12 2 5 12 8 15 27 1 7 19 3 4 10 12 27 37 2 15 25 4 3 9 15 37 46 2 22 31 5 8 2 23 46 48 3 23 25 6 5 2 28 48 50 3 20 22 7 9 1 37 50 51 3 13 14 8 8 3 45 51 54 4 6 9 9 7 2 52 54 56 1 2 4 10 6 5 58 58 63 0 0 5 58 58 19 108 166

(38)

Modelagem Conceitual de SF

Será calculado o valor de nf[8] a título de exemplo, neste caso nf[8] = 4:

o pacote 8 chegou na Fila no tempo cpf[8] = 45 s e entrará no Servidor no tempo sps[7] = 51 s, ou seja, no

tempo 51 s ela está na Fila pois cpf[8] < sps[7]

o pacote 7 chegou na Fila no tempo cpf[7] = 37 s e entrará no Servidor no tempo sps[6] = 50 s, ou seja, no

tempo 37 s ela está na Fila pois cpf[7] < sps[6]

o pacote 6 chegou na Fila no tempo cpf[6] = 28 s e entrará no Servidor no tempo sps[5] = 48 s, ou seja, no

tempo 28 s ela está na Fila pois cpf[6] < sps[5]

o pacote 5 chegou na Fila no tempo cpf[5] = 23 s e entrará no Servidor no tempo sps[4] = 46 s, ou seja, no

tempo 23 s ela está na Fila pois cpf[5] < sps[4]

o pacote 4 chegou na Fila no tempo cpf[4] = 15 s e entrará no Servidor no tempo sps[3] = 37 s, ou seja, no

tempo 15 s ela não está na Fila pois cpf[7] > sps[3]

os pacotes anteriores já foram processados em sps[7] = 51 s.

p ic ts cpf eps sps nf tf tsf 1 3 12 3 3 15 0 0 12 2 5 12 8 15 27 1 7 19 3 4 10 12 27 37 2 15 25 4 3 9 15 37 46 2 22 31 5 8 2 23 46 48 3 23 25 6 5 2 28 48 50 3 20 22 7 9 1 37 50 51 3 13 14 8 8 3 45 51 54 4 6 9 9 7 2 52 54 56 1 2 4 10 6 5 58 58 63 0 0 5 58 58 19 108 166

(39)
(40)

Exercícios

Preencha o quadro abaixo para:

N = 10 pacotes, ic(s/p) = { 3, 5, 4, 6, 5, 7, 6, 1, 5, 9 } e ts(s/p) = { 6, 8, 9, 9, 8, 2, 7, 4, 3, 5 } p ic ts cpf eps sps nf tf tsf 1 2 3 4 5 6 7 8 9 10

(41)

Exercícios

Preencha o quadro abaixo para:

N = 10 pacotes, ic(s/p) = { 3, 7, 6, 1, 5, 9, 5, 4, 6, 5 } e ts(s/p) = { 6, 8, 7, 4, 3, 5, 9, 9, 8, 2 } p ic ts cpf eps sps nf tf tsf 1 2 3 4 5 6 7 8 9 10

(42)

Avaliação 1

1.Explique a figura abaixo, o que ela representa e qual sua

aplicação no Modelo Analítico de SF.

Responda em até 5 minutos e envie sua resposta para o

e-mail [email protected].

(43)

Fragata

Referências

Documentos relacionados

TABELA 7 – Produção de massa fresca e seca das plantas de almeirão, cultivadas sob três e quatro linhas por canteiro, em cultivo solteiro e consorciado, na

No final, os EUA viram a maioria das questões que tinham de ser resolvidas no sentido da criação de um tribunal que lhe fosse aceitável serem estabelecidas em sentido oposto, pelo

Todas as outras estações registaram valores muito abaixo dos registados no Instituto Geofísico de Coimbra e de Paços de Ferreira e a totalidade dos registos

insights into the effects of small obstacles on riverine habitat and fish community structure of two Iberian streams with different levels of impact from the

Taking into account the theoretical framework we have presented as relevant for understanding the organization, expression and social impact of these civic movements, grounded on

Realizar a manipulação, o armazenamento e o processamento dessa massa enorme de dados utilizando os bancos de dados relacionais se mostrou ineficiente, pois o

O fortalecimento da escola pública requer a criação de uma cultura de participação para todos os seus segmentos, e a melhoria das condições efetivas para

intitulado “O Plano de Desenvolvimento da Educação: razões, princípios e programas” (BRASIL, 2007d), o PDE tem a intenção de “ser mais do que a tradução..