avaliação de desempenho de sistemas discretosreinaldo/adsd_files/analise_operacional_2... ·...
TRANSCRIPT
16/12/2013
1
Parte V: Análise Operacional
Professor: Reinaldo [email protected]
Avaliação de Desempenho de Sistemas Discretos
Leis Operacionais
� Relações existentes no sistema que não dependem de nenhuma suposição sobre seu funcionamento� Distribuição dos tempos de serviço/tempo entre chegadas
� Regras gerais e “robustas” que são muito úteis porque:� Muito simples
� Baseadas em dados obtidos facilmente
� Fornecem métricas de desempenho úteis
� “The operational analysis of queueing network models”, P.J. Denning e J.P. Buzen, Computing Surveys, vol. 10, No. 3, September 1978, pp.225-261� Estabelece relações entre quantidades baseadas em dados que
podem ser medidos ou conhecidos
16/12/2013
2
Parâmetros Operacionais
� Representam as informações que podem ser medidas durante um intervalo de observação finito� Valores diferentes podem ser obtidos de uma observação para outra
� Básicos: valores medidos diretamente durante um período de observação finito� Número de fregueses, quantidade de fregueses em fila, ...
� Secundários: Calculados através dos valores obtidos pelos parâmetros básicos� Utilização dos servidores, tempo médio de serviço, ...
Caixa Preta
Parâmetros Operacionais
T = intervalo de observação Ai = número de chegadas
Ci = número de conclusões Bi = tempo de ocupação
Taxa de chegadas
Vazão
Utilização
Tempo médio de serviço
16/12/2013
3
Parâmetros Operacionais
� Exemplo 1� Durante um período de observação de 1 minuto, um
único recurso (ex., CPU) esteve ocupado por 36 segundos. Um total de 1800 transações chegaram ao sistema. O número total de transações processadas também foi 1800. Determine:� A taxa de chegadas
� O tempo médio de serviço por transação
� A utilização do sistema
� A vazão do sistema
Parâmetros Operacionais
� Exemplo 1� T = 60s
� B1 = 36s
� A1 e C1 = 1.800 transações
� S1 = B1 / C1 = 36/1800 = 1/50 s por transação
� U1 = B1 / T = 36/60 = 60%
� λ1 = A1 / T = 1800/60 = 30 tps
� X1 = C1 / T = 1800/60 = 30 tps
16/12/2013
4
Leis Operacionais
� Relações Fundamentais� Lei da Utilização
� Lei da Demanda de Serviço
� Lei do Fluxo Forçado
� Lei de Little
� Lei do Tempo de Resposta Geral
� Lei do Tempo de Resposta Interativa
Lei da Utilização
� Utilização
� Se Ci = Ai (todos os fregueses foram atendidos –sistema aberto), então Xi = λi, tendo:
16/12/2013
5
Lei da Utilização
λ tps X tps
S
U
(Tempo Ocupado /No. Transações)= B / C
(No. Transações /
Intervalo Observação) = C / T
Lei da Utilização
X = C / T
λ X ped./s
S
U
U = B / T
S = B / C
ped./s
U = S * X
16/12/2013
6
Lei da Utilização
� No caso do recurso i possuir mi servidores, temos que a utilização é obtida através de:
� Se o sistema considerar a chegada de fregueses através de múltiplas classes de serviço:
Lei da Utilização
� Exemplo 2� A capacidade de um canal de comunicação é 56 Kbps e é
usado para transmitir pacotes de 1.500 bytes à taxa de 3 pacotes/s. Qual a utilização deste canal?
� Inicie identificando as variáveis operacionais fornecidas ou que podem ser obtidas dos dados� A vazão do recurso X1 é 3 pacotes/s
� O tempo médio serviço (transmissão) por pacote� Cada pacote tem 1500 bytes = 12000 bits = 12 Kbits
� 12 kbits / 56 kbps = 0,214 segundos / pacote = S1
� Lei da utilização: S1 * X 1 = 0,214 * 3 = 0,642 = 64,2%
16/12/2013
7
Lei da Utilização
� Exemplo 3� Um servidor de BD tem uma CPU e três discos. Todas as
transações tem demandas semelhantes para os recursos e o servidor BD recebe demanda constante de serviço (modelo com RF fechada). Medições feitas em uma hora indicam 13680 transações executadas, com o número de r/w por segundo e utilização de cada disco como segue:� Disco1: 24 r/s + 8 w/s = 32 IO/s e U1 = 0,30
� Disco2: 28 r/s + 8 w/s = 36 IO/s e U2 = 0,41
� Disco3: 40 r/s + 10 w/s = 50 IO/s e U3 = 0,54
� Qual o tempo médio por pedido gasto em cada disco?
� Qual a vazão do SBD?
Lei da Utilização
� Exemplo 3� A vazão de cada disco, Xi (i = 2,3,4) é o número total
de IO / s (a CPU é recurso 1)
� Usando a Lei de Utilização, os tempos médios de serviço são:
� S2 = U2 / X2 = 0,30 / 32 = 0,0094 s
� S3 = U3 / X3 = 0,41 / 36 = 0,0114 s
� S4 = U4 / X4 = 0,54 / 50 = 0,0108 s
� A vazão, X0, do sistema é C0 / T = {13.680 transações / [1h (=3.600 s)]} = 3,8 tps
16/12/2013
8
Lei da Utilização
� Exemplo 4� Uma rede transmite 1000 pacotes/segundo. Cada
pacote tem um tempo médio de transmissão = 0.15 msec. Qual é a utilização deste rede?
� Solução 4: Da Lei da Utilização� 1000 x 0.00015 = 0.15 = 15%
Lei da Demanda de Serviço
� Demanda de Serviço associada a um recurso + conjunto de solicitações (demandas) ao recurso
� Demanda de Serviço = Di é o tempo médio total gasto por um pedido típico de certo tipo no recurso i (podemos definir Di,r para múltiplas classes)� Soma de todos os tempos de serviços nas “visitas” do
pedido (freguês) ao recurso� Calculada diretamente da utilização do recurso e vazão do sistema
� Não inclui tempo de espera em fila (apenas “serviço”)
� No caso de vários pedidos visitando o recurso, a demanda de serviço é a média das somas dos tempos de serviço para cada tipo de pedido naquele recurso
16/12/2013
9
Lei da Demanda de Serviço
� Exemplo 5� 6 transações realizam 3 operações de I/O em disco
� Tempo (ms) para cada I/O e transação (T1-6):
IO1 T1=10; T2=15; T3=13; T4=10; T5=12; T6=14
IO2 T1=12; T2=12; T3=12; T4=11; T5=13; T6=12
IO3 T1=11; T2=14; T3=11; T4=11; T5=11; T6=13
Soma 33 41 36 32 36 39
Média = 36,2 (ms)
� Esta é a demanda de serviço no disco devido à carga das 6 transações
Lei da Demanda de Serviço
X0= (C0 / τ ) tps
U
S1S2S3S4
Demanda de serviço (D)
D = (Ui * τ) / C0 = Ui / (C0 / τ) = Ui / X0
16/12/2013
10
Lei da Demanda de Serviço
U
S1S2S3S4
Demanda de serviço (D)
Di = Σ Si = Vi Sii
1
Lei da Demanda de Serviço
� Exemplo 6� Um Servidor Web (SW) é monitorado por 10 minutos
(600s) e a sua CPU apresenta 90% de utilização (neste intervalo). O log do SW revela que 30.000 pedidos são processados no intervalo. Qual a demanda de serviço da CPU para o SW?
� Τ = 600s
� X0 = 30000 / 600 = 50 pedidos/s
� UCPU = 0,9
� DCPU = UCPU / X0 = 0,9/50 = 0,018 s/pedido
16/12/2013
11
Lei do Fluxo Forçado
� Maneira simples de relacionar vazão do recurso i (X i) com a vazão do sistema (X0)� Igual ao número de visitas de um pedido (freguês) a
aquele recurso vezes a vazão do sistema� Em um sistema aberto a vazão é o número de transações
que deixam o sistema por unidade de tempo
� Em sistemas fechados a vazão é o número de transações que voltam para a entrada do sistema por unidade de tempo
� X i = Vi * X 0
� No caso de múltiplas classes: Xi,r = Vi,r * X 0,r
� A taxa de visita pode ser obtida através de:
Lei do Fluxo Forçado
� Exemplo 7� Qual o número médio de I/Os em cada disco do
Exemplo 3?
� Solução 7Vi = Xi / X0, assim:
V1= 32 / 3,8 = 8,4 visitas ao disco 1 por transação ao BD
V2= 36 / 3,8 = 9,5
V3= 50 / 3,8 = 13,2
16/12/2013
12
Lei de Little
� Indica o número médio de clientes em um dispositivo
BAR
No. médio defregueses noBAR
= Taxa médiade chegadasao BAR
XTempo médiogasto no BAR
Lei de Little
W S
R
λ tps X tps
λλλλ = Taxa média de chegada de fregueses (transações)
X = Vazão média
W = Tempo médio de espera
S = Tempo médio de serviço
R = Tempo médio de resposta
16/12/2013
13
Lei de Little
� Aplicação a filas únicas
λ X
N
N = λR = X R
Equilíbrio ⇒ λ = XR
Lei de Little
� Algumas observações� Aplicável a qualquer “caixa preta”
� À fila
� Ao servidor
� Ao sistema: fila + servidor
� Sistema com múltiplos recursos
16/12/2013
14
Lei de Little
� Exemplo 8� Considere um grande portal que oferece serviços
gratuitos de e-mail para 1.5 milhão de fregueses. Durante o horário de pico, a gerência estima que 15% dos fregueses estão ativos.
� Cada freguês envia uma média de 4.5 e-mails por hora (3600 s) neste horário. O tamanho médio das mensagens de e-mail é 8400 bytes. Cada mensagem leva 4 segundos para ser processada e despachada.
� Qual deve ser o tamanho médio da área de spool de e-mails?
Lei de Little
� Exemplo 8 – Solução� Vazão= fregueses ativos x e-mails / s
� Vazão = (1500000 x 0.15) x (4.5 / 3600)
� Vazão = 281.25 e-mails / s
� Lei de Little� n = X * R
� No_de e-mails = Vazão x Tempo de Processamento
� No_de e-mails = 281.25 e-mails/s * 4 s = 1125
� Tamanho médio da área de Spool = 1125 x 8400 = 9.01 MB
16/12/2013
15
Lei de Little
� Exemplo 9 (Atraso em roteador)� Relatórios SNMP para o roteador 373.57.7.300
informam uma fila média de 3.0 datagramas e uma vazão medida de 380 kB/segundo.
� O datagrama IP tem em média 1200 bytes
� Qual o atraso médio de processamento neste roteador?
Lei de Little
� Exemplo 9 (Atraso em roteador) – Solução� Usando a Lei de Little
� Tamanho médio de fila = Vazão * Atraso médio
� Atraso médio = Tamanho médio de fila / Vazão
� Tamanho médio de fila = 3.0 Datagramas * 1.200 BpDatagrama = 3600 Bytes
� Atraso médio = 3600 Bytes / 380 kBps = 9.47 msec
16/12/2013
16
Lei do Tempo de Resposta Geral
� Utilizado para calcular o tempo de resposta em sistemas onde temos um terminal por usuário e o resto do sistema é dividido por todos eles, o que permite o tratamento de sistemas não balanceados
� Se considerarmos a Lei de Little (Q = X*R) no subsistema central teremos:
Q = Q1 + Q2 + ... + QN, ou
XR = X1R1 + X2R2 + ... + XNRN
...Sistema Central
Lei do Tempo de Resposta Geral
� Se dividirmos os dois lados por X, teremos:
� Pela Lei do Fluxo Forçado temos que Xi = XVi , portanto Vi = Xi/X
� Podemos então simplificar a expressão acima para:
Ou simplesmente:
16/12/2013
17
Lei do Tempo de Resposta Interativa
� Um sistema interativo, devemos considerar 4 características: o número de clientes usando o sistema (M), o “think time” (Z), o tempo médio de resposta do servidor (R) e vazão do sistema (X0)� M = M + N (No. Médio de clientes nos terminais + No.
Médio de fregueses no servidor)
� Pela Lei de Little: M = X0 * Z e N = X0 * R
Logo:
Lei do Tempo de Resposta Interativa
� Exemplo 10� Um portal corporativo provê serviços Web para os
funcionários da empresa. Em média, 500 empregados estão online navegando no portal a qualquer instante. O log do portal revela que 6.480 pedidos são processados por hora (em média) e o “tempo médio de processamento” é de 5s
� Qual é o tempo médio entre a chegada de resposta a um pedido e um novo pedido ser submetido por um funcionário?
Lei do Tempo de Resposta Interativa
16/12/2013
18
� Exemplo 10 – Solução� Precisamos calcular Z
� R = M/X0 – Z
� A vazão X0 = 6480 / 3600 = 1.8 pedidos / s
� M: o número de funcionários online = 500
� Z = M/Xo – R = 500 / 1.8 – 5 = 273 s
Lei do Tempo de Resposta Interativa
� Exemplo 11 - Sistema fechado� Suponha que 50 estações-de-trabaho são servidas por
um servidor de arquivos com fila única e que cada estação faz processamento independente (“think time”) por 0.5 s em média entre pedidos consecutivos ao servidor
� O servidor de arquivos atende a 80 pedidos/s (X0 = 80)
� Qual o tempo de resposta?
� Solução 11� R = M/X0 - Z = 50 / 80 - 0.5 = 0.125 s
Lei do Tempo de Resposta Interativa
16/12/2013
19
Leis Operacionais - Resumo
� Lei da Utilização
� Lei da Demanda de Serviço Di = Ui / X0
� Lei do Fluxo Forçado Xi = Vi * X 0
� Lei de Little N = λ*R ou N = X*R
� Lei do Tempo de Resposta Geral
� Lei do Tempo de Resposta Interativa
Limites de Desempenho
� As Leis Operacionais nos oferecem um conjunto de medidas de desempenho relacionadas com os parâmetros usados no modelo
� Informações sobre os limites possíveis para o sistema são extremamente importantes� Verificar se a carga máxima do sistema suporta a
demanda que será passada para ele
� Verificar se um limite para o tempo de resposta pode ser atendido
� Verificar se um determinado recurso suporta a carga de trabalho necessária
16/12/2013
20
Limites de Desempenho
� Principais Limites� Limites superiores para a vazão
� Limites inferiores para tempo resposta
� Limite de utilização (dispositivo de gargalo)
� O cálculo desses limites podem:� Ser obtidos sem resolver modelo
� Levar em consideração a demanda de serviço
� Considerar o gargalo� Recurso com maior utilização ou com maior demanda de
serviço
Dispositivo de Gargalo
� Combinando a Lei do Fluxo Forçado com a Lei da Utilização, nós temos:
Utilização do i-ésimo dispositivo é:
� Onde representa a demanda total de serviço no dispositivo para todas as visitas de uma transação
� O dispositivo que possuir o maior valor de Di tem a maior utilização e será o gargalo do sistema
16/12/2013
21
Dispositivo de Gargalo
� Comentários� Dispositivos de delay podem possuir utilizações mais
altas sem gerar nenhum problema no funcionamento do sistema, portanto, eles não representam gargalos
� Apenas servidores entram no cálculo do maior Di
� O gargalo do sistema é o limitador para se obter uma maior vazão, portanto:� Melhorar o funcionamento do gargalo do sistema tende a
trazer mais benefícios do que melhorar o desempenho de outros componentes
� A identificação do gargalo deve ser um dos primeiros passos do em uma avaliação de desempenho
Limite para a vazão
� O limite para a vazão de um sistema é obtido através de X0, que é representado pela expressão
� Para um sistema com uma carga de trabalho elevada temos que o limite superior para a vazão é obtido através de:
X0 ≤ 1 / max {Di}
� Onde o valor de Di se refere ao gargalo do sistema
16/12/2013
22
Limite para a vazão
� Se considerarmos que um sistema possui carga de trabalho leve, com N fregueses em execução concorrente, ao aplicarmos a Lei de Little teremos:
N = R * X0
� Mas, para um sistema com K recursos, o tempo de resposta R é pelo menos a soma das demandas de serviço (na ausência de filas)
ouSistemaInterativo
Limite para a vazão
� Exemplo 12� Considere o SBD do problema 3. Assuma que a
demanda de serviço na CPU seja fixada em 0,092 s (utilização de 35% e vazão do sistema X0 = 3.8 tps –vide Problema 3) . Quais valores das demandas de serviço nos 3 discos produzem a maior vazão possível do sistema (enquanto mantém constante a soma das demandas nos 3 discos)?
� OBS: Problema acima é de balanceamento de carga (i.e., maximizar a vazão pelo deslocamento de carga entre os discos)
16/12/2013
23
Limite para a vazão
� Exemplo 12 – Solução� A demanda máxima de serviço determina a vazão máxima
� Como a CPU não é o gargalo (UCPU = 35% vs. 30%, 41% e 54% - vide Solução 3), vazão máxima é obtida quando a demanda em cada disco é igual à média dos valores iniciais� DCPU= UCPU / X0 = 0,35 / 3,8 = 0,092 s
� D1 = U1 / X0 = 0,30 / 3,8 = 0,079 s
� D2 = U2 / X0 = 0,41 / 3,8 = 0,108 s
� D3 = U3 / X0 = 0,54 / 3,8 = 0,142 s
� No caso acima, vazão máxima = 1 / 0,142 = 7,04 tps
� D1 = D2 = D3 = média (0,079+0,108+0,142)/3 = 0,1097 s
� Vazão máxima neste caso = 1 / 0,1097 = 9,12 tps (29,5% a mais. Alcançado apenas com balanceamento)
Limite para tempo de resposta
� Considerando novamente a Lei de Little, temos que o tempo de resposta é:
R = N / X0
� Pelo limite de vazão do sistema sabemos que X0
corresponde a , portanto:
logo
16/12/2013
24
Limite para tempo de resposta
� Exemplo 13� Se considerarmos novamente o servidor BD do
problema 3, qual o limite inferior para o tempo de resposta do sistema?
� Solução� A soma das demandas de serviço é
(0,092+0,079+0,108+0,142) = 0,421; com o máximo de 0,142 s
� Os limites para TR são portanto:� R ≥ max [0,142 * N, 0,421]