You are on page 1of 112

Avaliao de Desempenho de Sistemas

Copyright 2016 by Brauliro Gonalves Leal


O contedo deste livro eletrnico totalmente livre para uso de qualquer natureza desde que
citado a fonte. Toda e qualquer parte desta publicao pode ser reproduzida, distribuda ou
transmitida de qualquer forma ou por qualquer meio, ou armazenada de qualquer forma ou em
qualquer sistema desde que reconhecida a autoria.
Atribuio-CompartilhaIgual - esta licena permite que outros remixem,
adaptem e criem a partir deste trabalho, mesmo para fins comerciais, desde
que lhe atribuam o devido crdito e que licenciem as novas criaes sob
termos idnticos (creativecommons.org/licenses).

Sobre o autor:
Professor do Colegiado de Engenharia da Computao Universidade Federal do Vale do So
Francisco Avenida Antnio Carlos Magalhes, 510 Santo Antnio 48.902-300 Juazeiro - BA Brasil
e-mail: brauliro.leal@univasf.edu.br
site: www.univasf.edu.br/~brauliro.leal
telefone: 74 2102 7636
Primeira Edio Eletrnica: Junho de 2016
ISBN: a ser feito#

Avaliao de Desempenho de Sistemas

Avaliao de Desempenho de Sistemas

Avaliao de Desempenho de Sistemas

Prefcio
Este livro tem como principal objetivo o de servir de texto para a disciplina
de Avaliao de Desempenho de Sistemas do curso de Engenharia da
Computao do Colegiado de Engenharia da Computao da Universidade
Federal do Vale do So Francisco.
Este texto busca responder as questes:

O que se entende por Avaliao de Desempenho de Sistemas?


Que parmetros so utilizados para quantific-la e qualific-la?
Quais so seus conceitos fundamentais?
Como a anlise de casos particulare podem levar a concluses mais amplas?
Quais perguntas centrais deste assunto podem ser respondidas?
Quais so suas limitaes?
Quais respostas no se pode encontrar a partir destes conceitos?
Como e quando usar os conceitos da Avaliao de Desempenho de Sistemas?

O autor espera que tenha contribuido com o ensino destes contedos de


modo a torn-los mais atraentes, visuais, dinmicos e aplicados nas
diversas reas de conhecimento, quando cabvel.

Avaliao de Desempenho de Sistemas

1. Introduo
O desempenho um critrio fundamental na concepo, aquisio e
utilizao de sistemas computacionais. Por outro lado, obter o melhor
desempenho para um determinado custo um dos objetivos da
Engenharia da Computao e, para alcan-lo, necessrio ao menos um
conhecimento bsico da terminologia da avaliao de desempenho, seus
princpios e suas tcnicas.
Os Engenheiros da Computao e demais profissionais da rea devem ser
capazes de indicar os requisitos de desempenho dos seus sistemas e de
comparar diferentes alternativas para encontrar aquela que melhor atenda
as necessidades em pauta.
Os Sistemas de Computao envolve software e hardware e, infelizmente,
so to numerosos que no possvel ter uma medida padro de
desempenho, um ambiente de medio padro (aplicao) ou uma tcnica
padro para todos os casos.
A avaliao de desempenho tambm uma arte, embora possua
conceitos, tcnicas, critrios de avaliao e metodologias bem
estabelecidas. A utilizao adequada destes recursos permite evitar erros
comumente observados em projetos de avaliao de desempenho.
A avaliao de desempenho requer as mtricas, tcnicas e ambiente de
medio. A seleo da tcnica e da mtrica de avaliao so passos
essenciais em todos os projetos de avaliao de desempenho. H muitas
consideraes que esto envolvidas na seleo correta destes itens, elas
so apresentadas a seguir. As mtricas de desempenho comumente
utilizadas tambm so definidas abaixo. Finalmente, uma abordagem para
o problema de especificar os requisitos de desempenho apresentada.
1.1. Tcnicas de Avaliao de Desempenho de Sistemas
As tcnicas de avaliao de desempenho de sistema de computao so
simulao, modelagem analtica e medio, Figura 1.1.
Avaliao de Desempenho de Sistemas

Figura 1.1 - Tcnicas de Avaliao de Desempenho.


H uma srie de consideraes que ajudam a decidir a tcnica a ser
utilizada e esto listadas na Tabela 1.1, ordenadas do mais para o menos
importante.
Tabela 1.1 - Critrios para seleo de tcnicas de avaliao ordenada do mais para o menos
importante
Critrio
Fase
Tempo necessrio
Ferramenta
Preciso
Avaliao do trade-off1
Custo
Negociao

Modelagem Analtica
qualquer
pequeno
analistas
baixo
fcil
mdio
mdia

Simulao
qualquer
mdio
linguagem de programao
moderado
moderado
pequeno
baixa

Medio
ps-prototipao
varia
instrumentao
varia
difcil
alto
alta

A questo fundamental para decidir a tcnica de avaliao a fase do


ciclo de vida no qual o sistema se encontra. As medies so possveis
apenas se algo semelhante ao sistema proposto j existe, como na
concepo de uma verso melhorada de um produto.
Se for um novo conceito, a modelagem analtica e a simulao so as
nicas tcnicas possveis. Modelagem analtica e simulao podem ser
usadas nas situaes em que a medio no possvel, mas, em geral,
mais convincente para as outras pessoas se a modelagem analtica ou
simulao se basearem em medidas.
A prxima considerao o tempo disponvel para a avaliao. Na maioria
das situaes, os resultados so necessrios para ontem. Se este for o
caso, a modelagem analtica provavelmente a opo indicada.
1 trade-off - ato de escolher uma coisa em detrimento de outra, e pode ser traduzida
como perde/ganha, se relaciona com a anlise de benefcio/custo.
Avaliao de Desempenho de Sistemas

Simulaes podem levar um longo tempo. O tempo necessrio para as


medies o mais varivel dentre as trs tcnicas.
A prxima considerao a disponibilidade de ferramentas. As
ferramentas incluem habilidades para modelagem, linguagens de
simulao e instrumentos de medio. Muitos analistas de desempenho
so hbeis na modelagem e evitam trabalhar em sistemas reais. Outros
no, so to proficientes em teoria das filas que preferem medir ou
simular. A falta de conhecimento de linguagens e tcnicas de programao
faz com que muitos analistas evitem a simulao.
O nvel de preciso desejada outra considerao importante. Em geral, a
modelagem analtica exige simplificaes e suposies que podem levar a
resultados pouco preciso. Simulaes podem incorporar mais detalhes e
exigem menos hipteses que a modelagem analtica e, portanto, com
mais frequncia esto mais prximos da realidade. As medies, embora
soem como algo real, tambm podem dar resultados pouco preciso,
simplesmente porque muitos dos parmetros do ambiente tais como a
configurao do sistema, a carga de trabalho e o momento da medio,
podem ser exclusivos para o experimento. Alm disso, os parmetros
podem no representar o conjunto das variveis encontradas no mundo
real. Assim, a preciso da tcnica de medio pode variar
significativamente e conduzir a concluses errneas.
Modelos analticos geralmente fornecem o melhor conhecimento sobre os
efeitos dos vrios parmetros e suas interaes. Com simulao possvel
pesquisar o espao de valores de parmetro para a combinao ideal mas,
muitas vezes, no fica claro o trade-of destes parmetros. A medio a
tcnica menos desejvel a este respeito. No fcil dizer se o melhor
desempenho o resultado de algumas mudanas aleatrias no ambiente
ou devido a uma configurao particular do parmetro.
Os custos do projeto tambm so importantes. A medio requer um
equipamento real, instrumentos e tempo sendo a mais cara das trs
tcnicas. Custos, junto com a facilidade de poder alterar as configuraes
, em muitos casos, a razo para que o desenvolvimento de simulaes de
sistemas sejam mais baratos.
A negociao dos resultados , provavelmente, a justificativa essencial
quando se consideram as despesas e o trabalho de medies. muito
mais fcil convencer os outros utilizando medio real. A maioria das
pessoas fica ctica diante de resultados analticos, simplesmente porque
no entendem a tcnica ou o resultado final. Na verdade, as pessoas que
desenvolvem novas tcnicas de modelagem analtica muitas vezes
utilizam simulaes ou medies reais para valid-las.
s vezes til usar duas ou mais tcnicas simultaneamente. Por exemplo,
pode-se usar a simulao e modelagem analtica em conjunto para
verificar e validar os resultados de cada um. Isso nos leva s seguintes
trs regras de validao:
Avaliao de Desempenho de Sistemas

1. no confie nos resultados de um modelo de simulao at que eles tenham sido


validados por modelos analticos ou de medies
2. no confie nos resultados de um modelo analtico antes de terem sido validadas
por um modelo de simulao ou de medies
3. no confie nos resultados de uma medio at que eles tenham sido validados por
simulao ou modelagem analtica.

Em particular, a necessidade da terceira regra sobre a validao dos


resultados das medies deve ser enfatizada. Este a mais comumente
ignorada das trs regras. As medies so to suscetveis a erros
experimentais e bugs quanto as outras duas tcnicas.
O nico requisito para validao que os resultados no devem ser contra
o bom senso. Este mtodo de validao, chamado intuio do especialista
ou perito, comumente usado para modelos de simulao. Este e outros
mtodos de validao podem ser utilizados para a medio e anlise dos
resultados.
Duas ou mais tcnicas tambm podem ser usadas sequencialmente. Por
exemplo, um modelo analtico simples usado para encontrar o intervalo
adequado para os parmetros do sistema e uma simulao utilizada
mais tarde para estudar o desempenho nesse intervalo. Isso reduz o
nmero de simulao e pode resultar em um uso mais produtivo dos
recursos.
1.2. Mtricas de Avaliao de Desempenho de Sistemas
A medida de desempenho de um sistema de computao depende da
capacidade,
velocidade
e
compatibilidade
de
seus
diferentes
componentes. Para atender a combinao destes fatores e os diferentes
componentes dos sistemas de computao foram desenvolvidos vrios
meios de medir desempenho. De modo geral, as medidas de desempenho
so taxas, fluxos ou medidas temporais. Pode-se medir o desempenho do
sistema como um todo ou de seus componentes isoladamente ou em
conjuntos.
Para cada estudo de desempenho de um sistema, um conjunto de critrios
de desempenho e mtricas deve ser escolhido. Uma maneira de identificlos fazer uma lista dos servios oferecidos pelo sistema. H vrios
resultados possveis para cada solicitao de servio feitas ao sistema.
Geralmente, estes resultados podem ser classificados em trs categorias,
conforme mostrado na Figura 1.2.

Avaliao de Desempenho de Sistemas

Figura 1.2 - Trs possveis resultados de uma solicitao de servio.


O sistema pode executar o servio corretamente, incorretamente, ou no
realizar o servio. Por exemplo, considerando um gateway em uma rede
de computadores que oferece o servio de encaminhamento de pacotes
para os destinos especificados em redes heterogneas. Quando ele recebe
um pacote para ser enviado, o servio pode ser executado:
1. corretamente, sucesso
2. incorretamente, fracasso parcial
3. no ser executado, fracasso total

Quando ele recebe um pacote, ele pode receb-lo corretamente, ele pode
receb-lo de forma incorreta ou pode no receb-lo. As mtricas
associadas aos trs resultados, ou seja, servio bem-sucedido, com erro e
no executado, so tambm chamadas mtricas de velocidade,
confiabilidade e disponibilidade.
A maioria dos sistemas oferece mais de um servio e, portanto, o nmero
de mtricas cresce proporcionalmente uma vez que cada um destes
servios possui uma srie de mtricas de velocidade, uma srie de
mtricas de confiabilidade e uma srie de mtricas de disponibilidade.
O recurso com a maior utilizao chamado de gargalo. Melhorar o
desempenho deste recurso oferece o maior retorno. Conhecer a utilizao
dos vrios recursos do sistema uma parte importante da avaliao de
desempenho.

Avaliao de Desempenho de Sistemas

Uma nica falha pode comprometer todo o funcionamento do sistema. Para evitar essa
situao, h os sistemas tolerantes a faltas, mas isso pode afetar seu tempo de servio e
dificultar seu projeto, desenvolvimento e manuteno. Uma outra maneira de contornar as
falhas adicionar redundncias com o inconveniente de aumentar o consumo de energia e a
complexidade de gerenciamento. Ao final, os custos associados com a confiabilidade so, em
ltima instncia, transferidos para os usurios finais.

1.2.1. Mtricas de Velocidade


Se o sistema executa o servio corretamente, seu desempenho medido
pelo tempo necessrio para executar o servio, a taxa na qual o servio
realizada e os recursos consumidos durante a execuo do servio. Estas
trs medidas relacionadas ao desempenho bem-sucedido do servio, o
tempo, a taxa e os recursos utilizados, so tambm chamadas tempo de
resposta, vazo e utilizao, respectivamente.
Por exemplo, a resposta de um gateway de rede medida por seu tempo
de resposta, o intervalo de tempo entre a chegada de um pacote e a sua
entrega bem-sucedida. A vazo do sistema medida pelo nmero de
transferncias, pacotes transmitidos ou recebidos, por unidade de tempo.
Este valor d uma indicao da percentagem de tempo que os recursos do
gateway esto sendo usados para o nvel de carga, que a utilizao.
1.2.1.1. Tempo de Resposta
O tempo de resposta (turn-around time) definido como o intervalo entre
o instante em que a tarefa submetida ao sistema e o momento em que
produz a sada completa e a tarefa se encerra. uma mtrica interessante
por representar a performance do ponto de vista do usurio, que submete
sua tarefa e espera algum tempo at que ela seja executada.
Os valores mdios do tempo de resposta podem ser influenciados pelos
seus valores extremos. Tarefas com tempo de respostas pequenos e outras
com tempo de resposta muito longos, podem ter seus valores mdios
afetados por estes valores ou muito grandes ou muito pequenos.
O tempo de resposta mdio deve ser calculado por meio da mdia
geomtrica que tem a caracterstica de ser menos influenciada por valores
extremos. O uso da mdia geomtrica, ao invs da mdia aritmtica, tem
o objetivo de reduzir o efeito dos valores extremos sobre a mdia geral do
tempo mdios da tarefa.
O tempo de resposta definido como o intervalo entre o pedido do usurio
e a resposta do sistema, como mostrado na Figura 1.3a.

Avaliao de Desempenho de Sistemas

10

Figura 1.3 - Definies de tempo de resposta: a) pedidos e respostas instantneos; e b)


pedidos e respostas realistas.
A definio apresentada na Figura 1.3a, entretanto, simplista, uma vez
que os pedidos, bem como as respostas, no so instantneos. Os
usurios passam tempo digitando o pedido e o sistema leva tempo para
exibir a resposta, como mostrado na Figura 1.3b.
H duas possveis definies do tempo de resposta neste caso:

Definio 1 - intervalo entre o fim de uma apresentao do pedido e o incio da


resposta correspondente do sistema Figura 1.3a
Definio 2 - intervalo entre o fim de uma apresentao do pedido e o final da
correspondente resposta do sistema Figura 1.3b

A segunda definio prefervel se o tempo entre o incio e o final da


resposta longo, neste caso, o tempo de resposta para usurios
interativos em um sistema de tempo compartilhado seria o intervalo entre
o pedido (ao teclar enter) e ltimo caractere da resposta do sistema.
Para tarefas em lote, a resposta medida pelo tempo de execuo (turnaround time), que o intervalo de tempo entre a apresentao do lote de
tarefas e a sua concluso. Observe que o tempo para ler a entrada est
includo no tempo de execuo.
O tempo entre a apresentao de uma tarefa e o incio de sua execuo
pelo sistema chamado de tempo de reao (reaction time). Para medir o
tempo de reao, necessrio controlar as aes internas do sistema
desde a solicitao do pedido at o incio da execuo, pois pode no
haver nenhum evento externo visvel para indic-lo. Por exemplo, em
sistemas de tempo compartilhado, o intervalo entre o ltimo toque do
usurio no teclado e a entrada do primeiro byte do processo na CPU seria
Avaliao de Desempenho de Sistemas

11

chamado tempo de reao.


O tempo de resposta de um sistema geralmente aumenta medida que a
carga do sistema aumenta. A proporo de tempo de resposta para uma
determinada carga e a carga mnima do sistema chamada fator de carga
(stretch factor). Para um sistema de tempo compartilhado, por exemplo, o
fator de carga definido como a razo entre o tempo de resposta com e
sem a multiprogramao.
Os conceitos discutidos acima se aplicam igualmente a sistemas de
hardware, especificamente entre comunicao entre mquinas (M2M Machine to Machine).
1.2.1.2. Vazo ou Throughput
Vazo ou throughput definida como a taxa temporal em que as tarefas
so atendidas pelo sistema. Para o processamento em lotes, a vazo
medida em tarefas (jobs) por segundo. Para sistemas interativos, a vazo
medida em solicitaes por segundo. Para CPUs, a vazo ou rendimento,
medida em milhes de instrues por segundo (MIPS), ou milhes de
operaes de ponto flutuante por segundo (MFLOPS). Para as redes, a
vazo ou rendimento medida em pacotes por segundo (pps) ou bits por
segundo (bps). Para sistemas de processamento de transaes a vazo ou
rendimento medida em transaes por segundo (TPS). Em geral, cada
sistema de computao tem sua unidade de vazo.
No incio, a vazo de um sistema geralmente aumenta medida que a
carga do sistema aumenta. Depois de uma determinada carga, a taxa de
transferncia para de aumentar, na maioria dos casos, pode at comear
a diminuir, como mostrado na Figura 1.4. A taxa de transferncia mxima
possvel sob condies ideais de trabalho chamada de capacidade
nominal (nominal capacity) do sistema. Para as redes de computadores, a
capacidade nominal chamada de largura de banda (bandwidth) e
normalmente expressa em bits por segundo.

Avaliao de Desempenho de Sistemas

12

Figura 1.4 - Capacidade de um sistema de computao.


Muitas vezes o tempo de resposta na taxa de transferncia mxima
demasiado elevado para ser aceitvel. Nesses casos, mais interessante
saber a taxa de transferncia mxima possvel, sem exceder o limite de
tempo de resposta pr-especificado. Isso pode ser chamado de
capacidade til do sistema (usable capacity). Em muitas aplicaes, o
ponto de inflexo da curva de tempo de resposta considerado o ponto de
funcionamento timo, este o ponto alm do qual o tempo de resposta
aumenta rapidamente em funo da carga, mas o ganho em vazo
pequeno.
Antes do ponto de inflexo, o tempo de resposta no aumenta
significativamente, mas a vazo aumenta com o aumento da carga. A taxa
correspondente ao ponto de inflexo chamada capacidade de inflexo do
sistema (knee capacity).
Tambm comum medir a capacidade em termos de carga, por exemplo,
o nmero de usurios, ao invs da taxa de transferncia. Mais uma vez,
importante definir com preciso as mtricas e suas unidades antes de uslas em um projeto de avaliao de desempenho.
A relao entre taxa mxima alcanvel (capacidade utilizvel) e a
capacidade nominal chamada eficincia (efficiency). Por exemplo, se a
taxa de transferncia mxima igual a 100 Mbps e a capacidade utilizvel
de uma LAN (Local Area Network) de apenas 85 Mbps, sua eficincia
de 85%. O termo eficincia tambm usado para sistemas com mltiplos
processadores. A razo entre o desempenho de um processador em
relao aos n-processadores do sistema a sua eficincia, como mostrado
na Figura 1.5. O desempenho geralmente medido em termos de MIPS ou
MFLOPS.

Avaliao de Desempenho de Sistemas

13

Figura 1.5 - Eficincia de um sistema multiprocessador (cor vermelha) e a capacidade


utilizvel (cor preta) versus nmero de processadores.
1.2.1.3.Utilizao
A utilizao (utilization) de um recurso medida como a frao do tempo
utilizado pelo recurso em relao s demais solicitaes de servio. Por
exemplo, a razo entre o tempo ocupado e tempo total durante um
determinado perodo. O perodo durante o qual o recurso no est sendo
utilizado chamado de tempo ocioso (idle time).
Os gestores de sistemas devem buscar equilibrar a carga de modo que
no se utilize um recurso mais que outros. Naturalmente, nem sempre isso
possvel. Alguns recursos, como processadores, esto sempre ocupados
ou inativos, por isso a sua utilizao em termos de percentagem de tempo
ocupado e o tempo total faz sentido. Para outros recursos, como memria,
apenas uma frao dos recursos podem ser utilizados em um determinado
momento, a sua utilizao medido como a frao mdia utilizada
durante um intervalo.
1.2.2. Confiabilidade
Se o sistema executa o servio incorretamente, dito ter ocorrido um erro
(neste contexto erro, falha e defeito so considerados equivalentes). Neste
caso, a confiabilidade uma medida do nmero de interrupes crticas
durante o tempo em que um sistema est em funcionamento. til
classificar os erros e determinar as probabilidades para cada classe de
erros.
Confiabilidade a probabilidade de um sistema desempenhar sua funes
em dado perodo de tempo sob determinadas condies.
Desta forma, define-se confiabilidade, R(t), como a probabilidade de que o
sistema opere sem falhas por um perodo de tempo t, ou seja, R(t) = P(X >
t), Equao 1.1.

Avaliao de Desempenho de Sistemas

14

R(t)=1F (t )=1 f ( u)du

1.1

Em que F(t) a probabilidade de que o sistema falhe antes do tempo t e


f(x) a fdp dos tempos de falha.
Os modelos que fornecem a estimativa de taxa de falha de um sistema
funo do tempo so baseados em distribuies estatsticas e as mais
utilizadas so as funes Exponencial, Weibull e Lognormal.
Por exemplo, no caso do gateway, que pode-se buscar encontrar a
probabilidade de erros de um nico bit, os erros de dois bits, e assim por
diante. Pode-se tambm querer encontrar a probabilidade de um pacote
ser entregue parcialmente (fragmento).
A confiabilidade (reliability) de um sistema geralmente medida pela
probabilidade de erros ou o tempo mdio entre erros. Este ltimo
frequentemente especificado como segundos sem erros (error-free
seconds).
1.2.3. Disponibilidade
A disponibilidade (availability) de um sistema definida como a frao do
tempo que o sistema est disponvel para atender s solicitaes dos
usurios. O tempo durante o qual o sistema no est disponvel o
chamado tempo de inatividade (downtime), o tempo durante o qual o
sistema est disponvel chamado de uptime. Muitas vezes, o uptime
mdio, mais conhecido como o tempo mdio at falhar (MTTF Mean
Time To Failure) o melhor indicador uma vez que a combinao de
pequenos downtime e uptime pode resultar em uma medida de alta
disponibilidade, mas os usurios podem no ser capazes de obter
qualquer servio se o tempo de funcionamento inferior ao tempo
necessrio para completar o servio.

Figura 1.6 - Representao da disponibilidade de um sistema destacando a aorrencia de falha,


sua reparao e o tempo entre falhas (fonte:
https://en.wikipedia.org/wiki/Mean_time_between_failures)
Avaliao de Desempenho de Sistemas

15

disponibilidade=

uptime

1.2

tempo total
(incio do downtimeincio do uptime)
MTBF=
nmero de falhas

1.3

Se o sistema no executa o servio, ele pode estar falhando ou


indisponvel. Mais uma vez, til classificar os modos de falha e
determinar as probabilidades destas ocorrncias. Por exemplo, o gateway
pode no estar disponvel em 0,01% do tempo devido a uma falha do
processador e em 0,03% devido a uma falha de software.
1.2.4. Mtricas de Confiabilidade e Disponibilidade
As mtricas de confiabilidade e disponibilidade esto relacionadas e fazem
parte de um um conceito mais amplo que a confiana de sistemas
computacionais (assunto que est alm deste texto).
Dado um perodo de funcionamento de um sistema computacional T, seja
em Tup o tempo total de operao sem falhas, T down o tempo total do
sistema parado devido a falhas, ti o tempo de ocorrncia da i-sima falha (
i [1,NF]) e NF o nmero total de falhas no perodo T, NF > 0. Os valores
de MTBF, MTTR e da disponibilidade so dados pelas Equaes 1.5, 1.6,
1.7, respectivamente.
MTTF=

ti

1.4

NF
T up
MTBF=
NF
T T up T down
MTTR=
=
NF
NF
MTBF
disponibilidade=
MTBF + MTTR
R( MTTF )=1

1.5
1.6
1.7

f (x) dx

1.8

MTTF

Se no h falha (NF = 0) ento estes indicadores so indefinidos e o


sistema tolerante a falhas no perodo.

Exemplo 1.1 - Um sistema foi projetado para operar corretamente durante 100 horas.
Durante esse perodo foram observadas 9 falhas que somadas duraram 300 minutos (5
horas).

Avaliao de Desempenho de Sistemas

16

Calculando o valor de MTBF, tem-se:

MTBF=

1005
=10,56 h
9

Este valor indica que a cada 10 horas e 34 minutos poder ocorrer uma falha no
sistema, deixando-o indisponvel.
Calculando o valor de MTTR, tem-se:

5
MTTR= =0,56 h
9

Este valor indica que a durao mdia de uma falha 34 minutos.


Como consequncia, a cada 10 horas e 34 minutos o sistema poder ficar indisponvel
por 34 minutos.

disponibilidade=

Calculando a disponibilidade, tem-se:

10,56
=94,96=94,96 %
10,56+ 0,56

Este valor indica que a disponibilidade do sistema igual 94,96%.

Os MTBF e MTTR so mtricas HB e LB, respectivamente. So indicadores


de desempenho usados h mais de 60 anos e podem ser utilizados para
avaliar processos, a produtividade e a qualidade dos sistemas
computacionais, tambm servem para estimar e dimensionar o esforco de
manuteno corretiva ou preventiva.
Exemplo 1.2 - Um sistema apresentou falhas nos tempos 12, 19, 28, 42 e 72 h apo
iniciar seus trabalhos. Calcule a confiabilidade deste sistema neste perodo. Considere a
distribuio exponencial como modelo para a estimativa da taxa de falha deste sistema.
Calculando o valor de MTTF, tem-se:

MTTF=

12+19+ 28+42+72
=34,6 h
5

Como f(x) = e-x, com E(x) = 1/ e = 1/MTTF = 0,028902.

A confiabilidade do sistema dado por:

R=1 0,028902 e0,028902 x dx=0,6321


34,6

Este valor indica que a confiabilidade do sistema de 63,21% no perodo de tempo


considerado e seu mdio para falhar igual a 34 horas 36 minutos.

1.2.5. Outras Mtricas


Nos estudos de aquisio do sistema, a relao custo/desempenho
(cost/performance ratio) comumente usada como uma mtrica para
comparar dois ou mais sistemas. O custo inclui o custo de hardware e
licenciamento de software, instalao e manuteno ao longo de um
determinado nmero de anos. O desempenho medido em termos de
throughput em uma restrio de tempo de resposta dada. Por exemplo,
dois sistemas de processamento de transaes podem ser comparados em
termos de dlares por TPS.
Em muitos sistemas, servios requerem o envio de mensagens atravs de
Avaliao de Desempenho de Sistemas

17

uma rede de interconexo. A latncia o tempo necessrio para enviar


mensagem atravs de uma rede de interconexo, inclui o tempo de
empacotar e desempacotar dados alm do tempo de envio propriamente
dito. A latncia aumenta a medida que a quantidade de dados a serem
enviados aumenta. Este aumento no linear uma vez que pode ocorrer
aumento e, ou, reduo do tamanho dos pacotes, forando o
desempacotamento e reempacotamento, perdas de pacotes, reenvio de
pacotes, confirmaes de recebimento, enfim, trfego de dados de
controle. A componente do tempo referente ao custo de empacotamento e
desempacotamento no varia tanto em relao ao tamanho da mensagem
como a componente de custo de envio pela rede, conforme j discutido.
As mensagens enviadas atravs de uma rede de interconexo utilizam
protocolos de comunicao que incluem dados de controle para o fluxo da
mensagem atravs da rede. A eficincia de um protocolos de comunicao
a razo entre o tamanho da mensagem e a quantidade total de dados
(mensagem+controle) transmitida.
1.3. Caracterizao das Mtricas de Desempenho
Para muitas mtricas, o valor mdio o mais importante. No entanto, no
se deve negligenciar o efeito da variabilidade. Por exemplo, um tempo de
resposta alto, de um sistema de tempo compartilhado, assim como uma
alta variabilidade do tempo de resposta, pode degradar significativamente
a produtividade. Se este for o caso, necessrio estudar essas duas
mtricas.
Nos sistemas de computao compartilhada por muitos usurios, dois
tipos de mtricas de desempenho devem ser considerados: individual e
global. As mtricas individuais refletem o uso de cada usurio, enquanto a
mtrica global reflete o uso de todo o sistema. A utilizao dos recursos,
confiabilidade e disponibilidade so as mtricas globais, enquanto o tempo
de resposta e throughput pode ser medida para cada indivduo, bem como
a nvel global para o sistema. H casos em que a deciso que otimiza as
mtricas do indivduo diferente da que otimiza o sistema global.
Por exemplo, em redes de computadores, o desempenho medido pela
taxa de transferncia (pacotes por segundo). Em um sistema onde o
nmero total de pacotes permitidos na rede mantido constante,
aumentando o nmero de pacotes de uma fonte pode levar ao aumento
do seu rendimento, mas tambm pode diminuir a taxa de transferncia de
outra pessoa. Assim, tanto o rendimento de todo o sistema e sua
distribuio entre usurios individuais deve ser estudado. Utilizando
apenas o throughput do sistema ou a transferncia individual pode
conduzir a situaes injustas.
Um subconjunto de mtricas de desempenho, elas devem se completar
com baixa variabilidade e evitando redundncia. Na Tabela 1.2 esto as
Avaliao de Desempenho de Sistemas

18

consideraes usadas para selecionar um subconjunto de mtricas de


desempenho.
Tabela 1.2 - Critrios para selecionar mtricas de desempenho de sistemas computacionais
baixa
variabilidade

baixa variabilidade ajuda a reduzir o nmero de repeties necessrias


para obter um determinado nvel de confiana estatstica. Mtricas que
utilizam duas variveis geralmente possuem uma maior variabilidade do
que qualquer das duas tomadas individualmente e devem ser evitadas,
se possvel

evitar
redundncia

se duas mtricas estimam essencialmente a mesma informao,


menos confuso para o estudo utilizar apenas uma. Isso nem sempre
evidente, no entanto. Por exemplo, em redes de computadores, o tempo
mdio de espera em uma fila igual ao quociente entre o comprimento
mdio da fila e a taxa de chegada. Estudando o comprimento mdio da
fila e o tempo de espera mdio pode no prover quaisquer insights
adicionais

completude

o conjunto de mtricas includas no estudo deve ser completo. Todos os


resultados possveis devem ser refletidos no conjunto de mtricas de
desempenho. Por exemplo, em um estudo comparando diferentes
protocolos em uma rede de computadores, um protocolo foi escolhido
como o melhor at que foi descoberto que o melhor protocolo levou a
um maior nmero de desligamentos de circuito prematuramente. A
probabilidade de desconexo foi ento adicionada ao conjunto de
mtricas de desempenho

A classe de utilidade de uma mtrica til para apresentao de dados.


Dependendo da funo de utilidade de uma mtrica de desempenho, ela
pode ser classificada em trs classes, descritos na Tabela 1.3 e a Figura
1.7 mostra grficos hipotticos de utilidade de trs classes de mtricas.
Tabela 1.3 - Classes de mtricas de desempenho de sistemas computacionais
menor melhor os usurios do sistema e administradores de sistemas preferem os
ou LB (lower is menores valores de tais mtricas. O tempo de resposta um
better)
exemplo de uma mtrica LB
nominal melhor ambos os valores altos e baixos so indesejveis. Um valor especial,
ou NB (nominal is intermedirio entre os extremos, considerado o melhor. A taxa de
best)
utilizao um exemplo de uma caracterstica NB
maior melhor ou os usurios do sistema e administradores de sistemas preferem os
HB
(higher
is maiores valores de tais mtricas. Throughput do sistema um
better)
exemplo de uma mtrica HB

Avaliao de Desempenho de Sistemas

19

Figura 1.7 - Tipos de mtricas: a) menor melhor (LB); b) nominal melhor (NB); e c) maior
melhor (HB).
As mtricas de desempenho tambm devem ser especficas, mensurveis,
viveis e possuir eficcia, conforme descrito na Tabela 1.4. Em conjunto,
as mtricas de desempenho devem possuir tanto caractersticas
quantitativas quanto qualitativas.
Tabela 1.4 - Caractersticas desejveis das mtricas de desempenho de sistemas
computacionais
especificidade

impede o uso de palavras como baixa probabilidade

mensurabilidade

exige a verificao de que um determinado sistema atenda aos


requisitos

factibilidade
aceitabilidade
eficcia

ou demandam limites de exigncias de configurao ou decises de


arquitetura alto o suficiente para ser aceitvel e baixo o suficiente
para ser vivel
estabelece que as exigncias devem ser definidas para todos os
resultados possveis incluindo seus modos de falha

Considere a afirmao de exigncia tpica:


O sistema deve ser eficiente tanto em termos de processamento quanto
de memria. No deve criar sobrecarga excessiva. Com probabilidade
extremamente baixas de que a rede duplicar um pacote, entregar um
pacote para o destino errado ou alterar os dados em um pacote.
Estas declaraes so exigncias inaceitveis uma vez que sofrem de um
ou mais dos seguintes problemas:
Tabela 1.5 - Caractersticas indesejveis para requisitos de mtricas de desempenho de
sistemas computacionais
inespecficos

no so especificados em nmeros claros. Palavras qualitativas tais


como baixo, alto, raros e extremamente pequenos so usadas

no mensurvel

no h maneira de estimar medidas e verificar se elas atendem ao


requisito

inaceitvel

os valores numricos de requisitos, se especificados, so definidas


com base no que pode ser alcanado ou o que parece ser bom. Se for

Avaliao de Desempenho de Sistemas

20

feita uma tentativa para definir os requisitos de forma realista, eles


acabam por ser to baixos que se tornam inaceitveis
no realizvel

muitas vezes, os requisitos so definidos to alto que parece bom. No


entanto, tais requisitos no podem ser reais

incompletas

nenhuma tentativa feita para especificar um dos resultados


possveis

Estes problemas podem ser resumido em uma palavra: SMART, ou seja, os


requisitos devem ser especficos, mensurveis, aceitveis, realizvis e
eficazes (Specific, Measurable, Acceptable, Realizable and Thorough
Specificity).

Exemplo 1.3 - Considere o problema de especificar os requisitos de desempenho para


um sistema de rede de alta velocidade, LAN (Local Area Network), descrito por Jain
(1991). A LAN, basicamente, presta o servio de transporte de pacotes para a estao
de destino especificada. Atendendo uma solicitao do usurio para enviar um pacote
para o destino da estao D, existem trs categorias de resultados:
a) o pacote entregue corretamente para D
b) entregue incorretamente (entregue a um destino errado ou com indicao de erro
para D)
c) no entregue
Os requisitos de desempenho para estas trs categorias de resultados foram os
seguintes:

a) Velocidade: se o pacote entregue corretamente, o tempo necessrio para


entregar e a taxa em que entregue so importantes. Isso leva s seguintes exigncias:
a) o atraso no acesso em qualquer estao deve ser inferior a 1 s
b) a produo sustentada deve ser pelo menos 80 Mb/s
b) Confiabilidade: cinco modos diferentes de erro foram considerados importantes.
Cada um destes modos de erro so expressos por quantidades diferente de erros e,
portanto, tem diferentes nveis de aceitabilidade. Os requisitos de probabilidade para
cada um desses modos de erro e seu efeito combinado, so os seguintes:
a) a probabilidade de um bit estar errado deve ser inferior a 1.010 -7
b) a probabilidade de entrega de pacote com erro com indicao de erro definida deve
ser inferior a 1%
c) a probabilidade de entrega de pacote com erro sem indicao de erro deve ser inferior
a 1.010-15
d) a probabilidade de entrega de pacote com erro detectado no endereo de destino
deve ser inferior a 1.010-18
e) a probabilidade de entrega de pacote ser entregue mais de uma vez (duplicado) deve
ser inferior a 1.010-5
f) a probabilidade de perda de pacote na LAN, devido a todos os tipos de erros, deve ser
inferior a 1%
c)

Disponibilidade: dois modos de falha foram considerados significativos. O primeiro

Avaliao de Desempenho de Sistemas

21

foi o tempo perdido devido re-inicializaes da rede, e o segundo foi o tempo perdido
devido s falhas permanentes que exigem chamadas de servio de manuteno. Os
requisitos para a frequncia e durao destes modos de falha foram especificadas da
seguinte forma:
a) o tempo mdio para inicializar a LAN deve ser inferior a 15 ms
b) o tempo mdio entre inicializaes da LAN devem ser de pelo menos um minuto
c) o tempo mdio para reparar a LAN deve ser inferior uma hora (parties LAN podem
ser operacionais, durante esse perodo)
d) o tempo mdio entre o particionamento da LAN deve ser de pelo menos metade de
uma semana
Todos os valores numricos acima referidos foram verificados para a factibilidade
utilizando modelagem analtica, que mostrou que os sistemas de LAN que satisfazem
estes requisitos so viveis.

Exemplo 1.4 - Considere o problema de comparar dois algoritmos diferentes de controle


de congestionamento em redes de computadores. Uma rede de computadores consiste
de um conjunto de sistemas finais interligados atravs de uma srie de sistemas
intermedirios. Os sistemas finais enviam pacotes para sistemas na extremidade da
rede. Os sistemas intermedirios encaminhar os pacotes ao longo do caminho. O
problema de congestionamento ocorre quando o nmero de pacotes esperando por um
sistema intermedirio superior a capacidade de transferncia do sistema e alguns dos
pacotes devem ser descartados.
O sistema, neste caso consiste na rede e o nico servio em questo o
encaminhamento de pacotes. Quando um usurio de rede envia um bloco de pacotes
para outra estao terminal chamado destino, h quatro resultados possveis:
a) alguns
b) alguns
c) alguns
d) alguns

pacotes
pacotes
pacotes
pacotes

so
so
so
so

entregues para o destino corretamente


entregues fora de ordem para o destino
entregues mais de uma vez para o destino (pacotes duplicados)
descartados no caminho (pacotes perdidos)

Para os pacotes entregues em ordem, a aplicao direta das mtricas em tempo taxa de
recursos produz a seguinte lista:
a) tempo de resposta: o atraso dentro da rede de pacotes individuais
b) throughput ou vazo: o nmero de pacotes por unidade de tempo
c) processamento da fonte: tempo por pacotes no sistema
d) processamento do destino final: tempo por pacote nos sistemas de destino
e) processamento intermedirio: tempo por pacote nos sistemas intermedirios
O tempo de resposta determina o tempo que um pacote tem que ser mantido da fonte
at a estao final usando seus recursos de memria, menor tempo de resposta
considerado melhor. O throughput o desempenho como visto pelo usurio, aumentar a
taxa de transferncia considerado melhor.
A variabilidade do tempo de resposta tambm importante uma vez que os resultados
de resposta variam muito em funo de retransmisses desnecessrias. Assim, a
variao do tempo de resposta tornou-se uma outra mtrica, a sexta.
Pacotes fora de ordem so indesejveis, uma vez que geralmente no podem ser
entregues para o usurio imediatamente. Em muitos sistemas, pacotes fora de ordem
so descartados nos sistemas de destino final. Em outros, eles so armazenados no
sistema de bufers aguardando a chegada de demais pacotes. Em ambos os casos,
Avaliao de Desempenho de Sistemas

22

chegadas de pacotes fora de ordem podem causar sobrecarga adicional. Assim, a


probabilidade de chegadas fora de ordem foi a stima mtrica.
Pacotes duplicados consumem recursos de rede. A probabilidade de pacotes duplicados,
por conseguinte, a oitava mtrica.
Pacotes perdidos so indesejveis por razes bvias. A probabilidade de perda de
pacotes a nona mtrica.
Perdas excessivas de retransmisses podem causar queda nas conexes do usurio,
assim a probabilidade de desconexo foi adicionada como a dcima mtrica.
A rede um sistema multiusurio. necessrio que todos os usurios sejam tratados de
forma justa. Portanto, a equidade foi adicionada como a dcima primeira mtrica. Ela
definida como uma funo da variabilidade da vazo entre os usurios. Para um dado
conjunto de usurio {x1, x2, ..., xn}, a seguinte funo pode ser usada para atribuir um
ndice de equidade para o conjunto:

f ( x1 , x 2 ,, x n )=

( x i)
i=1
n

1.9

n xi
i=1

O ndice de equidade se situa entre 0 e 1. Se todos os usurios recebem rendimento


igual, o ndice igual a 1. Se k dentre os n usurios receberem rendimentos iguais e os
restantes n-k usurios receberem rendimento zero, o ndice de equidade k/n.
Aps alguns experimentos, ficou claro que a vazo e os atrasos so mtricas
redundantes. Todos os esquemas que resultou em uma maior vazo tambm resultou
em maior atraso. Assim, as duas mtricas foram retiradas da lista e, substitudas por
uma mtrica que combina as duas, definida como a razo do throughput e o tempo de
resposta.
A variao no tempo de resposta tambm foi descartada, uma vez que era redundante
com a probabilidade de duplicao e a probabilidade de desconexo. A maior variao
resultou em uma maior probabilidade de duplicao de esforos e uma maior
probabilidade de desconexo prematura. Assim, neste estudo, um conjunto de nove
indicadores foi usado para comparar diferentes algoritmos de controle de
congestionamento.

1.4. Erros comuns


Contrariamente crena comum, como j foi comentado, a avaliao de
desempenho uma arte. Como uma obra de arte, uma avaliao de
sucesso no pode ser produzida mecanicamente. Cada avaliao exige um
conhecimento adequado do sistema a ser modelado e uma cuidadosa
seleo da mtrica, da carga e das ferramentas. Definir o problema real e
estabelecer as ferramentas e tcnicas a serem utilizadas, sem perder de
vista o tempo e outras restries, uma parte importante da arte do
Engenheiro da Computao.

Avaliao de Desempenho de Sistemas

23

Exemplo 1.5 - Os resultados mostrados na Tabela 1.6 refere-se aos throughputs de dois
sistemas A e B, medidos em transaes por segundo. Qual deles o melhor?

Tabela 1.6 - Throughput em transaes por segundos


Sistema
Carga 1
Carga 2
A
20
10
B
10
20
Existem trs maneiras de comparar o desempenho dos dois sistemas, Tabela 1.7.
f) A primeira maneira calcular a mdia dos desempenhos das duas cargas. Isto leva a
anlise mostrada na Tabela 1.7a. A concluso neste caso que os dois sistemas so
igualmente bons
g) A segunda forma considerar a relao de desempenhos sendo B a referncia, como
mostrado na Tabela 1.7b. A concluso neste caso que o sistema A melhor do que B
h) A terceira forma considerar a relao de desempenho sendo A a referncia, como
mostrado na Tabela 1.7c. A concluso neste caso que o sistema B melhor do que A

Tabela 1.7 - Comparando os throughput dos sistemas A e B: a) desempenho mdio; b)


desempenho relativo a A; e c) desempenho relativo a B
Sistema
A
B

Carga 1
20
10

Carga 2
10
20

Mdia
15
15

Carga 2
0,5
1

Mdia
1,25
1

Carga 2
1
2

Mdia
1
1,25

(a)
Sistema
A
B

Carga 1
2
1
(b)

Sistema
A
B

Carga 1
1
0.5
(c)

A Tabela 1.8 apresenta uma lista de questes relativas anlise de


desempenho. Todas as perguntas devem ser respondidas afirmativamente
de modo que Avaliaes de Desempenho sejam bem-sucedidas.
Tabela 1.8 - Checklist para evitar erros comuns na Avaliao de Desempenho

Avaliao de Desempenho de Sistemas

24

1.
2.
3.
4.
5.
6.
7.
8.

Os objetivos da anlise esto corretamente e claramente definidos?


As metas foram estabelecidas de forma imparcial?
Todas as etapas da anlise foram seguidas sistematicamente?
O problema est claramente entendido antes de analis-lo?
As mtricas de desempenho so relevantes para este problema?
A carga de trabalho correta para este problema?
A tcnica de avaliao a mais adequada?
Os parmetros utilizados so aqueles que afetam o desempenho por
completo?
9. Todos os parmetros que afetam o desempenho foram escolhidos como
variveis?
10. O projeto experimental eficiente em termos de tempo e de resultados?
11. O nvel de detalhamento apropriado?
12. Os dados medidos foram analisados e interpretados adequadamente?
13. A anlise estatstica est correta?
14. A anlise de sensibilidade foi feita?
15. Os erros na entrada afetaram os resultados de forma significativa?
16. Os outliers na entrada e, ou, na sada foram tratados adequadamente?
17. As alteraes futuras do sistema e a carga de trabalho foram modeladas?
18. A variao dos dados de entrada foi levada em considerao?
19. A variao dos resultados foi analisada?
20. A anlise pode ser facilmente explicada?
21. O estilo de apresentao o mais adequado para o pblico alvo?
22. Os resultados foram apresentados de forma grfica da melhor forma
possvel?
23. Os pressupostos e as limitaes da anlise esto claramente
documentados?

A maioria dos problemas de desempenho nico. As mtricas, a carga de


trabalho e as tcnicas de avaliao usadas para um problema geralmente
no podem ser usadas para o prximo problema. No entanto, existem
alguns passos comuns a todos os projetos de avaliao de desempenho
que ajudam a evitar os erros comuns, Tabela 1.9.
Tabela 1.9 - Etapas para uma Avaliao de Desempenho que ajudam a evitar erros comuns
1. Definio do Sistema e Objetivos
2. Lista de Servios e Resultados
3. Seleo das Mtricas
4. Lista de Parmetros
5. Fatores Selecionados para Estudo
6. Seleo da Tcnica de Avaliao
7. Seleo da Carga de Trabalho
8. Design dos Experimentos
9. Analisar e Interpretao dos Dados
10. Apresentao dos Resultados

1.5. Exerccios
1. Que mtricas de desempenho devem ser usadas para comparar o desempenho dos
seguintes sistemas?
a) duas unidades de discos
b) dois sistemas de processamento de transaes
c) dois algoritmos de retransmisso de pacote
Avaliao de Desempenho de Sistemas

25

d)

dois circuitos eletrnicos

2. O nmero de pacotes perdidos em dois links foi medido para quatro tamanhos de
arquivo, como mostrado na Tabela 1.10. Qual link o melhor?

Tabela 1.10 - Pacotes perdidos em dois links


Tamanho do Arquivo (B)
Link A Link B
1000
5
10
1200
7
3
1300
3
0
50
0
1
3. Que metodologia deve ser utilizada para:
a) selecionar um computador pessoa
b) selecionar 1.000 postos de trabalho para uma empresa
c) comparar dois pacotes de planilha
d) Para comparar duas arquiteturas de fluxo de dados, se a resposta fosse necessria
ontem, no prximo trimestre e no ano que vem.
4. Faa uma lista completa de mtricas para comparar:
a) dois computadores pessoais
b) dois sistemas de banco de dado
c) duas unidades de disco
a) dois sistemas de janela
5. A partir da Tabela 1.11 faa um estudo da confiabilidade e da disponibilidade deste
sistema computacional.

Tabela 1.11 - Amostra de falhas de sistemas operacionais MS Windows 7 medidas em 735


computadores
Grupo de Computador
Perodo de medio (dias)
Total de computadores
Total de falhas
Durao das falhas (dias)

1
269
5
284
23,67

2
72
63
406
156,49

3
332
268
6844
13381,99

4
391
275
19725
2720,38

5
378
41
548
1218,14

Fonte: http://sbesc.lisha.ufsc.br/sbesc2014/dl222

Avaliao de Desempenho de Sistemas

26

6
891
83
3008
6803,68

2. Medies
2.1. Tcnicas e Ferramentas de Medio
Sistemas de computao esto se tornando cada vez mais onipresentes
na nossa vida cotidiana. As pessoas confiam cada vez mais nestes
sistemas para resolver a maioria dos seus problemas como, por exemplo,
sade, educao, entretenimento e finanas.
A maioria das pessoas precisam interagir com os sistemas de apoio
automatizados ou semi-automatizados e esperam respostas imediatas. O
nmero de pessoas com acesso a servios de comunicao est
aumentando a taxas exponenciais.
Medies de desempenho de sistemas de computao envolve monitorlo enquanto ele est sendo submetido a uma carga de trabalho particular.
A fim de realizar medies significativas, a carga de trabalho deve ser
cuidadosamente selecionada e, para atingir esse objetivo, o analista de
desempenho precisa entender e responder as seguintes perguntas, antes
de realizar medies:
a)
b)
c)
d)
e)
f)
g)

Quais so os diferentes tipos de cargas de trabalho?


Que cargas de trabalho so comumente usadas por outros analistas?
Os tipos de carga de trabalho selecionados so adequados?
Como os dados medidos da carga de trabalho sero sumarizadas?
Como o desempenho do sistema monitorado?
Como colocar a carga de trabalho desejada no sistema de modo controlado?
Como os resultados da avaliao sero apresentados?

2.2. Seleo e Caracterizao de Carga


A termo carga de trabalho de teste denota qualquer carga de trabalho
utilizada em estudos de desempenho. A carga de trabalho de teste pode
ser real ou sinttica.
A carga de trabalho real aquela observada em um sistema durante sua
operao. Sua medio no pode ser repetida e, portanto, geralmente no
Avaliao de Desempenho de Sistemas

27

adequado para uso como uma carga de trabalho de teste.


A carga de trabalho sinttica desenvolvida e usada para estudos, possui
caractersticas semelhantes aos da carga de trabalho real, mas pode ser
aplicadas vrias vezes de maneira controlada. A principal razo para a
utilizao de uma carga de trabalho sinttica que ela uma
representao ou modelo da carga de trabalho real. Outras razes para a
utilizao de uma carga de trabalho sinttica :

no conter dados do mundo real


no so grandes
no conter dados sensveis
pode ser facilmente modificada sem afetar a operao
pode ser facilmente portada para sistemas diferentes devido ao seu pequeno
tamanho
podem ser incorporadas como funes internas de medio

A Tabela 2.1 discute os principais tipos de cargas de trabalho de teste que


tem sido utilizadas para comparar sistemas de computao.
Tabela 2.1 - Cargas de trabalho de teste utilizadas para comparar sistemas de computao
instrues
mistas

simulam a demanda de utilizao dos recursos de um sistema por meio


de um conjunto de instrues do seu processador

kernel

consiste no exame da parte essencial de uma aplicao, suas partes mais


frequentemente usadas so determinadas e a seguir programadas. Um
programa kernel uma mistura de instrues que compem um
programa ou parte de um programa e o seu tempo de execuo
determinado com base nos tempos de instruo fornecidos pelo
fabricante

programas
sintticos

simulam a demanda de utilizao dos recursos do sistema de maneira


requerida pela carga, so usados no sistema como carga-piloto
reproduzvel, podendo ter suas caractersticas modificadas por meio de
um conjunto de parmetros de entrada

benchmarks

um conjunto de programas selecionados de maneira a construir uma


composio representativa de carga de uma instalao que so
processados no sistema que se deseja avaliar. Permite determinar se um
sistema particular pode processar adequadamente uma carga real, se as
caractersticas de preo e desempenho do sistema proposto so
suficientes e quais as melhores opes de configurao, tanto de
hardware quanto de software

A carga de trabalho a parte mais importante de qualquer projeto de


avaliao de desempenho. possvel chegar a concluses equivocadas se
a carga de trabalho no est devidamente selecionada. A adequao da
carga de trabalho uma etapa crtica para que as concluses de um
estudo sejam aceitveis.
Como outros aspectos da avaliao de desempenho, a seleo adequada
de cargas de trabalho requer muitas consideraes e julgamentos pelo
analista, que uma parte da arte da avaliao de desempenho que vem
com a experincia. Vale lembrar a mxima da computao: entra lixo sai
lixo.
Avaliao de Desempenho de Sistemas

28

Os quatro principais consideraes na seleo da carga de trabalho so:

servios executados por ela


seu nvel de detalhe
sua representatividade
oportunidade

A melhor maneira de iniciar a seleo de carga de trabalho ver o sistema


como um fornecedor de servios. Cada sistema oferece uma srie de
servios e fazer uma lista destes servios um dos primeiros passos de
um estudo sistemtico de avaliao de desempenho.
Muitas vezes, o termo Sistema em Teste (SUT - System Under Test)
utilizado para designar o conjunto completo dos componentes que esto
sendo avaliados, adquiridos ou sendo projetados. s vezes h um
componente especfico no SUT cujas alternativas esto sendo
consideradas. Este componente chamado de componente em estudo
(CUS - Component Under Study), como mostrado na Figura 2.1.

Figura 2.1 - Componentes de um sistema destacando o Sistema em Teste (SUT) e o


Componente em Estudo (CUS)
Por exemplo, a equipe de design de uma CPU pode querer entender o
impacto de diferentes organizaes das Unidades Lgica Aritmtica (ALU).
Neste caso, a CPU o SUT e o ALU o CUS. Da mesma forma um Provedor
Web, para comprar um sistema de processamento de transaes pode
querer comparar diferentes dispositivos de disco. Neste caso, o sistema de
processamento de transaes o SUT e os dispositivos de disco so os
CUS.
Claramente, a identificao do SUT e do CUS importante pois a carga de
trabalho, bem como as mtricas de desempenho so determinados
principalmente pelo SUT. Confundir CUS com SUT, e vice-versa, um erro
comum que leva a resultados enganosos.
A palavra sistema ser usada para significar SUT e a palavra componente
ser usada para significar CUS.
As mtricas escolhidas devem refletir o desempenho dos servios
prestados ao nvel do sistema e no no nvel do componente. Por exemplo,
Avaliao de Desempenho de Sistemas

29

o MIPS uma mtrica justificvel para comparar duas CPUs, mas no


apropriado para comparar dois sistemas de tempo compartilhado. A CPU
apenas um componente do sistema de tempo compartilhado. Um sistema
de tempo compartilhado pode prestar servios tais como processamento
de transaes, caso em que o desempenho seria medido por transaes
(ao contrrio de instrues) por segundo.
A base para seleo de carga de trabalho o sistema e no o
componente. Por exemplo, os servios prestados pela CPUs so instrues,
e os projetistas de CPU podem querer usar a frequncia de instrues
como uma representao possvel da carga de trabalho. Os servios
prestados pelos sistemas web so geralmente chamados de transaes e,
assim, pode-se utilizar as frequncias de transao como a carga de
trabalho.
2.3. Monitores
Um monitor uma ferramenta utilizada para observar as atividades em
um sistema. Em geral, os monitores so usados para observar o
desempenho dos sistemas, coletar estatsticas de desempenho, analisar
os dados e exibir os resultados. Alguns tambm identificam reas
problemticas e propem solues.
Monitores so usados no s pelos analistas de desempenho, mas
tambm por programadores e gerentes de sistemas. Algumas das razes
para monitorar um sistema so os seguintes:

um programador de sistemas podem usar um monitor para encontrar os


segmentos frequentemente usados do software e otimizar seu desempenho
um gerente de sistemas pode usar um monitor para medir a utilizao de recursos
e para encontrar o gargalo de desempenho
um gerente de sistemas tambm pode utilizar um monitor para ajustar o sistema.
Os parmetros do sistema podem ser ajustados para melhorar o seu desempenho
um analista de sistemas pode usar um monitor para encontrar os parmetros do
seu modelo analtico, para valid-los e obter dados para entrada de simulao

Em resumo, a monitoramento o primeiro passo e chave em medies


de desempenho.
2.3.1. Terminologia para Monitor
Os termos relacionados a monitoramento e que so usados com
frequncia esto discutidos na Tabela 2.2.
Tabela 2.2 - Terminologia para os monitores de desempenho e suas descries
evento

a mudana de estado do sistema chamado de evento. Exemplos de


eventos so processo de mudana de contexto, incio de busca em um disco

Avaliao de Desempenho de Sistemas

30

e a chegada de um pacote
trace

um trao um log de eventos em geral, incluindo o tempo do evento, o tipo


de evento e outros parmetros importantes associados a ele

overhead

a maioria dos monitores perturbam ligeiramente a operao do sistema. Eles


podem consumir recursos do sistema, como CPU ou armazenamento. Por
exemplo, os dados coletados pelo monitor podem ser gravadas no
armazenamento secundrio. Este consumo de recursos do sistema
chamado de overhead (sobrecarga). Um dos objetivos do projeto de
monitorar a de minimizar a sobrecarga

domnio

o conjunto de atividades observveis pelo monitor o seu domnio. Por


exemplo, a contabilidade registra informaes sobre registro de tempo de
CPU, nmero de discos, terminais, redes e paginao E/S, o nmero de
caracteres transferidos entre os discos, terminais, redes e dispositivo de
paginao e o tempo de resposta para cada sesso do usurio. Estes
constituem o domnio dos logs de contabilidade

taxa
de a frequncia mxima de eventos que um monitor pode observar
entrada
corretamente chamada de taxa de entrada. Geralmente, duas taxas de
entrada so especificados: modo burst e sustentada. A taxa de modo burst
especifica a taxa em que um evento pode ocorrer por um perodo curto.
maior do que a taxa sustentada, que o monitor pode tolerar por longos
perodos
resoluo

a granulao da informao observada chamado de resoluo. Por


exemplo, um monitor pode ser capaz de registrar o tempo apenas em
unidades de 16 milissegundos. Da mesma forma, o tamanho das classes
utilizadas em um histograma pode determinar a resoluo do histograma

largura de o nmero de bits de informaes gravadas em um evento chamado de


entrada
largura de entrada. Isto, junto com a taxa de entrada, determina o
armazenamento necessrio para registrar os eventos

2.3.2. Classificao de Monitores


Os monitores so classificados com base em uma srie de caractersticas
como o nvel de implementao, mecanismo de disparo e habilidade em
exibir resultados.
Dependendo do nvel em que um monitor implementado, ele
classificado como um monitor em software, em hardware, em firmware ou
monitor hbrido. O monitor hbrido uma combinao de hardware,
firmware ou software. Esta a classificao mais comum.
Dependendo do mecanismo que desencadeia a ao do monitor, um
monitor pode ser classificado como orientado a evento ou temporizado
(monitor para amostragem). Um monitor orientado a eventos ativado
somente pela ocorrncia de determinados eventos. Assim, no h
sobrecarga de monitoramento se o evento raro. Mas se o evento
frequente, pode causar muita sobrecarga. O monitor de amostragem
ativada em intervalos de tempo fixo por interrupes do relgio.
Monitores de amostragem so ideais para a observao de eventos
frequentes. Na ativao, o monitor registra o estado do dispositivo e
Avaliao de Desempenho de Sistemas

31

contadores. A frequncia de amostragem determinada pela frequncia


do evento e a resoluo desejada.
Outra forma de classificar monitores est de acordo com sua capacidade
de exibir resultados. Monitores online exibem o estado do sistema de
forma contnua ou em intervalos. Monitores de lote, por outro lado,
recolhem dados para que possam ser analisados posteriormente,
utilizando um programa de anlise em separado.
Todas as trs classificaes anteriores podem ser usadas juntas para
caracterizar um monitor. Por exemplo, um monitor especfico pode ser
classificado como um monitor hbrido de amostragem de lote.
2.3.3. Monitores em Software
Monitores de software so usadas para monitorar os sistemas operacionais
e software como redes e bancos de dados. A cada ativao, vrias
instrues so executadas, e, portanto, eles so adequados apenas se a
taxa de entrada baixa. Por exemplo, se o monitor executa 100 instrues
por evento, cada ativao levaria 0,1 milissegundo em uma mquina de 1
MIPS. Assim, para limitar a sobrecarga para 1%, deve ser ativada em
intervalos de 10 milissegundos ou mais. Ou seja, a taxa de entrada deve
ser inferior a 100 eventos por segundo.
Monitores de software geralmente tm menores taxas de entrada,
resolues mais baixas e maior overhead do que os monitores de
hardware. No entanto, eles tm larguras de entrada superiores e maior
capacidade de gravao do que os monitores de hardware. Eles so mais
fceis de desenvolver e mais fcil de modificar, se necessrio.
2.3.4. Monitores em Hardware
Um monitor de hardware consiste em peas separadas de equipamentos
que esto ligados ao sistema a ser monitorado por meio de sondas. Sem
consumir os recursos do sistema em monitoramento. Assim, monitores de
hardware geralmente tm menor sobrecarga do que monitor de software.
Sua taxa de entrada tambm maior. Alm disso, a probabilidade de
introduzir erros no funcionamento do sistema geralmente mais baixa do
que a dos monitores de software.
Os monitores de hardware de propsito geral disponveis no mercado so
constitudos dos elementos listados na Tabela 2.3.
Tabela 2.3 - Elementos dos monitores hardware de propsito geral disponveis no mercado
sondas

sondas de alta impedncia so utilizadas para observar os sinais nos


pontos desejados no hardware do sistema

Avaliao de Desempenho de Sistemas

32

contadores

estes so incrementados sempre que um determinado evento ocorre

elementos
lgica

da os sinais de muitas sondagens podem ser combinados usando AND, OR


e outras portas lgicas. As combinaes so usados para indicar
eventos que podem incrementar contadores

comparadores

estes podem ser usados para comparar valores de contadores ou sinal


com valores pr-definidos

mapeamento
de hardware

permite que histogramas de quantidades observadas possam ser


calculados. composto de vrios comparadores e contadores

timer

usado para marcar tempo ou para desencadear uma operao de


amostragem

unidade
memria

de a maioria dos monitores tm unidades de memria para armazenar os


dados

2.3.5. Monitores de Software versus de Hardware


Dado um problema de monitoramento, deve-se usar um monitor de
hardware ou um monitor de software? A escolha no to difcil como
pode parecer. Para a maioria das aplicaes, apenas um dos dois tipos de
monitores ser satisfatrio.
O primeiro passo na escolha do monitor considerar o que precisa ser
medido. Monitores de hardware podem medir os sinais eltricos do
sistema e pode grav-los com preciso, mesmo em alta velocidade. No
entanto, difcil para eles determinar as informaes de nvel superior,
tais como comprimentos de fila ou usurio atual, a menos que a
informao fique facilmente disponvel num registo de hardware.
Monitores de software, ao contrrio, pode facilmente determinar a
informao de nvel superior, mas no pode observar facilmente eventos
de nvel inferior, como o tempo para buscar um cdigo de operao para
uma instruo. Exemplos de variveis que podem ser observados por
ambos os tipos de monitores so a utilizaes de dispositivos e
sobreposio CPU-E/S.
A segunda considerao a taxa de entrada, a taxa na qual os eventos
devem ser observados. Monitores de hardware podem registrar eventos
muito rapidamente. Um monitor de software, por outro lado, pode exigir
algumas centenas de instrues por observao e por isso no pode ser
usado se o tempo de interveno pequeno.
O resoluo de tempo necessria a considerao seguinte. Um monitor
de hardware tem um relgio de hardware separado e pode fornecer a
resoluo de tempo em alguns nanossegundos. Os monitores de software
usam o relgio do sistema, que normalmente tem uma resoluo de
alguns milissegundos.
A percia do analista de desempenho tambm devem ser levados em
considerao na escolha do monitor. Apenas um analista com um bom
Avaliao de Desempenho de Sistemas

33

conhecimento do hardware do sistema pode utilizar corretamente um


monitor de hardware. Um monitor de software, por outro lado, requer um
conhecimento profundo do software do sistema a ser instrumentado.
A quantidade de dados gravados diretamente afeta a sobrecarga de um
monitor de software. Se o montante deve ser muito grande, um monitor
de hardware com armazenamento interno secundrio deve ser utilizado.
Um monitor de software, por sua natureza, sequencial, uma vez que no
pode gravar vrios eventos simultneos (a menos que o software seja
distribudo). Por exemplo, se vrios dispositivos solicitarem servios a
partir do processador utilizando interrupes, as interrupes sero
atendidas sequencialmente e sero observados pelo software do monitor
sequencialmente. Monitores de hardware tm vrias sondas que pode
gravar eventos simultneos.
Monitores de software consomem recursos do sistema que seriam
disponveis para os usurios. Um monitor de hardware, por outro lado,
consome pouco, se houver, dos recursos do sistema. Sua presena pode
ou no ser visvel para o sistema.
A maioria dos monitores de hardware so projetados para serem anexados
a uma variedade de sistemas. Assim, o mesmo monitor pode ser usado
para monitorar os sistemas de diferentes fornecedores ou os sistemas que
usam diferentes sistemas operacionais. Monitores de software so
desenvolvidos especificamente para um determinado hardware e software
de base e no podem ser facilmente vendidos separadamente.
Um monitor de hardware continua observando o sistema mesmo quando
ele no est funcionando corretamente, e assim, ele pode ser usado para
depurar o sistema. Um monitor de software podem no ser capaz de
observar corretamente durante avarias, e no pode ser executado quando
o sistema trava.
Monitores de hardware e de software podem ter bugs e introduzir erros
nos dados medidos. No entanto, com monitores de software, uma vez que
o software foi completamente depurado, os erros so raros. Com um
monitor de hardware, totalmente depurado, possvel erros de sondagem.
Finalmente, e mais importante, os monitores de hardware so mais caros
que os monitores de software. Este fato sozinho pode ser suficiente para
polarizar a escolha em muitos casos.
Uma comparao entre monitores de hardware versus monitores de
software esto resumidos na Tabela 2.4.
Tabela 2.4 - Comparao entre monitores de hardware e de software
Critrio
Domnio

Monitor de Hardware
Monitor de Software
difcil de monitorar eventos do sistema difcil monitorar eventos de hardware a no
operacional
ser reconhecvel por uma instruo

Avaliao de Desempenho de Sistemas

34

taxa de amostragem de 105 por segundo taxa de amostragem limitada pelo


processador e necessrio overhead
possvel
Resoluo de tempo
10 nanosegundos possvel
geralmente 10 a 16 milissegundos
requer profundo conhecimento do
Percia
requer o conhecimento do software
hardware
limitada pela memria e armazenamento
Capacidade de gravao secundrio, no um problema limitada pela sobrecarga desejada
atualmente
no possvel gravar vrios eventos
pode gravar simultaneamente vrios
Largura de entrada
simultneos a menos que haja mltiplos
eventos
processadores
A sobrecarga depende das taxa de entrada e
Overhead do Monitor
Nenhum
largura de entrada, menos de 5% o
adequado
Portabilidade
geralmente porttil
especficas para um sistema operacional
monitoramento continua mesmo durante no pode monitor durante o travamento do
Disponibilidade
mau funcionamento do sistema ou falha sistema
possveis ao conectar as pontas de prova
Erros
uma vez depurado, os erros so raros
em pontos errados
Custo
alto
mdio
Taxas de entrada

2.3.6. Firmware e Monitores Hbridos


Monitores de firmware so implementados atravs da modificao do
microcdigo do processador. Estes so teis para aplicaes que se situam
entre o software e os limites de monitoramento de hardware. Na maioria
dos aspectos, monitores firmware so semelhantes aos monitores de
software. No entanto, uma vez que o espao para o microcdigo limitado
e existem limitaes de tempo, monitores de firmware geralmente so
muito limitados. Eles so teis em aplicaes onde as consideraes de
tempo impede o uso de monitores de software e a inacessibilidade de
pontos de sondagem impede o uso de monitores de hardware.
Monitores de firmware tm sido usados para monitoramento de rede, onde
as interfaces de rede existentes podem ser facilmente microprogramadas
para monitorar o trfego na rede. Outra aplicao adequada para
monitores firmware para gerar perfis de endereo do microcdigo. Esses
perfis so usados para otimizar o cdigo. Um monitor usando uma
combinao de hardware, software ou firmware um monitor hbrido.
Monitores de software tm boas capacidades de reduo de dados,
enquanto os monitores de hardware tm alta resoluo. Assim, um
monitor hbrido, composto de um componente de hardware para coleta de
dados junto com um componente de software para a reduo de dados,
oferece o melhor dos dois mundos.

Avaliao de Desempenho de Sistemas

35

2.4. Benchmarking
Um dos problemas importantes para os gestores de instalaes de
sistemas de computao o planejamento de capacidade, que
consiste em assegurar que os recursos adequados de computador estaro
disponveis para atender a demanda futura de carga de trabalho de forma
rentvel, satisfazendo simultaneamente os objetivos de desempenho.
O termo gerenciamento da capacidade usado para denotar o
problema de garantir que os recursos computacionais disponveis esto
sendo usados para fornecer o mais alto desempenho. Assim, o
gerenciamento de capacidade se preocupa com o presente, enquanto o
planejamento de capacidade est preocupado com o futuro.
As alternativas para o planejamento de capacidade geralmente consistem
em obter mais recursos de computao, enquanto as alternativas para o
gerenciamento de capacidade consistem em ajustar os padres de uso,
reorganizando a configurao e mudando os parmetros do sistema para
maximizar o desempenho. O processo de ajuste dos parmetros do
sistema para otimizar o desempenho tambm chamado de ajuste de
desempenho.
Para comparar o desempenho de dois sistemas concorrentes de uma
forma objetiva, benchmarks so executados nesses sistemas usando carga
direcionada e de modo automtico. Os erros e a comparao de
benchmarking, bem como questes relacionadas com o direcionamento de
carga so discutidos neste captulo.
Benchmarking o processo de comparar dois sistemas que utilizam o
padro bem conhecido benchmarks. O processo nem sempre realizado
de forma justa. Algumas das maneiras que os resultados de um estudo de
benchmarking podem ser enganosos ou tendenciosos so discutidos a
seguir.
a) Configuraes diferentes podem ser usadas para executar a mesma carga de
trabalho nos dois sistemas. As configuraes podem ter uma quantidade diferente de
memria, discos diferentes ou nmero diferente de discos.
b) Os compiladores podem otimizar a carga de trabalho. H casos em o compilador, ao
otimizar o cdigo executvel, elimina partes de programas sintticos, dando assim o
desempenho melhor do que outros sistemas no otimizados
c) Especificaes de teste podem ser escritos de forma que eles privilegiam uma
mquina. Isso pode acontecer se as especificaes so escritas com base em um
ambiente existente, sem considerao para generalizar os requisitos para diferentes
fornecedores
d) Sequncia de tarefas sincronizados podem ser usadas. possvel manipular uma
sequncia de trabalho para que sincronize a CPU o sistema de E/S produzindo um melhor
desempenho global
e) A carga de trabalho pode ser arbitrariamente escolhida. Muitos dos programas no
foram verificados para serem representativos das aplicaes do mundo real
f)
Benchmarks muito pequenos pode ser usado. Benchmarks com poucas instrues
podem explorar pouco os circuitos internos de hardware, aumentando acertos de cache,
no mostrar o efeito de sobrecarga de E/S e alternncia de contexto. Uma escolha pouco
Avaliao de Desempenho de Sistemas

36

criteriosa de instrues de loop pode levar a resultados distorcidos, por qualquer


quantidade desejada. A maioria dos sistemas reais fazem uso de uma ampla variedade
de cargas de trabalho. Para comparar dois sistemas, deve-se, portanto, utilizar o maior
nmero possvel de cargas de trabalho. Usando apenas alguns benchmarks selecionados,
os resultados podem ser tendenciosos, conforme desejado
g) Benchmarks podem ser traduzidos manualmente para otimizar o desempenho.
Muitas vezes, benchmarks precisam ser traduzidos manualmente para torn-los
executveis em sistemas diferentes. O desempenho pode, ento, depender mais da
habilidadedo do tradutor do que no sistema em teste

2.4.1. Etapas do Planejamento e da Gesto de Capacidade


A Figura 2.2 mostra as etapas do processo de planejamento de
capacidade. Para o planejamento, bem como a gesto, as etapas so
basicamente iguais:
a)
b)
c)
d)
e)
f)

Instrumentalizar o sistema
Monitorar o uso do sistema
Caracterizar a carga de trabalho
Prever o desempenho sob diferentes alternativas
estabelecer o modelo do sistema
Selecione a alternativa com menor custo e o maior desempenho

Figura 2.2 - Esquema do processo de planejamento e de gesto de capacidade.


O primeiro passo garantir que existem contadores apropriados e links no
sistema para registrar o uso corrente. Na maioria dos casos, os contadores
so construdos nos sistemas operacionais, software aplicativos e
dispositivos de E/S so usados. Uso de dados de registro contbil
provavelmente o mtodo mais popular.
O segundo passo consiste em monitorar o uso e caracterizar a carga de
trabalho. Isto requer a coleta de dados por um perodo de tempo que
Avaliao de Desempenho de Sistemas

37

permita estimar a entrada para o modelo do sistema para previso de


desempenho.
Para a gesto de capacidade, a configurao atual e carga de trabalho
podem ser dados de entrada de um modelo de ajuste para informar
alteraes na configurao de parmetros do sistema. Este modelo pode
simular em detalhes o sistema e deve conter um conjunto de regras
desenvolvidas especificamente para o sistema. Por exemplo, uma das
regras pode ser para sugerir a colocao equilibrada de arquivos se um
uso altamente enviesada dos dispositivos de disco visto.
Para planejamento de capacidade, em primeiro lugar a carga de trabalho
prevista com base no monitoramento de longo prazo do sistema. Ento as
alternativas de configurao diferentes e cargas de trabalho futuro so
dados de entrada para um modelo que prev o desempenho. Esta etapa
posterior de seleo de equipamentos tambm chamado de
dimensionamento. Os modelos para o dimensionamento so geralmente
menos detalhados do que os modelos para ajuste de desempenho. Muitas
vezes, as tcnicas de modelagem analtica, tais como modelos de filas,
modelos usados para o dimensionamento uma vez que a lista de
alternativas inclui uma ampla variedade de novos hardware e
componentes de software para que modelos detalhados podem ainda no
existir. Assim, enquanto os modelos de ajuste so detalhados e especficas
do sistema, os modelos de planejamento so grosseiros e independem do
sistema ou, pelo menos, so menos especficos para o sistema. Em muitos
locais, regras muito simples, tais como demanda crescente por um fator x
a cada ano y, so usadas para planejamento de longo prazo. Em muitas
instalaes, a carga de trabalho futura to desconhecida que as tcnicas
de previso mais sofisticadas no podem ser de grande ajuda.
2.4.2. Problemas no Planejamento de Capacidade
A maior parte da capacidade de planejamento tratada na literatura so
seleo de mtricas de desempenho, tcnicas de monitoramento,
caracterizao de carga de trabalho, previso e tcnicas de modelagem.
Uma vez que cada uma dessas questes discutida em diferentes partes
deste livro, a discusso aqui se limita lista de problemas enfrentados
pelos planejadores de capacidade. Esses problemas so discutidos na
Tabela 2.5.
Tabela 2.5 - Principais problemas do planejamento de capacidade
No h terminologia padro
Todos os fornecedores de ferramentas de planejamento de capacidade tem uma
definio diferente de gesto da capacidade, planejamento de capacidade,
dimensionamento, ajuste de desempenho e assim por diante. Muitas vezes se compra
uma ferramenta de planejamento de capacidade apenas para descobrir mais tarde que
ele faz apenas ajustes ou dimensionamento e no tem nenhuma medida de carga de
trabalho ou caracterizao das instalaes. Alguns fornecedores usam o termo

Avaliao de Desempenho de Sistemas

38

gerenciamento de capacidade para incluir tanto o planejamento de capacidade e ajuste.


Outros usam para denotar ajustes apenas
No existe uma definio padro de capacidade
Existem vrias possibilidades. Uma definio de capacidade, em termos de rendimento
mximo, j foi apresentado. Rendimento medido em pedidos por unidade de tempo,
por exemplo, tarefas por segundo, transaes por segundo (TPS), instrues por
segundo (MIPS), ou bits por segundo (para links de rede). Outra possibilidade definir a
capacidade como o nmero mximo de usurios que o sistema pode suportar enquanto
atende um objetivo de desempenho especificados. Nesta definio, os usurios so
apenas um exemplo do que tem sido chamado de unidade de carga de trabalho. Outras
unidades de carga de trabalho so pessoas, sesses, tarefas, atividades, programas,
contas, projetos e assim por diante, e a capacidade expressa nestas unidades.
Unidades de carga de trabalho tambm so chamados de componentes carga de
trabalho
H uma srie de capacidades diferentes para o mesmo sistema
J foram descritas trs capacidades, capacidade nominal, capacidade utilizvel e joelho
de capacidade. Os termos capacidade e outros que tm sido utilizados na literatura so
a capacidade prtica (capacidade utilizvel) e capacidade terica (capacidade nominal)
No h unidade de carga de trabalho padro
O problema com a medio da capacidade em unidades de carga de trabalho, como
usurios ou sesses, que ela requer uma caracterizao detalhada da unidade de
carga de trabalho que varia de um ambiente para outro. por causa dessa dificuldade
que a carga de trabalho independente de medidas de capacidade, tais como MIPS, ainda
so populares. comum gerentes de sistemas planejarem o futuro em termos de suas
necessidades de MIPS
Previses futuras so de aplicao difcil
A maioria das previso baseada na suposio de que a tendncia futura ser
semelhante ao passado. Esta suposio violada, se uma nova tecnologia surge de
repente. Uma srie de novas aplicaes tambm se tornaram possveis devido
capacidade de computao em diversas mdias e de modo distribudo
No h uniformidade entre os sistemas de diferentes fornecedores
A mesma carga de trabalho utiliza diferentes quantidades de recursos de sistemas
diferentes. Isso requer o desenvolvimento de uma referncia independente de
fornecedor e execut-lo em sistemas diferentes. Alm disso, modelos separados
(simulao ou analtica) tm de ser desenvolvidos para cada sistema. possvel,
inadvertidamente introduzir vieses em qualquer uma destas fases
As entradas do modelo nem sempre podem ser medidas
Modelos de simulao ou analticos so usados para prever o desempenho sob
diferentes alternativas. s vezes, os insumos necessrios para o modelo no so
mensurveis com preciso. Por exemplo, "tempo para pensar" comumente usado em
modelos analticos. Em um ambiente real, o tempo entre os comandos sucessivos do
usurio pode incluir o pensamento, assim como outras interrupes, tais como cofee
breaks. quase impossvel medir corretamente estes valores de tempo. Determinar
insumos dos modelos se torna ainda mais difcil se a ferramenta de monitoramento, a
ferramenta de anlise de carga de trabalho e ferramentas de modelagem so de
diferentes fornecedores. A sada de uma etapa pode no estar em um formato utilizvel
pelo prximo passo
Validar as projees de modelos difcil
Existem dois tipos de validaes do modelo. O primeiro tipo, validao de base, exige a
utilizao de carga de trabalho real e da configurao do modelo e verificar se a sada
do modelo corresponde ao desempenho do sistema observado. A segunda validao,
chamada de validao de projeo, exige a mudana da carga de trabalho e de
configurao e verificar se a sada do modelo corresponde o desempenho do sistema
Avaliao de Desempenho de Sistemas

39

real alterado. Embora seja fcil de mudar as entradas para um modelo, difcil controlar
a carga de trabalho e configuraes em um sistema real. Por esta razo, validaes de
projeo raramente so executadas. Sem validaes de projeo, a utilizao do modelo
de planejamento de capacidade torna-se suspeito
Ambientes distribudos so complexos demais para serem modelados
Os primeiros sistemas de computador consistiam de apenas alguns componentes. Cada
componente era caro o suficiente para justificar o custo de modelagem com preciso do
seu comportamento. Alm disso, o nmero de usurios do sistema era grande. Assim,
embora o comportamento de cada usurio seja altamente varivel, o desempenho
agregado de todos os usurios no varia muito e pode ser modelado com preciso. Nos
ambientes distribudos atuais, o sistema consiste de um grande nmero de clientes
semiautnomos, servidores, links de rede e E/S de dispositivos. As interaes so
tambm bastante complexa. Alm disso, o custo de componentes individuais no alto
o suficiente para justificar sua modelagem precisa
Desempenho apenas uma pequena parte do problema de planejamento de capacidade
A questo-chave no planejamento de capacidade a de custo, que inclui o custo do
equipamento, software, instalao, manuteno, pessoal, espao, climatizao.
Modelagem de desempenho ajuda somente no dimensionamento do equipamento. No
entanto, como o custo do hardware do computador est em declnio, estes outros custos
esto se tornando dominantes e tornaram-se uma considerao importante no
planejamento de capacidade

Apesar dos problemas listados acima, o planejamento de capacidade


continua a ser um importante problema a ser enfrentado por um gerente
de instalao de computador. Felizmente, uma srie de ferramentas de
planejamento comercial da capacidade esto disponveis no mercado.
Muitas dessas ferramentas tm bibliotecas de modelos de sistemas
especficos e incluem analisadores de carga de trabalho que compreende
a contabilidade de logs dos sistemas. Alguns tambm tm monitores
integrados.
2.4.3. Erros Comuns no Benchmarking
Benchmarking, que o processo de execuo de benchmarks em sistemas
diferentes, o mtodo mais comum para comparar o desempenho de dois
sistemas de planejamento de capacidade e aquisies. A Tabela 2.6
discute os erros que tm sido observados repetidamente neste processo.
Como erros discutidos em outras sees, esses erros so um resultado da
inexperincia ou desconhecimento por parte dos analistas.
Tabela 2.6 - Erros comuns do processo de benchmarking
Apenas o comportamento mdio representado no Workload Test
Um teste de carga de trabalho projetado para ser representativo da carga de trabalho real. A
carga de trabalho projetada assegura que as solicitaes de recursos relativos so
semelhantes aos observados no ambiente real. No entanto, apenas o comportamento mdio
representado, a varincia ignorada. Por exemplo, o nmero mdio de E/S, ou tempo mdio
de CPU na carga de trabalho de teste podem ser semelhantes aos da carga de trabalho real. A
distribuio, tais como uniforme, exponencial, ou constante, pode ser escolhidas
arbitrariamente, sem qualquer validao. Valores constantes so indesejveis, uma vez que
Avaliao de Desempenho de Sistemas

40

pode causar sincronizaes levando a concluses erradas. Em alguns casos, a varincia, ou


mesmo uma representao mais detalhada das demandas de recursos necessria
Assimetria de dispositivo ignorada
Os pedidos de E/S so comumente assumidos ser igualmente distribudos entre todos os
dispositivos de E/S. Na prtica, os pedidos de I/0 pode seguir um comportamento
direcionado de tal forma que sucessivos E/S podem acessar o mesmo dispositivo que permite
tempos maiores nas filas. Ignorar esta assimetria para pedidos de E/S e para solicitaes de
rede leva a previses de menor tempo de resposta e pode no mostrar os gargalos de
dispositivo que podem ocorrer em ambientes reais
Nvel de carga controlado inadequadamente
As cargas de trabalho de teste tm vrios parmetros que podem ser alteradas para aumentar
o nvel de carga no sistema. Por exemplo, o nmero de usurios pode ser aumentado, o
tempo de pensar dos usurios pode ser diminudo, ou a demanda de recursos por usurio
pode ser aumentado. Estas trs opes no tm os mesmos resultados. A maneira mais
realista aumentar o nmero de usurios, mas nas medies isso requer mais recursos ou
mais espao de armazenamento em uma simulao, e assim as outras duas alternativas
podem ser usadas. Alterar o tempo de pensar a alternativa mais fcil mas no equivalente
a primeira alternativa j que a ordem dos pedidos de vrios dispositivos no alterado,
portanto, o erros de cache podem ser muito menores do que aqueles em um sistema com
mais usurios. A terceira alternativa muda significativamente a carga de trabalho, e isso pode
no ser representativa do ambiente real
Efeitos de cache so ignorados
Caches so muito sensveis ordem das solicitaes. Na maioria dos estudos de
caracterizao de carga de trabalho, as informaes do pedido perdido. Mesmo igualando a
mdia e varincia de demandas de recursos no garante que o desempenho de cache ser
semelhante ao que em um ambiente real. Nos sistemas modernos, cache usado para acessos
memria, discos, bem como redes. A ordem de chegada tornou-se mais necessria para os
modelos
Tamanhos de buffer no apropriado
O tamanho do buffer ter um impacto significativo sobre o desempenho de E/S e dispositivos
de rede. Por exemplo, em alguns casos, uma mudana de 1 byte no tamanho do buffer pode
dobrar o nmero de mensagens de rede. O tamanho e o nmero de buffers so geralmente
parmetros do sistema e seus valores em sistemas experimentais deve representar os valores
usados em sistemas de produo
Imprecises na amostragem
Alguns dos dados coletados para a caracterizao de carga de trabalho recolhida atravs de
amostragem, onde, em uma srie de indicadores do estado de contadores so lidos
periodicamente. s vezes, isso pode levar a erros significativos nas medidas
Ignorar o Overhead no Monitoramento
O mecanismo de coleta de dados ou o monitor software utilizado na medio pode ter
sobrecarga e apresentar apresenta algum erro nos valores medidos. Ele pode consumir
processador, armazenamento e E/S recursos para manter e registrar as medidas. Se a
inexatido, por exemplo, de 10%, o resultado do modelo pode ser mais ou menos
imprecisos, mesmo se o modelo for preciso
No Validar Medidas
Avaliao de Desempenho de Sistemas

41

Este um erro comum. Enquanto os modelos de simulao e analticos so rotineiramente


validados antes do uso, a validao dos dados medidos raramente pensada. Qualquer erro
na configurao do experimento pode permanecer despercebido. Por exemplo, em monitores
de hardware, fcil deslocar uma sonda ou ter uma sonda solta. Portanto, necessrio
verificar as medies. Todos os resultados contraintuitivos devem ser explicados. Quaisquer
valores que no podem ser explicados deve ser investigado. Verificaes automticas devem
ser includas nas medidas, por exemplo, o nmero total de pacotes enviados por todos os ns
em uma rede deve ser prximo do nmero total recebido
No Garantir as Mesmas Condies Iniciais
Cada execuo do benchmark muda o estado do sistema. Por exemplo, o espao em disco
disponvel poder ser reduzido. Os registros de dados podem ter diferentes contedos. Iniciar
a prxima execuo no sistema que foi alterado pode fazer o experimento no-repetvel.
Uma soluo garantir que todos os arquivos criados por uma carga de trabalho sejam
eliminados e o estado inicial do sistema seja reestabelecido. Outra soluo estudar a
sensibilidade dos resultados de tais fenmenos. Se os resultados so muito sensveis s
condies iniciais, ento mais fatores devem ser adicionadas ao modelo de carga de trabalho
No Medio de Desempenho Transiente
A maioria das medies, das simulaes e dos modelos analticos so projetados para prever
o desempenho em condies estveis. Durante as medies, o sistema levado a alcanar
um estado estvel antes de que medidas so tomadas. Esta uma abordagem vlida na
maioria dos casos. No entanto, se o sistema tal que leva muito tempo para atingir o estado
estacionrio, em ambientes reais, muitas vezes o estado do sistema deslocam de um estado
para outro. Em outras palavras, o sistema poder estar em um estado transiente mais
frequentemente do que em um estado estacionrio. Neste caso, mais realista estudar o
desempenho transiente do sistema do que o desempenho em estado estacionrio
Usando a Utilizao de dispositivos para Comparaes de Desempenho
Utilizao do dispositivo uma mtricas de desempenho no sentido de que, dada a mesma
carga de trabalho, uma menor utilizao a preferida. No entanto, seu uso para comparar
dois sistemas podem ser, por vezes, sem sentido. Por exemplo, em um ambiente fechado
pedidos so gerados a intervalos de tempo fixo. Dados dois sistemas com tal ambiente, o
sistema com o tempo de resposta menor ter mais pedidos gerados por unidade de tempo e
ter maior utilizao de dispositivo. Menor utilizao para o mesmo nmero de usurios no
deve ser interpretada no sentido de um sistema melhor. A mtrica correta para comparar dois
sistemas, neste caso, comparar o rendimento em termos de solicitaes por segundo. Outro
erro comum usar utilizao para validaes de modelos
Muita Coleta de Dados mas Com Pouca Anlise
Este um erro comum. A coleta de dados o primeiro passo para benchmarking. O prximo
passo a anlise de dados e pode no receber ateno adequada por vrias razes. Primeiro,
a pessoa que faz a medio pode ter pouco ou nenhum treinamento em tcnicas de
estatstica. Os grficos usuais de demanda de recursos e utilizao em funo do tempo
podem ser preparados, mas no interpretados adequadamente. Em segundo lugar, a medio
dos dados pode tomar muito tempo do projeto e faltar tempo para anlise. Uma maneira de
evitar essa armadilha formar equipes de analistas com formao de medio e anlise,
alocar tempo de anlise durante o planejamento do projeto e para discutir as atividades de
medio e anlise. Muitas vezes os planos de medio pode ter que ser alterado com base
nos resultados da anlise

Avaliao de Desempenho de Sistemas

42

A lista acima inclui apenas os erros que um analista pode fazer


inadvertidamente, devido inexperincia.
2.5. Benchmarks Populares
Na rea comercial, o termo benchmark quase sempre usado como
sinnimo de carga de trabalho. Kernels, programas sintticoss e cargas de
trabalho em nvel de aplicativo, por exemplo, so todos chamados
benchmarks. Embora o mix de instrues um tipo de carga de trabalho,
eles no so chamados benchmarks. Alguns autores tm tentado restringir
o termo benchmark para se referir apenas ao conjunto de programas que
utilizam cargas de trabalho. Esta distino, no entanto, tem sido quase
sempre ignorada na literatura. Assim, o processo de comparao de
desempenho por dois ou mais sistemas meio de medies chamado de
benchmarking, e as cargas de trabalho utilizadas nas medies so
chamados benchmark. Alguns dos benchmarks bem conhecidos so
descritas na Tabela 2.7.
Tabela 2.7 - Benchmarks populares
Sieve
O kernel sieve foi usado para comparar microprocessadores, computadores pessoais e
linguagens de alto nvel. Ele baseado no algoritmo de Crivo de Eratstenes e usado para
localizar todos os nmeros primos abaixo de um determinado nmero n.
Funo de Ackermann
Este kernel foi utilizado para avaliar a eficincia do mecanismo de procedimento de
chamada em linguagem Algol. A funo tem dois parmetros e definida de forma recursiva.
A funo de Ackermann(3,n) avaliada para valores de n de 1 a 6. O tempo de execuo
mdio por chamada, o nmero de instrues executadas por chamada e a quantidade de
espao de pilha necessrio para cada chamada so usados para comparar sistemas.
Whetstone
Utilizado na Agncia Central de Computao Britnica, o kernel Whetstone consiste de um
conjunto de 11 mdulos projetados para combinar dinamicamente as frequncias observadas
das operaes usadas em 949 programas. Este kernel avalia os recursos do processador,
como matriz de endereamento, aritmtica de pontos fixo e flutuante, chamadas de subrotinas e passagem de parmetros. Os resultados dos benchmarks Whetstone so medidos em
WIPS (Instrues Whetstone por Segundo). H muitas permutaes do benchmark
Whetstone, por isso importante para assegurar que as comparaes entre vrios sistemas
utilizem o mesmo cdigo fonte e que a definio do contador de laos interno grande o
suficiente para reduzir a variabilidade de tempo. Apesar de seu mix de operaes sintticas,
Whetstone geralmente considerado uma referncia de ponto flutuante e mais
representativo de pequenas aplicaes de engenharia/cientficas que cabem na memria
cache. Seus mdulos foram projetados para minimizar o impacto das otimizaes conhecidas
dos compiladores. Novas tcnicas de otimizao do compilador podem afetar
significativamente o tempo de execuo em um processador. Ele sofre de outros problemas
de kernels, nele no h E/S e os valores dos parmetros de entrada podem afetar
significativamente o desempenho medido.
Avaliao de Desempenho de Sistemas

43

Linpack
Desenvolvido por Jack Dongarra (1983) do Argonne National Laboratory, este benchmarck
composto de uma srie de programas que resolve sistemas densos de equaes lineares,
caracterizadas por ter elevada percentagem de adies e multiplicaes de ponto flutuante. A
maior parte do tempo de processamento consumido em um conjunto de subrotinas
chamadas Subprogramas Bsicos de lgebra Linear (BLAS), que so chamados vrias vezes
ao longo do benchmark. Os benchmarks Linpack so comparados com base na taxa de
execuo, medida em MFLOPS. As variantes mais populares resolvem um sistema de
equaes 100100, tanto em preciso simples quanto dupla, e se tornaram uma das
referncias mais utilizadas para medir performance de aplicaes de engenharia/cientficas.
Dhrystone
Desenvolvido em 1984 por Reinhold Weicker na Siemens, este kernel contm muitas
chamadas de procedimento e considerado para representar ambientes de programao de
sistemas. Os resultados so normalmente apresentados em Instrues Dhrystone Por
Segundo (DIPS). A documentao de referncia apresenta um conjunto de regras bsicas
para criao e execuo do Dhrystone. O valor de referncia foi atualizado vrias vezes e
importante para especificar o nmero da verso quando o kernel usado. O kernel
supostamente tem pequena dinmica no aninhamento das chamadas de funo, um baixo
nmero de instrues por chamada de funo, e uma grande porcentagem de tempo gasto na
cpia de cadeia de caracteres. O benchmark uma medida popular de desempenho de
aritmtica de inteiros, mas no avalia processamento de ponto flutuante ou E/S.

2.6.Pacote de Benchmark do SPEC


A Performance Systems Avaliao Cooperativa (SPEC) uma corporao
sem fins lucrativos formada pelos principais fornecedores de computador
para desenvolver um conjunto padronizado de benchmarks. A verso 1.0
do pacote de benchmarks SPEC (ver SPEC 1990) consiste nos 10 seguintes
benchmarks retirados de diversas aplicaes de engenharia e cientficos,
Tabela 2.8.
Tabela 2.8 - Pacotes de benchmarks SPEC verso 1.0
GCC

mede o tempo para o GNU Compiler C converter 19 arquivos-fontes


preprocessados em linguagem assembly. Esse benchmark representante
de um ambiente de engenharia de software e mede a eficincia de um
sistema de compilao

Espresso

uma ferramenta da Electronic Design Automation (EDA) que realiza a


minimizao da funo heurstica boolean para Arrays Lgicos Programveis
(PLAs). medido o tempo decorrido para executar um conjunto de sete
modelos de entrada

Spice 2g6

outro representante do ambiente EDA, uma ferramenta de simulao


amplamente utilizada em circuito analgico. medido o tempo para simular
um circuito bipolar

Doduc

este um benchmark sinttico que realiza uma simulao de Monte Carlo


de certos aspectos de um reator nuclear. Devido sua estrutura iterativa e

Avaliao de Desempenho de Sistemas

44

abundncia de ramos curtos e loops compactos, testa a eficcia de


memria cache
NASA7

esta uma coleo de sete kernels de uso intensivo de ponto flutuante


realizando operaes na matriz de dados de preciso dupla

LI

o tempo decorrido para resolver o problema populares das 9 rainhas pelo


interpretador Lisp medido

Eqntom

este benchmark traduz uma representao lgica de uma equao


booleana para uma tabela verdade

Matrix300

executa operaes de matriz usando vrias rotinas Linpack em vrias


matrizes de tamanho 300300. O cdigo usa aritmtica de ponto flutuante
de dupla preciso e altamente vetorizvel

Fpppp

problema de qumica quntica que usa preciso dupla em ponto flutuante


Fortran, difcil de vetorizavel

Tomcatv

gera uma malha vetorizavel em ponto flutuante de preciso dupla em


Fortran. Uma vez que altamente vetorizvel, speedups substanciais tm
sido observadas em diversos sistemas de memria compartilhada com
vrios processadores

Estes valores de referncia, que enfatizam principalmente a CPU, unidade


de ponto flutuante (FPU), e at certo ponto o subsistema de memria, so
destinadas para comparar as velocidades de CPU. Parmetros de
comparao para E/S e outros subsistemas podem ser includos em
verses futuras.

Avaliao de Desempenho de Sistemas

45

3. Modelagem Analtica de Sistemas de Filas


H inmeros sistemas computacionais constitudos por Sistema de Filas
(SF) que podem ser modelados por Redes de Sistemas de Filas (RSF). Em
geral, RSF so modelos em que as tarefas que saem de um SF so
encaminhadas para outro SF (ou para o mesmo SF).
Ao contrrio de SF individuais, no h nenhuma notao fcil para
especificar o tipo de uma RSF. A maneira mais simples de classific-las
aberta ou fechada. Uma RSF aberta tem chegadas e partidas externas,
como mostrado na Figura 3.1. O nmero de tarefas numa RSF aberta varia
com o tempo. A anlise de uma RSF aberta assume-se que a vazo
conhecida (igual taxa de chegada) e o objetivo caracterizar a
distribuio do nmero de tarefas no sistema.

Figura 3.1 - Rede de Sistemas de Filas abertas com tarefas entrando no sistema em entrada e
saindo em sada.
Uma RSF fechada no tem chegadas externas ou partidas, o nmero total
de tarefas no sistema constante. Como mostrado na Figura 3.2, os
Servidores do sistema mantm a circulao das tarefas nos SF da rede.
possvel ver uma RSF fechada como um sistema em que a sada est
ligada com a entrada e, desta forma, as tarefas que saem da rede voltam
Avaliao de Desempenho de Sistemas

46

imediatamente a ela. A anlise de uma RSF fechada supem que o


nmero de tarefas dado e se determinar a taxa de transferncia (ou a
taxa de concluso de tarefas).

Figura 3.2 - Rede de Sistemas de Filas fechadas em que o fluxo de tarefas sada-entrada
define a taxa de transferncia do sistema.
Tambm possvel ter RSF mistas que esto abertas para algumas cargas
de trabalho e fechada para outras. Figura 3.3 mostra um exemplo de um
sistema misto com duas classes de tarefas: lote e interativas. O sistema
fechado para tarefas interativas e aberto para tarefas em lote. Todas as
tarefas de uma mesma classe tm as mesmas demandas de servio e
iguais probabilidades de transio. As tarefas de uma classe so
indistinguveis. A anlise de uma RSF mista feita por classe de tarefa.

Avaliao de Desempenho de Sistemas

47

Figura 3.3 - RSF mista.


3.1. Modelos de Rede de Filas de Sistemas de Computadores
Scherr usou um modelo de lojas de reparao de mquinas para
representar um sistema de tempo compartilhado com n terminais. O
modelo reparao de mquinas constitudo por uma srie de mquinas
de trabalho e uma oficina com um ou mais reparadores. Sempre que uma
mquina quebra, ela colocada na fila para a reparao e manuteno
por um tcnico disponvel.
O modelo de um sistema de tempo compartilhado constitudo por n
terminais com um ou mais servidores. Terminais de usurios terminais
geram pedidos (tarefas) que so atendidos pelo servidor, anlogo ao
reparador, Figura 3.4. Depois que uma tarefa feita, ele espera no
terminal de usurio durante um intervalo de tempo aleatrio antes de
realizar um novo ciclo.

Avaliao de Desempenho de Sistemas

48

Figura 3.4 - Modelo de mquina reparadora como analogia para sistema computacional de
tempo compartilhado.

Figura 3.5 - Servidor central como modelo de sistema de tempo compartilhado.


O modelo de servidor central mostrado na Figura 3.5 foi introduzido por
Buzen em 1973. A CPU neste modelo o Servidor Central que conectado
a outros dispositivos. Aps o servio dos dispositivos de E/S serem
executados, as tarefas retornam para a CPU para processamento adicional
e deixa-o quando a prxima E/S requerida ou quando a tarefa estiver
concluda.
Na modelagem de sistemas computacionais so encontrados trs tipos de
dispositivos, descritos na Tabela 3.1.
Tabela 3.1 - Os trs tipos de dispositivos encontrados na modelagem de sistemas
computacionais
Centro de Servio de a maioria dos dispositivos tm um nico Servidor cujo tempo de
Capacidade Fixa
servio no depende do nmero de tarefas no dispositivo. Tais
dispositivos so chamados de centros de capacidade fixa. Por
exemplo, a CPU de um sistema pode ser modelado como um
centro de servio de capacidade fixa, Figura 3.6a
Centros de Carga

finalmente, os dispositivos restantes so chamados de centros de


carga dependentes de servios desde que as suas taxas de

Avaliao de Desempenho de Sistemas

49

servio podem depender da carga ou o nmero de tarefas no


dispositivo. A fila M/M/m (com m > 2) um exemplo de um centro
de servios dependentes de carga. Sua taxa de servio total
aumenta medida que mais e mais Servidores so usados. Um
grupo de ligaes paralelas entre dois ns de uma rede de
computadores um exemplo de um centro de servios
dependentes de carga, Figura 3.6b
Centro de Atraso

h dispositivos que no tm filas, as tarefas demandam a mesma


quantidade de tempo nestes dispositivos, independentemente do
nmero de tarefas no Servidor na mesma. Tais dispositivos podem
ser modelados como um centro com servidores infinitos e so
chamados de centros de atraso ou IS (Infinity Server). Um grupo
de terminais dedicados geralmente modelado como um centro
de atraso, Figura 3.6c

(a)
(b)
(c)
Figura 3.6 - Tipos de dispositivos dos modelos de sistemas: a) centro de servio de capacidade
fixa; b) centro de servios dependentes de carga; e c) um centro de atraso.
A seguir so descritas uma srie de tcnicas para resolver esses modelos
de redes de filas. As tcnicas so apresentadas na ordem da sua
complexidade. A tcnica mais simples usar a anlise operacional.
3.2. Leis Operacionais
Um grande nmero de problemas de anlise de desempenho de sistemas
de computador do dia-a-dia pode ser resolvidos usando algumas relaes
simples que no necessita de quaisquer suposies sobre a distribuio
dos tempos de servio ou de chegadas. Vrias destas relaes, chamadas
Leis Operacionais, foram identificados originalmente por Buzen em 1976 e
posteriormente confirmadas por Denning e Buzen em 1978.
A palavra operacional significa medida diretamente, ou seja, as
quantidades operacionais so as quantidades que podem ser medidas
diretamente durante um perodo finito de observao. Assim, as
suposies operacionalmente testveis so as hipteses que podem ser
verificadas por meio de medies.
Por exemplo, pode-se verificar por meio de medidas se a hiptese do
nmero de entradas igual ao nmero de sadas de um sistema particular.
Portanto, esta hiptese, comumente chamada de hiptese do Balano do
Fluxo de Trabalho, operacionalmente testvel.
Avaliao de Desempenho de Sistemas

50

Por outro lado, no se pode definir, por meio de um conjunto de medio


de tempos de servio observados, se ou no uma sequncia de variveis
aleatrias independentes. Assim, a suposio de independncia, apesar de
comumente utilizada na modelagem de filas, no operacionalmente
testvel.
Por exemplo, considere a viso caixa-preta de um dispositivo i mostrado
na Figura 3.7. Se se observar o sistema por um tempo finito T, pode-se
medir o nmero de chegadas A i, o nmero de concluses C i e o tempo
durante este perodo Bi. Todos estas so quantidades operacionais.

Figura 3.7 - RSF vista como uma caixa-preta.


A partir destas medidas, pode-se ainda obter as seguintes quantidades
operacionais:

Taxa de chegada: i = nmero de chegadas/tempo = Ai/T


Rendimento ou Vazo: Xi = nmero de concluses/tempo = Ci/T
Utilizao: Ui = tempo ocupado/tempo total = Bi/T
Tempo mdio de servio: Si = tempo total do servidor/nmero de tarefas = Bi/Ci

Note-se que estas quantidades so variveis operacionais que podem


mudar de um perodo de observao para outro, mas h certas relaes
que mantm em cada perodo de observao. Tais relaes so chamadas
Leis Operacionais.
3.2.1. Lei da Utilizao (U)
Dado o nmero de concluses Ci e o tempo ocupado Bi de um dispositivo i
durante um perodo de observao T, tem-se a seguinte relao entre
estas variveis:

Avaliao de Desempenho de Sistemas

51

B i C i Bi
=
T T Ci
U i= X i Si
U i=

3.1
3.2

A Lei de Utilizao, bem como as outras leis operacionais, so quantidades


operacionais e no h necessidade de considerar os valores esperados
destas variveis aleatrias ou assumir uma distribuio de probabilidade
para eles.

Exemplo 3.1 - Considere o problema de um gateway de rede em que pacotes chegam a


uma taxa de 125 pacotes por segundo (pps) e o gateway leva uma mdia de dois
milissegundos para encaminh-las.
Vazo: Xi = taxa de sada = velocidade de chegada = 125 pps
Tempo de servio: Si = 0,002 s
Utilizao: Ui = XiSi = 125 0,002 = 0,25 = 25%

3.2.2. Lei do Fluxo Forado


Em um modelo aberto, o nmero de tarefas que sai do sistema por
unidade de tempo define sua taxa de transferncia. Em um modelo
fechado nenhum trabalho, na verdade, deixa o sistema. No entanto,
atravessando a ligao do lado de fora (o elo de ligao "Out" para "In" da
Figura 3.2) equivalente sada do sistema e sua reentrada imediata, e a
vazo do sistema definido como o nmero de tarefas que atravessam
esta ligao por unidade de tempo.
Se no perodo de observao T o nmero de tarefas que entram em cada
dispositivo igual ao nmero de tarefas concluidas, isto , A i=C i Podese afirmar que o dispositivo satisfaz a hiptese do Equilbrio de Fluxo de
Trabalho.
Se o perodo de observao de T longo, a diferena A i-Ci geralmente
pequena quando comparado com Ci. Ser exato, se o comprimento da fila
inicial em cada dispositivo for o mesmo que o comprimento da fila final.
Suponhamos que cada tarefa faz V i pedidos para o i-simo dispositivo do
sistema. Se o fluxo de trabalho est em equilbrio, o nmero de trabalhos
C0 que atravessa a ligao externa e o nmero de tarefas C i concluidas
pelo i-simo dispositivo esto relacionados por

Avaliao de Desempenho de Sistemas

52

Ci =C0 V i V i=

Ci
C0

3.3

A varivel Vi a razo entre as tarefas concluidas pelo dispositivo de


ordem i e a ligao do lado de fora. , portanto, chamada relao de
visita.
O rendimento do sistema durante o perodo de observao :
Vazo do sistema:

X=

trabalhos concluidos C 0
=
tempo total
T

U i= X i Si

3.4

A taxa de transferncia do i-simo dispositivo e o rendimento do sistema


so, portanto, relacionados da seguinte forma:
Vazo do dispositivo: X i=

Ci Ci C0
= =X V i .
T C0 T

A Lei do Fluxo Forado aplicada sempre que a hiptese do Balano do


Fluxo de Trabalho verdadeiro.
claro que, se o equilbrio do fluxo de trabalho no verdadeiro, ento ou
existem alguns trabalhos que chegaram durante o perodo de observao,
mas no saem ou existiam tarefas no sistema no incio do perodo de
observao.
Em qualquer caso, possvel que esses trabalhos ainda no fez todas as V i
visitas ao i-simo dispositivo e Ci C0Vi.
A Lei do Fluxo Forado relaciona a vazo de dispositivos individuais do
sistema.
Combinando a Lei do Fluxo Forado e a Lei da Utilizao obtem-se a
utilizao do i-simo dispositivo: U i= X i V i= X V i Si= X Di
Em que Di=X V i a demanda total do servio no dispositivo i para todas
as visitas de uma tarefa.
Esta equao, indica que as utilizaes dos vrios dispositivos no sistema
so proporcionais demanda total de trabalho D i no dispositivo. Assim, o
dispositivo com o maior Di tem a maior utilizao e o dispositivo de
Avaliao de Desempenho de Sistemas

53

estrangulamento.

Exemplo 3.2 - Em um sistema de tempo compartilhado, Figura 3.5, os dados de registro


de contabilidade produziu o seguinte perfil para programas do usurio. Cada programa
requer 5 segundos de tempo de CPU e faz 80 pedidos de I/O no Disco A e 100 pedidos
I/O no Disco B. O tempo mdio dos usurios encontrado foi de 18 s. A partir das
especificaes do dispositivo, foi determinado que o Disco A leva 50 ms para satisfazer
um pedido de E/S e o Disco B leva 30 ms por pedido. Com 17 terminais ativos, a taxa de
transferncia do Disco A observado foi de 15,70 pedidos de I/O por segundo. Qual o
rendimento do sistema e a utilizaes do dispositivo.
Simbolicamente, so dadas a seguir:
DCPU = 5
VA = 8
VB = 10
Z = 18
SA = 0,050
SB = 0,030
N=1
XA = 15,70 tarefas/s
Uma vez que os trabalhos devem visitar a CPU antes de ir para os discos ou terminais, a
proporo visita CPU
VCPU = VA + VB + 1 = 181
O primeiro passo na anlise operacional geralmente determinar exigncias totais de
servio Di para todos os dispositivos. Neste caso,
DCPU = 5
DA = SAVA = 0,050 80 = 4
DB = SBVB = 0,030 100 = 3 s
Usando a Lei de Fluxo Forado, os dbitos so
X = XA/VA = 15,75/80 = 0,1963 tarefas/
XCPU = X VCPU = 0,1963181 = 35,48 requisies/
XB = X VB = 0,1963100 = 19,6 requisies/s
Usando a Lei de Utilizao, as utilizaes do dispositivo so
UCPU = X DCPU = 0,1963 5 = 98
UA = X DA = 0,1963 4 = 78,4
UB = X DB = 0,1963 x 3 = 58,8%

3.2.3. Lei de Little


Avaliao de Desempenho de Sistemas

54

A Lei de Little tambm uma Lei Operacional. O pressuposto


operacionalmente testvel o do Equilbrio do Fluxo de Trabalho, o
nmero de entradas igual ao nmero de saidas. Pode-se aplicar a Lei de
Little e relacionar a fila de comprimento Q i e o tempo de resposta R i do isimo dispositivo:

Nmero Mdio de Tarefas=Taxa Mdia de ChegadasTempo Mdio


Qi=i R i

3.5
3.6

Se o fluxo de trabalho est em equilbrio, a taxa de chegada igual taxa


de sada, e pode-se escrever a equao acima como:

Qi=X i Ri

3.7

Exemplo 3.3 - O comprimento mdio da fila no sistema de computador do Exemplo 3.2


foram observadas como sendo 8,88, 3,19 e 1,40 tarefas na CPU, no Disco A e no Disco
B, respectivamente. Quais foram os tempos de resposta destes dispositivos?
No Exemplo 3.2, as vazes dos dispositivos foram determinados como sendo:
XCPU = 35,4
XA = 15,7
XB = 19,6
A nova informao dada neste exemplo :
QCPU = 8,8
QA = 3,1
QB = 1,40
Usando a Lei de Little, os tempos de resposta dos dispositivos so:
RCPU = QCPU/X = 8.88/35.48 = 0,250 s
RA = QA/XA = 3.19/15.70 = 0,203 s
RB = QB/XB = 1.40/19.6 = 0,071 s

3.2.4. Lei Geral do Tempo de Resposta


Todos os sistemas de tempo compartilhado pode ser dividido em dois
subsistemas:

Avaliao de Desempenho de Sistemas

55

a) O subsistema de terminais
b) O subsistema central, que consiste nos dispositivos restantes, incluindo o
processador

O sistema central compartilhado pelos terminais de usurio.


interessante notar que a Lei de Little pode ser aplicada a qualquer parte
do sistema. O nico requisito que o Fluxo de Trabalho esteja em
equilbrio. Em particular, ele pode ser aplicado para o subsistema central,
que d:
Q= X R

3.8

Aqui, Q o nmero total de tarefas no Servidor do sistema, R o tempo


de resposta do sistema e X a taxa de transferncia do sistema. Dado os
comprimentos Qi nos dispositivos, pode-se calcular Q:
M

Q=Q 1 +Q 2 +Q3 ++Q M = Qi

3.9

i=1

Substituindo Qi da anterior obtem-se:

X R= X 1 R1 + X 2 R2 + X 3 R3 ++ X M R M = X i Ri

3.10

i=1

Dividindo ambos os lados desta equao por X e usando a Lei do Fluxo


Forado, obtem-se

R=V 1 R1 +V 2 R 2+V 3 R3 ++V M R M = V i Ri

3.11

i=1

Esta a chamada Lei Geral de Tempo de Resposta. possvel mostrar


que essa lei vlida mesmo se o fluxo de trabalho no esteja em
equilbrio.
Intuitivamente, a lei estabelece que o tempo total gasto por uma tarefa
em um servidor o produto do tempo de visita pelo nmero de visitas ao
servidor e o tempo total no sistema igual soma dos tempos nos vrios
servidores.

Avaliao de Desempenho de Sistemas

56

Exemplo 3.4 - Seja calcular o tempo de resposta para o sistema de compartilhamento de


tempo de Exemplos 3.2 e 3.3.
Para este sistema:
VCPU = 18
VA = 8
VB = 100
RCPU = 0,25
RA = 0,20
RB = 0,071
O tempo de resposta do sistema :
R = RCPUVCPU + RAVA + RBVB = 0,250 181 + 0,203 + 0,071 80 100 = 68,6
O tempo de resposta do sistema 68,6 s.

3.2.5. Lei do Tempo de Resposta Interativo


Em um sistema interativo, os usurios geram pedidos que so atendidos
pelo subsistema central e as respostas voltam para o terminal. Depois de
um tempo de reflexo Z, os usurios enviam o prximo pedido. Se o
tempo de resposta do sistema R, o tempo total do ciclo de pedidos R +
Z. Cada usurio gera cerca de T/(R+Z) pedidos no perodo de tempo T.
Se houver N usurios, a Vazo do Sistema X dada por:

Nmero Total de Solicitaes


Tempo Total
T
X i=N
R+ Z
N
X=
R+ Z
N
R= Z
X
X=

3.12
3.13
3.14
3.15

Esta a Lei do Tempo Resposta Interativa.

Exemplo 3.5 - Para o sistema de tempo partilhado do Exemplo 3.2, pode-se calcular o
tempo de resposta, utilizando a Lei do Tempo de Resposta Interativa como se segue:
X = 0,196
N=1

Avaliao de Desempenho de Sistemas

57

Z = 18
Portanto, R= 17/0,1963-18 = 86,6-18 = 68,6 s
Isto o mesmo que o obtido anteriormente no Exemplo 3.4.

3.3. Anlise de Gargalos


Uma consequncia da Lei do Fluxo Forado que a utilizao de um
dispositivos proporcional sua respectiva demanda total de servio:

U i Di

3.16

O dispositivo com a maior demanda total de servio D i tem a maior


utilizao e chamado dispositivo de estrangulamento. Este dispositivo
o principal fator limitante na obteno de um maior rendimento. Melhorar
este dispositivo ir proporcionar o maior retorno em termos de rendimento
do sistema. Melhorar outros dispositivos ter pouco efeito sobre o
desempenho do sistema. Portanto, identificar o dispositivo gargalo deve
ser o primeiro passo em qualquer projeto de melhoria de desempenho.
Suponha que o dispositivo b o gargalo.
Isto implica que Db = Dmax a mais elevada dentre D1, D2, ..., DM.
Em seguida, a taxa de transferncia e os tempos de resposta do sistema
so relacionados como se segue:

1
N
,
}
D max D+Z
N
R( N )max {D ,
Z }
Dmax
X (N )min{

3.17
3.18

Centros de atraso no podem ser dispositivos de estrangulamento. Apenas


Avaliao de Desempenho de Sistemas

58

centros com Filas devem ser considerados para encontrar o gargalo D max.
A Figura 3.8 mostra os limites assintticos para um caso tpico.

Figura 3.8 - Limites assintticos tpicos.


Os limites tanto do rendimento quanto do tempo de resposta consiste em
duas linhas retas. Os limites do tempo de resposta consistem de uma linha
reta horizontal (R = D) e uma linha que passa pelo ponto (-Z,O) com uma
inclinao Dmax. Os limites da taxa de transferncia consistem de uma
Avaliao de Desempenho de Sistemas

59

linha horizontal em X=1/Dmax e a linha que passa pela origem com


inclinao 1/(D+Z). O ponto de interseco das duas linhas chamado
joelho. O joelho o mesmo para o tempo de resposta e para o rendimento.
O nmero de tarefas NJ no joelho dada por:

D=N J D maxZ
D+ Z
NJ=
Dmax

3.19
3.20

Se o nmero de tarefas maior do que N J ento pode-se dizer com certeza


que h fila em algum lugar do sistema.
Os limites assintticos so teis na prtica, uma vez que podem ser
facilmente obtidos e explicado para as pessoas que no tm qualquer
experincia em teoria de filas ou anlise de desempenho.

Exemplo 3.6 - Para o sistema de tempo compartilhado considerado no Exemplo 3.2:


DCPU =
DA =
DB = 3, Z = 18
D = DCPU + DA + DB = 5 + 4 + 3 = 12
Dmax = DCPU = 5
Os limites assintticos so:
X(N) min{1/Dmax,N/(D+Z)} = min{1/5,N/30 }
R(N) max{ D, NDmax-Z} = max{12, 5N-18}
O joelho ocorre : 12 = 5 NJ - 18 ou NJ = (12+18)/5 = 30/5 = 6
Deste modo, se existirem mais do que seis usurios no sistema, existe, certamente, fila
no sistema.

Exemplo 3.7 - Quantos terminais podem ser suportados pelo sistema de tempo
compartilhado do Exemplo 3.2, se o tempo de resposta for mantida abaixo de 100 s?
Usando os limites assintticos sobre o tempo de resposta, temos
R(N) max {12, 5N -18}
O tempo de resposta ser maior do que 100 se 5N-18 100
Isto , N 23,6. Assim, o sistema no pode suportar mais de 23 usurios para o tempo
de resposta inferior a 100 s.

Desta forma, completa-se a discusso das Leis Operacionais. Um resumo


das das Leis Operacionais apresentado no Tabela 3.2.
Avaliao de Desempenho de Sistemas

60

Tabela 3.2 - Resumo das Leis Operacionais


U i= X i Si =X Di
Lei da Utilizao
X i= X V i
Lei do Fluxo Forado
Qi=X i Ri
Lei de Little
Lei Geral do Tempo de Resposta
R= R i V i
N
R= Z
Lei do Tempo de Resposta Interativo
X
1
N
X (N )min{
,
}
D max D+Z
Limites Assintticos
N
R( N )max {D ,
Z }
Dmax
Smbolos
D
Di
Dmax
N
Qi
R
Ri
Si
Ui
Vi
X
Xi
Z

soma das demandas de servio nos dispositivos, Di


demanda total de servio por tarefa do i-simo dispositivo, Vi
demanda de servio no dispositivo gargalo = max{Di}
nmero de tarefas no sistema
nmero de tarefas no i-simo dispositivo
tempo de resposta do sistema
tempo de resposta por tarefa do i-simo dispositivo
tempo de servio por tarefa do i-simo dispositivo
utilizao do i-simo dispositivo
nmero de tarefas executadas pelo i-simo dispositivo
rendimento do sistema
rendimento do i-simo dispositivo
tempo aleatrio (think time)

3.4. Anlise do Valor Mdio


A Anlise do Valor Mdio uma tcnica que estende os resultados das Leis
Operacionais para a anlise de RSF. Esta tcnica permite a anlise de
sistemas de computador que podem ser modeladas como uma RSF
fechada. No entanto, os resultados sobre RSF abertas so apresentados
primeiramente, uma vez que so mais fceis de obter e dado que ajudam
a compreender os resultados para sistemas fechados.
3.4.1. Anlise de Redes Abertas de Filas
Modelos Abertos de Filas so usados para representar sistemas de
processamento de transaes, tais como sistemas web e servidores de
modo geral. Nestes sistemas, a taxa de chegada de transaes no
dependente da carga sobre o sistema de computador. As chegadas de
transao so modeladas como um processo de Poisson com um taxa
mdia de chegada .
Avaliao de Desempenho de Sistemas

61

Assume-se que todos os dispositivos do sistema de computador podem ser


modelados quer como centros de servios de capacidade fixa (um nico
servidor com tempo de servio exponencialmente distribudo) ou centros
de atraso (servidores infinitos com o tempo de servio exponencialmente
distribudos).
Para os centros de servios com capacidade fixa em uma rede de filas
aberta, o tempo de resposta dada por:

Ri=Si (1+Qi )

3.21

Uma maneira fcil de entender essa relao a de considerar uma tarefa


marcada que flui atravs do sistema. Ao chegar no dispositivo i, esta
tarefa v outras Qi tarefas frente (incluindo a que est no Servidor) e
espera o tempo Qi Si. Incluindo o tempo para ele mesma, esta tarefa
dever esperar o tempo de resposta total igual a S i(1+Qi). Observe que
esta equao no uma Lei Operacional. Ela assume que o servio sem
memria, uma suposio que no testvel operacionalmente. Para
calcular o tempo de resposta da tarefa marcada sem a suposio sem
memria preciso saber quanto tempo a tarefa que est no Servidor j
consumiu.
A equao anterior, combinado as Leis Operacionais, so suficientes para
obter valores mdios dos parmetros de desempenho do sistema, como
mostrado em seguida.
Assumindo o Equilbrio de Fluxo de Trabalho, o rendimento do sistema
igual taxa de chegada: X = .
A taxa de transferncia do dispositivo de ordem i, utilizando a Lei do Fluxo
Forado X i= XV i .
A utilizao do dispositivo de ordem i, utilizando a Lei de Utilizao
U i= X i Si =X V i Si =X Di .
O tamanho da fila do dispositivo i, usando a lei de Little
Qi=X i Ri= X i S i(1+Q i)=U i (1+ Qi)Qi =

Ui
.
(1U i )

Substituindo esta expresso para Qi na Ri = Si(1+Qi), os tempos de


resposta do dispositivo so:
Qi=

Ui
S
Ri=S i( 1+ Q i)Ri = i
1U i
1+U i

Em centros de atraso, existem infinitos Servidores e, portanto, o tempo de


Avaliao de Desempenho de Sistemas

62

resposta igual ao tempo de servio, independente do tamanho da fila. O


tamanho da fila, neste caso, indica o nmero de tarefas recebidas pelo
Servidor, pois no h espera. Assim, o tempo de resposta e as equaes
de comprimento de fila para centros de atraso so:
Ri=Si
Qi=Ri X i=S i X V i= X D i=U i
Note-se que a utilizao do centro de atraso representa a mdia do
nmero de tarefas que o servidor recebe e no precisa ser menor do que
1.
Todas as equaes para analisar redes abertas de filas esto resumidas na
Tabela 3.3.

Tabela 3.3 -Quadro da anlise de RSF abertas


Entradas
X
Si
Vi
M
Sadas
Qi
Ri
R
Ui
N
Total da demanda de servios

taxa de chegada externa, rendimento do sistema


tempo de servio por visita ao i-simo dispositivo
nmero de visitas ao i-simo dispositivo
nmero de dispositivos (no incluindo terminais)
mdia do nmero de tarefas no i-simo dispositivo
tempo de resposta do i-simo dispositivo
tempo de resposta do sistema
utilizao do i-simo dispositivo
nmero mdio de tarefas no sistema

Utilizao de dispositivo
Vazo de dispositivo
Tempos de resposta de dispositivo

Comprimento da fila de dispositivo


Tempo de resposta do sistema
Nmero de tarefas no sistema

Di=Si V i
U i= X D i
X i= XV i
X i= XV i (centros de servios)
S i (centros de atraso)
Ui
(centros de servios)
Qi=
(1U i)
U i (centros de atraso)
Si
N= Q i

Exemplo 3.8 - A Figura 3.5 representa um modelo de filas de servidor de arquivos que
consiste de uma CPU e dois Discos A e B. Medidas de um sistema distribudo com seis
sistemas de clientes que fazem solicitaes ao servidor de arquivos produziram os
seguintes dados:
Intervalo de observao = 3.600
Nmero de pedidos de clientes = 10.80
Tempo ocupado na CPU = 1.728
Tempo ocupado no Disco A = 1.512

Avaliao de Desempenho de Sistemas

63

Tempo ocupado no Disco B = 2.592


Nmero de visitas (pedidos I/O) para o Disco A = 75.60
Nmero de visitas (pedidos I/O) para o Disco B = 86.400
X = 10.800/3.600 = 3 pedidos de clientes por segund
VA = 75.600/10.800 = 7 solicitaes de visitas por cliente para o disco
VB = 86.400/10.800 = 8 solicitaes de visitas por cliente para o disco B
VCPU = 1 + 7 + 8 = 16 visitas de clientes para CP
DCPU = 1.728/10.800 = 0,16 s de CPU por solicitao do client
DA = 1.512/10.800 = 0,14 s do Disco A por solicitao do client
DB = 2.592/10.800 tempo = 0,24 s do Disco B por solicitao do cliente
SCPU = 0,16/16 = 0,01 s por visita CP
SA = 0,14/7 = 0,02 s por visita ao Disco
SB = 0,24/8 = 0,03 s por visita ao Disco B
Com estes parmetros de entrada, faz-se a analisar do sistema:
Utilizaes de dispositivos usando a Lei de Utilizao:
UCPU = X DCPU = 3 x 0,16 = 0,4
UA = X DA = 3 0,14 = 0,4
UB = X DB = 3 x 0,24 = 0,72
Os tempos de resposta do dispositivo usando a Equao (34.2) so
RCPU = SCPU/(1-UCPU) = 0,01/(1-0,48) = 0,0192 s
RA = SA/(1-UA) = 0,02/(1-0,42) = 0,0345 s
RB = SB/(1- UB) = 0,03/(1-0,72) = 0,107 s
Tempo de resposta do servidor R = R iVi = 160,0192 + 70,0345 + 80,107 = 1,406
s

O modelo pode ser usado para responder a algumas das perguntas tpicas.
Por exemplo, podemos querer quantificar o impacto das seguintes
alteraes:
c) Aumentar o nmero de clientes para 8
d) Usar um cache de Disco B com uma taxa de acerto de 50%, embora aumente a
sobrecarga de CPU de 30% e o tempo de servio do disco B (por I/O) de 10%
e) Usar um servidor de baixo custo com apenas um disco (Disco A) e direcionar todas
as solicitaes de I/O para ele.

1. Aumentar o nmero de clientes para 8


Avaliao de Desempenho de Sistemas

64

Assumindo que os novos clientes faro pedidos semelhantes aos medidos, a taxa de
chegada de solicitao vai subir por um fator de 8/6. Como a taxa de chegada foi trs
pedidos por segundo, com mais clientes se tornar quatro pedidos por segundo. A nova
anlise a seguinte:
X = 4 pedidos/s
UCPU = X DCPU = 4 x 0,16 = 0,6
UA = X DA = 4 0,14 = 0,5
UB = X DB = 4 x 0,24 = 0,96
RCPU = SCPU/(1-UCPU) = 0,01 / (1 - 0,64) = 0,0278
RA = SA/(1-UA) = 0,02 / (1 - 0,56) = 0,0455
RB = SB/(1-UB) = 0,03 / (1 - 0,96) = 0,75 s
R = 16 0,0278 + 7 + 8 0,0455 0,75 = 6,76 s
Assim, se o nmero de clientes aumentado de 6 para 8, o tempo de resposta do
servidor ir degradar-se por um factor de 6.76/1.406 = 4,8
2. Usar um cache de Disco B com uma taxa de acerto de 50%, embora aumente a
sobrecarga de CPU de 30% e o tempo de servio do disco B (por I/O) de 10%
A segunda questo requer mudar VB, SCPU e SB da seguinte forma:
VB = 0,5 8 = 4
SCPU = 1,3 0,01 = 0,013 DCPU = 0,208
SB = 1,1 0,03 = 0,033 DB = 4 x 0,033 = 0,132 s
A anlise do sistema modificado a seguinte:
UCPU = X DCPU = 3 x 0,208 = 0,62
UA = X DA = 3 0,14 = 0,4
UB = X DB = 3 0,132 = 0,396
RCPU = SCPU/(1-UCPU) = 0,013/(1-0,624) = 0,0346
RA = SA/(1-UA= 0,02/(1-0,42) = 0,0345
RB = SB/(1-UB) = 0,033/(1-0,396) = 0,0546 s
R = 16 0,0346 + 0,0345 + 7 4 0,0546 = 1,013 s
Assim, ao usar um cache para o Disco B, o tempo de resposta do servidor vai melhorar
por (1,406-1,013)/1,406 = 28%
3. Usar um servidor de baixo custo com apenas um disco (Disco A) e direcionar todas as
solicitaes de I/O para ele
A terceira questo requer ajuste VA e VB. Assumindo que no h espao suficiente no
Disco A capaz de acomodar todos os arquivos nos dois discos. A anlise a seguinte:
VB =
VA = 7 + 8 = 1
DCPU = 0,16 s (como antes
DA = 15 0,02 = 0,3
UCPU = X DCPU = 3 x 0,16 = 0,4
UA = X DA = 3 0,3 = 0,90
RCPU = SCPU/(1-UCPU) = 0,01/(1-0,48) = 0,0192
R = SA/(1-UA) = 0,02/(1-0,90) = 0,2 s
R = 16 0,0192 + 15 0,2 = 3,31 s
Assim, se substituir os dois discos por um lado, o tempo de resposta do servidor ir
degradar-se por um factor de 3.31/1.406 = 2,35

Avaliao de Desempenho de Sistemas

65

3.4.2. Anlise do Valor Mdio


A Anlise do Valor Mdio (Mean Value Analysis - MVA), como o nome
indica, calcula o desempenho mdio. O clculo de varincia no possvel
por meio desta tcnica. A Anlise do Valor Mdio se aplica a redes com
uma variedade de disciplinas de servio e distribuies de tempo de
servio. No entanto, inicialmente a discusso se limitar aos centros de
capacidade fixa de servio.
Dada uma RSF fechada com N tarefas, Reiser e Lavenberg mostraram em
1980 que o tempo de resposta do dispositivo de ordem i dado por:
Ri (N )=Si [1+Qi (N1)] (3.1)

3.22

Aqui, Qi(N-1) o comprimento mdio da fila do dispositivo de ordem i,


com N-1 tarefas na rede.
Uma maneira de explicar esta equao a de considerar o que acontece
quando adicionamos uma tarefa de ordem N marcada na rede com N-1
tarefas. Ao chegar ao centro de servio i, a tarefa marcada v Q i(N-1)
tarefas sua frente (incluindo a que est no Servidor) e espera o tempo
Qi(N-1)Si antes de receber o servio. Incluindo o tempo de servio para si
mesmo, a tarefa deve esperar o tempo de resposta total igual S i[1+Qi(N1)].
Dado o desempenho de N-1 usurios, a Equao 3.1, juntamente com as
Leis Operacionais permitem calcular o desempenho para N usurios.
A partir de N = 0 o desempenho para qualquer nmero de usurios pode
ser calculado de forma iterativa, como mostramos a seguir.
Tendo em conta os tempos de resposta dos dispositivos individuais, o
tempo de resposta do sistema, utilizando a Lei do Tempo de Resposta
Geral R( N )= V i Ri (N )
Ri (N )=Si [1+Qi (N1)] (3.1)

3.23

O rendimento do sistema usando a Lei do Tempo de Resposta Interativo


X (N )=

N
( N )+ Z (3.2)
R

3.24

As vazes dos dispositivos medido em termos de tarefas por segundo so


X i (N )= X (N )V i (3.3)

3.25

Os comprimentos das filas nos dispositivos com N tarefas pela Lei de Little
Avaliao de Desempenho de Sistemas

66

so
Qi (N )=X i (N ) Ri (N )=X (N )V i R i ( N) (3.4)

3.26

Estas equaes assumem que todos os dispositivos so centros de


capacidade fixa enfileirados.
Se um dispositivo um centro de atraso (servidores infinitos), que no
espera pelo servio, o tempo de resposta igual ao tempo de servio,
independente do tamanho da fila. O comprimento da fila, neste caso,
indica o nmero de tarefas que o servidor recebe. Assim, a equao de
tempo de resposta para os centros de atraso simplesmente
Ri (N )=Si (3.5)

3.27

As Equaes 3.2 e 3.3 para a vazo de dispositivos e comprimentos de fila


se aplicam a centros de atraso.
As Equaes 3.1 a 3.5 definem uma iterao do MVA. O procedimento
inicializado para N = 0 usurios e Qi(0) = 0. O procedimento completo
descrito no Tabela 3.4.
Tabela 3.4 - Procedimento completo do MVA
Entradas
N
nmero de usurios
Z
tempo de pensar
M
nmero de dispositivos (no incluindo terminais)
Si
tempo de servio por visita ao i-simo dispositivo
Vi
nmero de visitas ao i-simo dispositivo
Sadas
X
rendimento do sistema
Qi
nmero mdio de postos de trabalho no i-simo dispositivo
Ri
tempo de resposta do i-simo dispositivo
R
tempo de resposta do sistema
Ui
utilizao do i-simo dispositivo
para i = 1 at M faa Qi = 0
Inicializao
Iterao
para n = 1 at N faa
inicio
para i = 1 at M faa
inicio
Ri = Si(1+Qi) ou Ri = Si
R = RiVi
X = N/(Z+R)
fim
fim
Xi = X Vi
Vazo do dispositivo
Avaliao de Desempenho de Sistemas

67

Utilizaes do dispositivo

Ui = X SiVi

Exemplo 3.9 - Considere o modelo de rede de filas da Figura 3.5, cada usurio faz 10
pedidos do I/O ao Disco A e cinco pedidos I/O ao Disco B. Os tempos de servio por visita
para os Discos A e B so 300 e 200 ms, respectivamente. Cada pedido leva 2 s de tempo
de CPU, e o tempo do usurio de 4 s. Analise o sistema usando MVA.
Parmetros do sistema:
SA = 0,3, VA = 10 DA =
SB = 0,2, VB = 5 DB = 1
DCPU = 2, VCPU = VA + VB + 1 = 16 SCPU = 0,125
Z = 4, N = 20
Inicializao
Nmero de usurios: N = 0
Comprimentos da Fila nos Dispositivos: QCPU = 0, QA = 0, QB = 0
Iterao 1
Nmero de usurios: N = 1
Tempos de resposta do dispositivo:
RCPU = SCPU (1+QCPU) = 0,125 (1+0) = 0,12
RA = SA (1+QA) = 0,3(1+ 0) = 0,
RB = SB (1+QB) = 0,2 (1+ 0) = 0,2
Tempo de resposta do sistema: R = RCPUVCPU+RAVA+RBVB = 0,12516+0,310+0,25
=6
Rendimento do sistema: X = N/(R+Z) = 1/(6+4) = 0,1
Comprimentos de fila do dispositivo:
QCPU = X RCPU VCPU = 0,1 0,125 16 = 0,
QA = X RAVA = 0,1 0,3 0,3 = 1
QB = X RBVB = 0,1 0,2 5 = 0,1
Iterao 2
Nmero de usurios: N = 2
Tempos de resposta do dispositivo:
RCPU = SCPU (1+QCPU) = 0,125 (1 + 0,2) = 0,1
RA = SA (1 + QA) = 0,3 (1 + 0,3) = 0,3
RB = SB(1 + QB) = 0,2 (1 + 0,1) = 0,22
Tempo
de
resposta
do
0,1516+0,3910+0,225 = 7,4

sistema:

R CPUVCPU+RAVA+RBVB

Rendimento do sistema: X = N/(R+Z) = 2/(7,4+4) = 0,175


Comprimentos de fila do dispositivo:
QCPU = X RCPUVCPU = 0,175 0,15 16 = 0,42

Avaliao de Desempenho de Sistemas

68

QA = X RAVA = 0,175 0,39 10 = 0,68


QB = X RB VB = 0,175 0,22 5 = 0,193

As iteraes podem continuar para valores mais elevados de N. Eles


podem ser facilmente implementados usando qualquer pacote de software
de planilha eletrnica. Os tempos de resposta, rendimentos e
comprimentos de fila no final destas iteraes esto listados na Tabela 3.5.

Tabela 3.5 - Resultados da MVA para o Exemplo 3.9


Tempo de Resposta
Vazo do
N
Sistema
CPU
Disco A
Disco B
Sistema
2 0.150
0.390
0.220
7.400
0.175
3 0.178
0.505
0.239
9.088
0.229
4 0.206
0.647
0.255
11.051
0.266
5 0.235
0.816
0.268
13.256
0.290
6 0.261
1.009
0.278
15.659
0.305
7 0.284
1.224
0.285
18.216
0.315
8 0.304
1.457
0.290
20.888
0.321
9 0.321
1.705
0.293
23.647
0.326
10 0.334
1.965
0.295
26.470
0.328
11 0.344
2.235
0.297
29.340
0.330
12 0.352
2.512
0.298
32.245
0.331
13 0.358
2.795
0.299
35.176
0.332
14 0.363
3.083
0.299
38.126
0.332
15 0.366
3.374
0.299
41.089
0.333
16 0.369
3.667
0.300
44.064
0.333
17 0.370
3.962
0.300
47.045
0.333
18 0.372
4.259
0.300
50.032
0.333
19 0.373
4.556
0.300
53.022
0.333
20 0.373
4.854
0.300
56.016
0.333

Comprimento da Fila
CPU Disco A Disco B
0.421 0.684
0.193
0.651 1.158
0.273
0.878 1.721
0.338
1.088 2.365
0.388
1.275 3.081
0.424
1.433 3.858
0.449
1.564 4.684
0.466
1.670 5.551
0.477
1.752 6.450
0.485
1.816 7.374
0.490
1.865 8.318
0.493
1.901 9.276
0.496
1.928 10.245
0.497
1.948 11.223
0.498
1.963 12.207
0.499
1.974 13.195
0.499
1.981 14.187
0.499
1.987 15.181
0.500
1.991 16.177
0.500

Note que o MVA aplicvel apenas se a rede em forma de produto. Isto


significa que a rede deve satisfazer as condies de Equilbrio do Fluxo de
Trabalho. Alm disso, a anlise, como apresentado aqui, assume que todos
os centros de servio ou so centros de capacidade fixa de servios ou
centros de atraso. Em ambos os casos, assumimos os tempos de servio
exponencialmente distribudos.

int main( void )

Avaliao de Desempenho de Sistemas

69

float Sa = 0.001
Va = 1.0
Da = 0.01
Sb = 0.001
Vb = 1.0
Db = 0.01
Dcpu = 0.01
Vcpu = Va + Vb + 1.0
Scpu = 0.001
Z = 4.0
Qcpu = 0.0
Qa = 0.0
Qb = 0.0
Rcpu, Ra, Rb, R, X
int N = 30, n
printf( "--------------------------------------------------------------------\n")
printf( " n\tRcpu\tRa \tRb \tR \tX \tQcpu\tQa \tQb \n")
printf( "--------------------------------------------------------------------\n")
for( n = 1; n <= N; n++ )
Rcpu = Scpu*(1.0 + Qcpu)
Ra = Sa *(1.0 + Qa )
Rb = Sb *(1.0 + Qb )
R = Rcpu*Vcpu + Ra*Va + Rb*Vb
X = n/(R+Z)
Qcpu = X*Rcpu*Vcpu
Qa = X*Ra*Va
Qb = X*Rb*Vb
printf("%4d %8.3f %7.3f %7.3f %7.3f %7.3f %7.3f %7.3f %7.3f\n",
n,Rcpu,Ra,Rb,R,X,Qcpu,Qa,Qb)
printf( "--------------------------------------------------------------------\n")
return 0
}

3.5. Outras Redes de Filas


A rede de enfileiramento mais simples uma srie de k Sistemas de Fila
M/M/1 com tempo de servio exponencial e chegadas de Poisson,
conforme mostrado na Figura 3.9.

Figura 3.9 - Rede de enfileiramento simples com k Sistemas de Fila M/M/1.


As tarefas que deixam um Sistema de Fila imediatamente entram no
Sistema de Fila seguinte. Pode-se mostrar que cada Sistema de Fila
individual nesta srie pode ser analisado independentemente dos outros
Sistemas de Fila. Cada Sistema de Filas tem a taxa de chegada , bem
Avaliao de Desempenho de Sistemas

70

como uma taxa de sada . Se i a taxa de servio do SF i, ento a


utilizao do i-simo SF i = /i. A probabilidade de n tarefas no i-simo
SF, pi(ni) = (1-i)in
A probabilidade conjunta dos comprimentos de fila de k SF pode ser
calculada simplesmente multiplicando as probabilidades individuais, por
exemplo:

ixn
P(n1 , n2 , n3 ,, nk )=(11 )11 xn (12 )22 xn (1k )kxn
k = (1 i)i

3.28

i=1

P(n1 , n2 , n3 ,, nk )= p1 (n1 ) p2 (n2) p 3 (n3 ) pk (n k )= pi (n i)

3.29

i=1

Esta rede de filas , portanto, uma rede em forma de produto. Em geral,


esta frmula se aplica a qualquer RSF na qual a expresso para a
probabilidade de equilbrio tem a seguinte forma:

P(n1 , n2 , n3 ,, nk )=

1
f (n )
G ( N) i=1 i i

3.30

Quando fi(ni) uma funo do nmero de tarefas no SF de ordem i, G(N)


uma constante de normalizao e uma funo do nmero total de
tarefas no sistema, N.

Exemplo 3.10 - Considere um sistema fechado com dois SF e N tarefas que circulam
entre as filas, como mostrado na Figura 3.10. Ambos os Servidores tm um tempo de
servio exponencialmente distribudos. Os tempos mdios de servio so 2 e 3 s,
respectivamente.

Figura 3.10 - Rede fechada de dois SF.


A probabilidade de ter n1 tarefas na primeira fila e n2 = N-ni tarefas na
segunda Fila pode ser demonstrado que :
Avaliao de Desempenho de Sistemas

71

n1 n2

2 3
P(n1 , n2 )= N +1 N +1
3 2

3.31

Neste caso, a constante de normalizao G( N )=3 N +12N +1 . As


probabilidades de estado so produtos de funes do nmero de tarefas
nas filas. Assim, trata-se de uma rede na forma do produto.
Redes na forma de produto so mais fceis de analisar do que redes de
outras formas. O conjunto de redes que tm uma soluo de forma
produto est sendo continuamente ampliado pelos pesquisadores. A
primeira delas foi modelada por Jackson que mostrou em 1963 que o
mtodo de calcular probabilidade conjunta acima vlida para qualquer
rede arbitrria aberta de filas de k SF com tempos de servio
exponencialmente distribudos, Figura 3.8.

Figura 3.11 - Caso geral de RSF aberta.


Em particular, se cada um dos SF possui um nico Servidor, a distribuio
do tamanho da fila dada pela equao:

P(n1 , n2 , n3 ,, nk )= p1 (n1 ) p2 (n2) p 3 (n3 ) pk (n k )= pi (n i)

3.32

i=1

No entanto, no correto supor que cada SF seja M/M/m independente e


com processo de chegada Poisson. Em geral, o fluxo interno de tais redes
no Poisson. Particularmente, se no houver qualquer feedback na rede,
de modo que as tarefas possam voltar aos Servidores anteriormente
visitados, os fluxos internos no so Poisson. surpreendente que, apesar
dos fluxos no serem Poisson, os SF so separveis e podem ser
analisados como se fossem SF M/M/m independentes.
Os resultados de Jackson foram mais tarde estendido para redes fechadas
por Gordon e Newell em 1967. Eles mostraram que as RSF fechadas com k
Avaliao de Desempenho de Sistemas

72

Servidores e com tempos de servio exponencialmente distribudos


tambm tm uma soluo na forma do produto. Baskett, Chandy, Muntz e
Palacios mostraram em 1975 que as solues na forma de produto
existem para uma classe mais ampla de redes.

Avaliao de Desempenho de Sistemas

73

4. Ferramentas Estatsticas
Os resultados de medies e simulaes podem ser diferentes a cada
repetio do experimento. A variao nos resultados de simulaes
inerente ao processo devido ao uso de nmeros aleatrios. Ao passo que a
variao em medies se deve ao processo experiemental. Ao comparar
alternativas necessrio considerar a variabilidade dos resultados. A
simples comparao de mdias pode levar a resultados insatisfatrios. A
anlise de dados produz resultados e sua interpretao a base para o
processo de tomada de deciso.
Um dos passos importantes em todos os estudos de avaliao de
desempenho a apresentao dos resultados finais. O objetivo final da
anlise de desempenho ajudar na tomada de decises. Uma anlise,
cujos resultados no podem ser compreendidos por tomadores de deciso
de pouca valia. da responsabilidade do analista garantir que os
resultados da anlise sejam encaminhados para os tomadores de deciso
to clara e simples quanto possvel. Isto requer o uso prudente de
palavras, imagens e grficos para explicar os resultados e a anlise.
4.1. Sumarizao
Na forma mais condensada, um nico nmero pode ser apresentado para
dar a caracterstica fundamental de um conjunto de dados. Este nico
nmero chamado a mdia geral dos dados. Para ser significativo, ele
deve ser representativo de uma grande parte do conjunto de dados
Trs alternativas populares para resumir uma amostra so especificar sua
mdia, mediana e moda. Estas medidas so o que os estatsticos chamam
de ndices de tendncia central. O nome baseado no fato que estas
medidas especificam a localizao do centro de distribuio das
observaes na amostra.
A mdia da amostra obtida tomando a soma de todas as observaes e
dividindo esta soma pelo nmero de observaes na amostra. A mediana
da amostra obtida atravs da organizao das observaes em uma
Avaliao de Desempenho de Sistemas

74

ordem, e tomando a observao de que est no meio da srie. Se o


nmero de observaes mpar, a mdia dos dois valores mdios usado
como a mediana. A moda da amostra o ponto central do pico do
histograma dos dados amostrais. Para as variveis categricas moda
dado pela categoria de maior frequncia.
A palavra amostra nos nomes destes medidas significa o fato de que os
valores so baseados em apenas uma amostra. No entanto, se est claro a
partir do contexto que a discusso sobre uma nica amostra, e no h
nenhuma ambiguidade, os nomes mais curtos mdia, mediana, moda
pode ser usado.
A mdia e a mediana sempre existem e so nicas. Dado qualquer
conjunto de observaes, a mdia e mediana pode ser determinada. A
moda, por outro lado, pode no existir. Um exemplo disto seria se todas as
observaes forem iguais. Alm disso, mesmo se a moda existir, ela pode
no ser nica. Pode haver mais de uma moda, ou seja, pode haver mais do
que um pico no histograma.
4.2. Selecionando entre a mdia, mediana e moda
Um erro comum especificar o ndice de tendncia central errado. O
fluxograma da Figura 4.1 mostra um conjunto de diretrizes para selecionar
a medida de tendncia central adequada.
A primeira considerao o tipo de varivel. Se a varivel categrica, a
moda a nica medida, a que descreve adequadamente seus dados. Um
exemplo de dados categricos o tipo de processador em vrias estaes
de trabalho. Uma declarao como "o processador mais frequentemente
usado em estaes de trabalho o Intel Xeon" faz sentido. A mdia ou
mediana do tipo de processador no tem significado.
A segunda considerao na escolha do ndice saber se o total de todas
as observaes de interesse. Se sim, ento a mdia um indicador
adequado da tendncia central. Por exemplo, o tempo total da CPU
durante cinco consultas um nmero significativo. Por outro lado, se
contar o nmero de janelas na tela durante cada consulta, o nmero total
de janelas durante cinco consultas no parece ser significativo. Se o total
for de interesse, deve-se especificar a mdia. Se o total no de
interesse, a escolha entre a mediana e a moda. Se o histograma
simtrico e unimodal, a mdia, mediana e moda so todas iguais e assim
no importa qual seja especificada.
Se o histograma enviesado, a mediana mais representativa de uma
observao tpica do que a mdia. Por exemplo, o nmero de unidades de
disco em estaes de trabalho de engenharia dever ter distribuio
desigual, e, portanto, adequado especificar o nmero mediano. Uma
maneira simples de determinar a assimetria para as amostras pequenas
Avaliao de Desempenho de Sistemas

75

examinar a relao entre o mximo e mnimo, xmax/xmin, das observaes.


Se a razo grande, os dados so distorcidos.

Figura 4.1 - Selecionando entre a mdia, meadian e moda.


A seguir, exemplos de selees de ndices de tendncia central:

recurso do sistema mais utilizado: recursos so categricos e, portanto, a moda


deve ser usada
durao: tempo total de interesse e assim a mdia a escolha adequada
carga em um computador: a mediana prefervel devido a uma distribuio
altamente enviesada
configurao mdia: medianas do nmero de dispositivos de memria, tamanhos,
e nmero de processadores so usadas para especificar a configurao de um
modo geral, devido assimetria da distribuio

4.2.1. Resumindo a Variabilidade


Dado um conjunto de dados, resumi-lo por um nico nmero raramente
suficiente. importante incluir a variabilidade no resumo dos dados. Isto
porque dado dois sistemas com o mesmo desempenho mdio, um pode
variar muito em torno de sua mdia e outro pouco. Por exemplo, a Figura
4.2 mostra histogramas dos tempos de resposta de dois sistemas. Ambos
tm o mesmo tempo de resposta mdio de 2 s. No caso (a), o tempo de
Avaliao de Desempenho de Sistemas

76

resposta est sempre prximo do seu valor mdio, enquanto que, no caso
(b), o tempo de resposta pode variar de 1 s a 1 minuto, porexemplo. Qual
sistema o preferido? A maioria das pessoas prefere o sistema com baixa
variabilidade.

Figura 4.2 - Histogramas de tempos de resposta de dois sistemas.


Variabilidade especificado por meio de uma das seguintes medidas, que
so chamados de ndices de disperso:
Alcance - diferena entre os valores mximo e mnimo observados
Desvio padro ou Varincia
Percentis 10-90
Alcance entre interquantil
Desvio mdio absoluto

O intervalo de valores pode ser facilmente calculado, por meio dos valores
mnimo e mximo. A variabilidade medida pela diferena entre os
valores mximo e o mnimo. Quanto maior a diferena, maior a
variabilidade. Na maioria dos casos, a faixa no muito til. O mnimo
muitas vezes chega a ser zero e o mximo chega a ser um outlier, longe
de valores tpicos. A menos que haja uma razo para a varivel ser
delimitada entre dois valores, o valor mximo aumenta com o aumento do
nmero de observaes, o mnimo continua a diminuir com o nmero de
observaes, e no h nenhum ponto estvel que d uma boa indicao
da faixa real. A concluso que o intervalo til se, e somente se, existe
uma razo para acreditar que a varivel limitada. A faixa d a melhor
estimativa desses limites.
A varincia de uma amostra de n observaes {x 1, x2,..., xn} calculada
como se segue
n

s =

1
( xi x m)2

n1 i=1

4.1

com

x m=

1
x .
n i=1 i

A quantidade s2 chamada varincia da amostra e sua raiz quadrada s


chamado desvio padro da amostra. A palavra amostra pode ser
descartada se no h ambiguidade e claro a partir do contexto que as
quantidades se referem a apenas uma amostra. Observe que no clculo da
Avaliao de Desempenho de Sistemas

77

varincia, a soma dos quadrados (x i-xm)2 dividida por n-1 e no n.


Porque apenas n-1 das n diferenas (x i-xm) so independentes. O nmero
de termos independentes em uma soma tambm chamado de seus
graus de liberdade. Na prtica, o principal problema com a varincia que
expressa em unidades que so o quadrado das unidades das
observaes. A alterao da unidade de medida tem um efeito sobre a
magnitude numrica ao quadrado da varincia. Por este motivo,
prefervel usar o desvio padro. na mesma unidade que a mdia, o que
nos permite compar-lo com a mdia. Assim, se o tempo de resposta
mdio de 2 s e o desvio padro de 2 s, h uma variabilidade
considervel, por outro lado, se o desvio padro for de 0,2 s, o mesmo
seria considerado significaticamente pequeno
De fato, a razo entre o desvio padro da mdia ou o coeficiente de
variao (COV), ainda melhor porque leva a escala de medio (unidade
de medida), em considerao a variabilidade. Um COV igual a 5 grande
j um COV igual 0,2 (ou 20%) pequena, no importa qual seja a unidade
Percentis so um meio popular de tambm especificar a disperso.
Especificando o percentual de 5 e 95-percentil de uma varivel tem o
mesmo impacto que especificar seu mnimo e mximo. No entanto, isso
pode ser feito por qualquer varivel, mesmo para as variveis sem limites.
Expressa como uma frao quando entre 0 e 1 (em vez de uma
percentagem), os percentis so tambm chamados de quantil. Assim 0,9quantil o mesmo que o percentil-90. Os percentis mltiplos de 10% so
chamados de decis. Assim, o primeiro decil o 10-percentil, o segundo
decil o 20-percentil e assim por diante. Quartis divide os dados em
quatro partes iguais a 25, 50 e 75%. Assim, 25% das observaes so
inferiores ou iguais s Q1, primeiro quartil, 50% das observaes so
menores ou iguais ao segundo quartil Q 2 e 75% so inferiores ou iguais a
Q3, terceiro quartil. Observe que o segundo quartil Q2 tambm a
mediana. O -quantil pode ser estimada pela classificao das
observaes e tendo a posio do [(n-1) +1]-simo elemento do conjunto
ordenado. Aqui, [.] utilizado para designar o arredondamento para o
nmero inteiro mais prximo. Para quantidades exatamente a meio
caminho entre dois inteiros, use o menor nmero inteiro.
O intervalo entre Q3 e Q1 chamada amplitude interquartil de dados (IQR
- Interquartile Range). A metade deste intervalo chamado de Semi-IQR
(SQIR), Isto ,
SQIR=

Q 3Q1 x 0.75x 0.25


=
2
2

4.2

Outra medida de disperso o desvio mdio absoluto, s a, que calculado


n

da seguinte forma

1
s a= |x ix m| .
n i=1

Avaliao de Desempenho de Sistemas

78

A principal vantagem do desvio mdio absoluto sobre o desvio padro


que no so necessrias nem multiplicao e nem raiz quadrada.
Entre os ndices de disperso anteriores, o alcance consideravelmente
afetada por valores discrepantes. A varincia da amostra tambm
afetada por valores extremos, mas o efeito menor do que na alcance. O
desvio mdio absoluto o prximo na resistncia a outliers. O alcance
entre interquantil muito resistente a outliers. prefervel o desvio
padro pelas mesmas razes que a mediana o preferido para a mdia.
Assim, se a distribuio muito assimtrica, valores extremos so
altamente propensos e a SIQR o mais representativo da disperso nos
dados do que o desvio padro. Em geral, o SIQR usado como um ndice
de disperso sempre que a mdia utilizada como ndice de tendncia
central.
Finalmente, deve ser mencionado que todos os ndices de disperso
anteriores aplicam-se apenas para os dados quantitativos. Para dados
qualitativos (categricos), a disperso pode ser especificada, dando o
nmero de categorias mais frequente que o percentual de dados
compreendem, por exemplo, os 90% superior.
Tabela 4.1 - Sumarizando dados observados
Dados

amostra com n observaes {xi}, i [1,n]


n

1. Mdia Aritmtica da amostra

1
m= x i
n i=1

2. Mdia Geomtrica da amostra

m g=
m h=

3. Mdia Harmnica da amostra

xi

i=1

x1
i=1

md=x n1 , se n mpar
2

1
md= (x n + x n +1 ) , se n par
2 2
2

4. Mediana da amostra

5. Moda da amostra

xi a i-sima observao da amostra ordenada.


observao mais frequente (dados categricos)
n

1
s =
( xi m)2

n1 i=1

6. Varincia da amostra

8. Coeficiente de Variao
9. Coeficiente de Assimetria
10. Amplitude
11. Percentis: p-percentil

1
s=
( x im)2

n1 i=1
s
COV =
m
n
1
CA= 3 (xi m)3
ns i=1

7. Desvio padro da amostra

diferena entre os valores mximo e mnimo

Avaliao de Desempenho de Sistemas

x p=x 1+(n1 )p

79

12. Semi-IQR

SQIR=

13. Desvio mdio absoluto

s a=

Q3Q1 x 0.75x 0.25


=
2
2

1
|x m|
n i=1 i

O exemplo a seguir ilustra o clculo de percentis e SIQRs


Exemplo 4.1 - Em um experimento, que foi repetida 32 vezes, o tempo de CPU medida
foi encontrados so {3.1, 4.2, 2.8, 5.1, 2.8, 4.4, 5.6, 3.9, 3.9, 2.7, 4.1, 3.6, 3.1, 4.5, 3.8,
2.9, 3.4, 3.3, 2.8, 4.5, 4.9, 5.3, 1.9, 3.7, 3,2, 4,1, 5,1, 3,2, 3,9, 4,8, 5,9, 4,2}
O conjunto ordenado {1.9, 2.7, 2.8, 2.8, 2.8, 2.9, 3.1, 3.1, 3.2, 3.2, 3.3, 3.4, 3.6, 3.7,
3.8, 3.9, 3.9, 3.9, 4.1, 4.1, 4.2, 4.2, 4.4 , 4.5, 4.5, 4.8, 4.9, 5.1, 5.1, 5.3, 5.6, 5.9}
Ento
O percentil 10 dada por [1+(31)(0,10)] = elemento 4 = 2,8
O percentil 90 dada por [1+(31)(0,90)] = elemento 29 = 5,1
O primeiro quartil Q1 dada por [1+(31)(0,25)] = elemento 9 = 3,2
Dada a mediana por Q2 [1+(31)(0,50)] = elemento 16 = 3,9
O Q3 terceiro quartil dado por [1+(31)(0,75)] = elemento 24 = 4,5
Assim, SQIR = (Q3-Q1)/2 = (4.5-3.2)/2 = 0.65.

4.3. Resumindo Dados por Meio de Grficos


Grficos como grficos de linhas, de barras, de setores e histogramas so
comumente usados para apresentar resultados de desempenho. Alm
disso, h uma srie de grficos que foram desenvolvidos especificamente
para a anlise de desempenho de sistemas de computador, estes so
grficos de Gantt, grficos Kiviat e grfico Schumacher.
H uma srie de razes pelas quais um grfico pode ser usado para
apresentao de dados no lugar de uma explicao textual. Primeiro de
tudo, uma imagem vale mais que mil palavras. Um grfico economiza
tempo dos leitores e apresenta a mesma informao de forma mais
concisa. Tambm pode ser usado para o interesse do leitor. A maioria dos
leitores acha mais fcil ver os grficos para captar rapidamente os
principais pontos do estudo e ler o texto apenas para obter mais detalhes.
Um grfico tambm uma boa maneira de enfatizar ou esclarecer um
ponto, para reforar uma concluso e para resumir os resultados de um
estudo.
O Tabela 4.2 apresenta uma lista de verificao para tornar mais fcil
verificar o emprego adequado de grficos. A lista organizada de modo
que um "sim" como resposta para cada questo, em geral, leva a um
grfico melhor. No entanto, em alguns casos, um analista pode
conscientemente decide no seguir uma sugesto se isso ajuda em
Avaliao de Desempenho de Sistemas

80

transmitir a mensagem pretendida.


Na prtica, necessrio fazer vrias tentativas antes de chegar ao grfico
final. Vrias faixas de escala diferentes e pares de varivel {x,y} devem
ser julgados, e o grfico que apresenta a mensagem mais precisamente,
simplesmente, de maneira concisa e logicamente deve ser escolhido.

Tabela 4.2 - Checklist para bons grficos


1. Os dois eixos de coordenadas so mostrados e rotulados?
2. Os rtulos dos eixos so de auto-explicativos e concisos?
3. As escalas e divises so mostradas em ambos os eixos?
4. Os valores mnimo e mximo do intervalo dos eixos so adequado para apresentar o
mximo de informaes?
5. O nmero de curvas razoavelmente pequeno? (Um grfico de linha geralmente no
deve ter mais de seis curvas).
6. Todos os grficos usam a mesma escala? (Escalas mltiplas no mesmo grfico so
confusas)
7. H curva que pode ser removida sem reduzir as informaes?
8. As curvas em um grfico de linhas so rotuladas individualmente?
9. As clulas em um grfico de barras esto individualmente rotuladas?
10. Todos os smbolos no grfico esto acompanhados de explicaes textuais?
11. As linhas que se cruzam so desenhadas utilizando padres de linhas diferentes para
evitar a confuso?
12. As unidades de medida esto indicadas?
13. A escala horizontal cresce da esquerda para a direita?
14. A escala vertical cresce de baixo para cima?
15. As linhas de grade auxiliam na leitura das curvas? (Se no, as linhas de grade no
deve ser mostradas)
16. A figura como um todo tornam as informaes disponveis para o leitor?
17. As escalas so contguas? (Quebras na escala devem ser evitadas ou claramente
demonstradas)
18. A ordem das barras em um grfico de barras est sistematizada? (Alfabtica,
temporal, ou ordenao do melhor para o pior prefervel em comparao colocao
aleatria)
19. Se o eixo vertical representa uma quantidade aleatria, so mostrados os intervalos
de confiana?
20. No existem curvas, smbolos ou textos sobre o grfico que pode ser removido sem
afetar as informaes?
21. Existe um ttulo para o grfico?
22. O ttulo do grfico autoexplicativo e conciso?
23. Para grficos de barras com intervalo de classes desiguais, a rea e a largura
representam a frequncia e a intervalo, respectivamente?
24. As variveis plotadas neste grfico do mais informao do que outras alternativas?
25. O grfico claramente comunica a mensagem pretendida?
26. A figura referenciada e discutida no texto do relatrio?

4.4. Modelos de Regresso


Entre os modelos estatsticos utilizados por analistas, os modelos de
regresso so os mais comuns. Um modelo de regresso permite estimar
ou prever uma varivel aleatria como uma funo de vrias outras
variveis. A varivel estimada chamado a varivel resposta e as
Avaliao de Desempenho de Sistemas

81

variveis utilizadas para prever a resposta so chamados de variveis de


previso, os preditores ou fatores. A anlise de regresso assume que
todas as variveis de previso so quantitativos para que as operaes
aritmticas, como adio e multiplicao sejam significativas.
O objetivo de discutir modelos de regresso duplo. Primeiro, o de
destacar os erros que comumente os analistas cometem ao usar tais
modelos. Em segundo lugar, os conceitos utilizados em modelos de
regresso, como intervalos de confiana para os parmetros do modelo,
so aplicveis a outros tipos de modelos. Em particular, o conhecimento
desses conceitos necessria para compreender a anlise de projetos
experimentais a serem discutidos.
Embora as tcnicas de regresso podssam ser utilizada para desenvolver
uma variedade de modelos lineares e no lineares, o seu uso mais comum
para encontrar o melhor modelo linear. Tais modelos so chamados de
modelos de regresso linear. Para simplificar o problema, inicialmente,
limitamos nossa discusso para o caso de uma nica varivel de previso.
Devido sua simplicidade, tais modelos so chamados de modelos de
regresso linear simples.
O primeiro problema no desenvolvimento de um modelo de regresso
definir o que se entende por um bom modelo e um modelo ruim. A Figura
4.3 mostra trs exemplos de dados medidos e as tentativas de ajuste de
modelos lineares. Os dados de medio mostrado por pontos dispersos,
enquanto que o modelo mostrado por uma linha reta. A maioria das
pessoas concorda que o modelo nos dois primeiros casos, parece
razoavelmente perto dos dados, enquanto que para o terceiro no parece
ser um bom modelo. O que bom sobre os primeiros dois modelos? Uma
resposta possvel a de que a linha de modelos, nos dois primeiros casos,
est perto de observaes mais do que no terceiro caso. Assim, bvio
que a qualidade do modelo deve ser medida pela distncia entre os
pontos observados e as linhas de modelo. A prxima etapa, ento, medir
a distncia.
Os modelos de regresso tentam minimizar a distncia medida na vertical
entre o ponto de observao e a linha do modelo (ou curva). A motivao
para isso a seguinte. Dado qualquer valor da varivel x preditor, pode-se
estimar a resposta correspondente utilizando o modelo linear,
simplesmente lendo o valor de y na linha de modelo em dado valor x. O
segmento de linha que une esta "previso" e o ponto observado vertical j
que ambos os pontos tm a mesma coordenada x. O comprimento do
segmento de linha a diferena entre a resposta observada e a resposta
prevista. Isto chamado de erro residual da modelagem, ou simplesmente
erro. Os termos resduo e erro so utilizados alternadamente.

Avaliao de Desempenho de Sistemas

82

Figura 4.3 - Modelos de regresso bons e ruins.


Alguns dos erros so positivos, porque a resposta estimada menor do
que a resposta observada enquanto que outros so negativos. Uma
exigncia bvia seria ter erro global zero, isto , os erros positivos e
negativos se anularem. Infelizmente, h muitas linhas que iro satisfazer
este critrio. necessrio critrios adicionais. Um tal critrio poderia ser o
de escolher a linha que minimiza a soma dos quadrados dos erros. Este
critrio chamado de Mtodo dos Mnimos Quadrados e utilizado para
definir o melhor modelo.
A definio matemtica do critrio de mnimos quadrados a seguinte.
Suponha que o modelo linear = b 0+b1x, em que a resposta
prevista quando a varivel preditora x. Os parmetros b 0 e b1 so os
parmetros da regresso, determinados a partir dos dados. Dado n pares
de observao {(x1,y1), ..., (xn,yn)}, a resposta estimada i da i-sima
observao i = b0+b1xi. O erro ei = yi -i.
O melhor modelo linear dada pelos valores dos parmetros de regresso
que minimizem a soma dos erros ao quadrado (SSE, Sum of Squared
Residuals):
n

i=1

i=1

SSE= e i = ( y ib0b 1 x i )
sujeito a restrio de erro mdio nulo, ou seja,

4.3
n

i=1

i=1

e i= ( y ib 0b 1 x i)=0

Pode-se demonstrar que este problema de minimizao restrita


equivalente a minimizar a varincia dos erros.
4.4.1. Estimao dos Parmetros do Modelo
Os parmetros da regresso que do varincia do erro mnima so:

Avaliao de Desempenho de Sistemas

83

x i y in x m y m

b1= i=1 n

4.4

x n x m
2
i

i=1

b0 = y mb 1 x m

4.5
n

1
x m= x i , mdia dos valores das variveis de previso e
n i=1

onde
n

1
y m= y i , mdia das respostas.
n i=1

Exemplo 4.2 - O nmero de E/S de disco e os tempos de processamento de sete


programas foram medidos como {(14, 2), (16, 5), (27, 7 (42, 9), (39, 10), (50, 13), (83,
20)}.
Um modelo linear para prever o tempo de CPU, como uma funo do E/S de disco pode
ser desenvolvido como se segue.
Dado n = 7, xiyi = 3375, xi = 271, xi2 = 13855, yi = 66, yi2 = 828, xm = 38,71 e
ym = 9,43.
Portanto, b1 = xiyi-nxmym)/(xi2-nxm2) = (3375-738.719.43)/(13855-738.712) =
0.243
b0 = ym-b1xm = 9.43-0.243838.71 = -0.008
O modelo linear desejado Tempo de CPU = -0,0083 + 0,2438 (nmero de E/S de disco).

Um grfico de disperso dos dados mostrado na Figura 4.4. Uma linha


reta com interceo com 0Y em -0,0083 e declividade 0,2438 tambm
mostrada nesta figura. Note-se que a linha passa prximo dos pontos dos
valores observados.

Figura 4.4 - Disperso de dados de tempo de E/S de disco e CPU.

Tabela 4.3 - Clculo do erros dos dados de tempo de E/S de Disco e CPU
Avaliao de Desempenho de Sistemas

84

xi

yi

ei

ei2

14
16
27
42
39
50
83
=271

2
5
7
9
10
13
20
66

3,4043
3,8918
6,5731
10,2295
9,4982
12,1795
20,2235
66,0000

-1,4043
1,1082
0,4269
-1,2295
0,5018
0,8205
-0,2235
0,0000

1,9721
1,2281
0,1822
1,5116
0,2518
0,6732
0,0500
5,8690

Na Tabela 4.3 esto listados o tempo de CPU previsto pelo modelo, os


valores medidos, erros e erros quadrados para cada um das sete
observaes. O SSE 5,869. Este o SSE mnimo possvel. Quaisquer
outros valores de b0 e b1 daria um maior SSE.
4.4.2. Anlise de Varincia
O particionamento da variao em parte explicada e no explicada til
na prtica, j que pode ser facilmente apresentados pelo analista para os
tomadores de deciso. Por exemplo, mais fcil para eles entender que
uma regresso que "explica apenas 709/6 da variao" no to como a
que "explica 90% da variao". A prxima pergunta quo boa a
variao explicada? A resposta a esta questo estatstica obtida pela
chamada Anlise de Varincia (ANOVA). Esta anlise essencialmente testa
a hiptese de que o SSR (Soma de Quadrado da Regresso) inferior ou
igual SSE.
4.4.2.1. Soma de Quadrados
A decomposio da soma de quadrados e nos graus de liberdade
associados a varivel resposta y, isto , o desvio de uma observao em
relao mdia pode ser decomposto como o desvio da observao em
relao ao valor ajustado pela regresso mais o desvio do valor ajustado
em relao mdia, isto , podemos escrever (yi-ym) como:

( y i y m )=( y i y m + y^ i y^ i)=( y^ i y m)+( y i y^ i)

4.6

Elevando cada componente desta equao ao quadrado e somando para


todo o conjunto de observaes, e considerando que
obtem-se:

Avaliao de Desempenho de Sistemas

85

i=1

i=1

e i= ( y i y^i )=0 ,

i=1

i=1

i=1

( y i y m ) = ( y^ i y m ) + ( y i y^ i )

4.7

em que:
n

SQT = ( y i y m ) - Soma de Quadrado Total


i=1
n

SQR= ( y^ i y m) - Soma de Quadrado da Regresso


i=1
n

SQE= ( y i y^ i) - Soma de Quadrado dos Erros (dos Resduos)


i=1

Ou seja, SQT =SQR+ SQE , a decomposio a Soma de Quadrados Total


em Soma de Quadrados da Regresso e Soma de Quadrados dos Erros.
4.4.2.2. Graus de Liberdade
Cada uma das somas dos quadrados tem um grau de liberdade (gl) que
corresponde ao nmero de dados necessrios para calcul-ls.
A SQT tem n-1 graus de liberdade uma vez que o parmetro y m deve ser
calculado a partir dos dados antes do clculo da SQT.
A SQR, tem 1 grau de liberdade, uma vez que para sua abteno so
utilizados a diferena entre i e ym, o primeiro requer dois parmetros da
regresso (b0 e b1) e, o segundo, um parmetro.
A SQE tem apenas n-2 graus de liberdade uma vez que para sua abteno
so calculados dois parmetros da regresso (b 0 e b1) a partir dos dados
antes do seu clculo.
Assim, as somas e seus graus de liberdade associados so os seguintes:
SQT =SQR+ SQE
n1=1+n2

4.8
4.9

Note-se que os graus de liberdade se adicionam de forma semelhante da


soma dos quadrados. Este fato pode ser utilizado para verificar se os
graus de liberdade foram atribudos corretamente.
4.4.2.3. Quadrado Mdio

Avaliao de Desempenho de Sistemas

86

A diviso da soma de quadrados pelos respectivos graus de liberdade o


quadrado mdio.
Quadrado Mdio Total - QMT =

SQT
n1

Quadrado Mdio da Regresso Soma de Quadrado dos Erros -

QMR=
QME=

SQR
1

SQE
n2

A relao da decomposio da variabilidade no existe mais nesse caso.

Tabela 4.4 - Tabela ANOVA para a Regresso Linear Simples


Fonte
gl
SQ
QM
n

Regresso (R)

SQR= ( y^ i y m)

QMR = SQR

i=1
n

Resduo (E)

n-2

Total (T)

n-1

SQE= ( y i y^ i)

QME=

i=1

SQE
n2

Assumindo que os erros so independentes e normalmente distribudos e


que todos eles so identicamente distribudos (com a mesma mdia e
varincia), segue-se que y so tambm normalmente distribudos desde
que x so estocsticos. A soma dos quadrados de variveis normais tem
uma distribuio 2. Assim, SQT, SQR e SQE tem distribuio 2 com graus
de liberdades acima estabelecidos.
Dadas as somas de quadrados SQR e SQE com graus de liberdade gl R e
glE, respectivamente, a razo (SQR/gl R)/(SQE/glE) tem uma distribuio F
com glR graus de liberdade do numerador e gl E graus de liberdade do
denominador, isto decorre da definio da distribuio F.
A hiptese de que a soma SQR inferior ou igual a SQE rejeitada ao
nvel de significncia de se a razo maior do que o (1-)-quantil da
distribuio F. Assim, a relao computada comparada com F[1-, gl R,
glE] obtida a partir da tabela de quantis F, as somas dos quadrados so
considerados significativamente diferentes se a razo calculada maior
do que a tabelada. Este procedimento tambm conhecido como teste F.
O teste F pode ser utilizado para verificar se SSR significativamente mais
elevado do que SSE pelo clculo da razo entre (SSR/gl R) / (SSE/glE), onde
glR e glE so graus de liberdade para o SSR e SSE, respectivamente. A

Avaliao de Desempenho de Sistemas

87

quantidade SSR/glR chamado de quadrado mdio da regresso (MSR).


Em geral, qualquer soma de quadrados, divididos pelos seus graus de
liberdade d o quadrado correspondente mdia.
Assim razo MSR/MSE tem distribuio F[1,n-2], isto , uma distribuio F
com 1 grau de liberdade no numerador e n-2 graus de liberdade no
denominador. Se a razo calculada maior do que o valor tabelado, as
variveis de previso explicar uma frao significativa da variao da
resposta.
Um arranjo tabular conveniente para conduzir o teste F mostrado na
Tabela 4.3. A tabela disposta de modo que o clculo pode ser feito
coluna por coluna a partir da esquerda. Tal como indicado no quadro, o
desvio padro do erro pode ser estimada tomando a raiz quadrada de
MSE, o que uma estimativa da varincia de erro.
Deve salientar-se que o teste F equivalente a testar a hiptese nula de
que y no depende de qualquer xi, isto , contra uma hiptese alternativa
de que y depende de pelo menos um x i, e, portanto, b1 nulo. Se a razao
calculada for menor do que o valor tabelado, a hiptese nula no pode ser
rejeitada ao nvel de significncia indicado.
Em modelos de regresso simples, existe apenas uma varivel de previso
e, consequentemente, o teste F reduz-se ao teste de b1 = 0. Assim, se o
intervalo de confiana de b1 no inclui zero, o parmetro diferente de
zero, a regresso explica uma parte significativa da variao de resposta e
o teste F no necessrio.

Exemplo 4.3 - Para os dados no disco da memria de CPU do Exemplo 4.1, a anlise de
varincia mostrada na Tabela 4.4. A partir da tabela, vemos que a razo F calculado
for maior do que a obtida a partir da tabela, e assim faz a regresso explicar uma parte
significativa da variao.

Tabela 4.5 - Clculo do erros dos dados de tempo de I/O de Disco e CPU
xi
yi i
(i-ym)2
(yi-i)2
14
16
27
42
39
50
83
=271

2
5
7
9
10
13
20
66

3,4043
3,8918
6,5731
10,2295
9,4982
12,1795
20,2235
66,0000

-1,4043
1,1082
0,4269
-1,2295
0,5018
0,8205
-0,2235
0,0000

1,9721
1,2281
0,1822
1,5116
0,2518
0,6732
0,0500
5,8690

n=7
ym = 66/7 =9,4

Avaliao de Desempenho de Sistemas

88

Tabela 4.6 - Tabela ANOVA para a Regresso Linear Simples


Fonte

gl SQ

QM

Ftabelado

Regresso (R)
Resduo (E)
Total (T)

1
5
6

QMR = 379,22
QME = 5,7/5 = 1,14

F = 379,22/1,14 = 332,65

F[0,95;1;5] = 5,99

SQR = 379,22
SQE = 5,7

Memria de clculo:

i xi

yi i

(i-ym)2

(yi-i)2

1 14

3,4

(3,4-9,4)2=36,0

(3,4-2)2=2,0

2 16

3,9

(3,9-9,4)2=30,3

(3,9-5)2=1,2

3 27

6,6

(6,6-9,4)2=7,8

(6,6-7)2=0,2

4 42

10,2

(10,2-9,4)2=0,6

(10,2-9)2=1,4

5 39

10 9,5

(9,5-9,4)2=0,0

(9,5-10)2=0,3

6 50

13 12,2

(12,2-9,4)2=7,8

(12,2-13)2=0,6

(20,2-9,4)2=116,6
199,22

(20,2-20)2=0,0
5,7

7 83 20 20,2
271 66 66

n = 7 ym = 66/7 = 9,4

Note-se que no Exemplo 4.3 a regresso passou no teste F, indicando que


a hiptese de todos os parmetros serem zero no pode ser aceita.
4.5. Projeto e Anlise de Experimentos
O desempenho muitas vezes depende mais de um fator, como a vazo e a
carga de trabalho. A anlise adequada requer que os efeitos de cada fator
sejam isolados uns dos outros de modo que declaraes significativas
possam ser feitas sobre os diferentes nveis do fator, por exemplo, vazes
diferentes. Tal anlise o tema principal desta seo. As tcnicas
apresentadas nesta seo ir permitir:
1. Criar um bom conjunto de experimentos para a medio ou simulao
2. Desenvolver um modelo que melhor descreva os dados obtidos
3. Estimar a contribuio de cada alternativa (por exemplo, cada processador e cada
carga de trabalho) para o desempenho
4. Isolar os erros de medio
5. Estimar intervalos de confiana para os parmetros do modelo
6. Verificar se as alternativas so significativamente diferentes
7. Verificar se o modelo adequado

O objetivo de um projeto experimental adequado obter o mximo de


informao com o nmero mnimo de experimentos. Isso economiza
trabalho considervel que teria sido gasto na coleta de dados. A anlise
adequada de experimentos tambm ajuda a separar os efeitos de vrios
fatores que podem afetar o desempenho. Alm disso, permite determinar
Avaliao de Desempenho de Sistemas

89

se um fator tem um efeito significativo ou se a diferena observada


simplesmente devido a variaes aleatrias causadas por erros de
medio e parmetros que no foram controlados. Vrios termos novos
que so usados no planejamento experimental e anlise so explicados
primeiramente.
4.5.1. Terminologia
Os termos que so usados em desenho experimental e anlise so
explicados usando o exemplo de um desenho para estudar uma estao
de trabalho pessoal
O problema projetar uma estao de trabalho pessoal, onde vrias
opes tm que ser feitas. Primeiro, um microprocessador tem de ser
escolhido para a CPU, as alternativas do microprocessador so Intel, AMD
e Apple. Segundo, o tamanho de memria tem que ser escolhido dentre 1
GB, 2 GB e 4 GB. Terceiro, a estao de trabalho pode ter uma, duas, trs
ou quatro unidades de disco. Em quarto lugar, a carga de trabalho nas
estaes de trabalho pode ser de um dos trs tipos: secretariado, gesto
ou cientfico. O desempenho tambm depende das caractersticas do
usurio, sendo os usurios de uma escola, faculdade ou ps-graduao. A
Tabela 4.7 discute os termos frequentemente utilizados no projeto e
anlise de experimento.
Tabela 4.7 - Termos utilizados em projeto e anlise de experimento
o resultado de um experimento chamado varivel resposta. Geralmente a
varivel resposta o desempenho medido do sistema. Por exemplo, no estudo
de projeto da estao de trabalho a varivel resposta poderia ser o rendimento
Varivel
expresso em tarefas concludas por unidade de tempo, ou tempo de resposta
Resposta
para as tarefas ou qualquer outra mtrica. Uma vez que as tcnicas de
desenho experimental so aplicveis para qualquer tipo de medidas, no
apenas medies de desempenho, o termo resposta usado no lugar de
performance por ser mais geral.
cada varivel que afeta a varivel resposta e que tem vrias alternativas
chamado de fator. Por exemplo, existem cinco fatores no estudo do projeto de
estao de trabalho. Os fatores so tipo de CPU, tamanho da memria,
Fatores
nmero de unidades de disco, carga de trabalho utilizado e nvel de
escolaridade do usurio. Os fatores so tambm chamados de variveis
preditoras ou preditores.
Nveis
os valores que um fator pode assumir so chamados os seus nveis. Em outras
palavras, cada nvel de um fator constitui uma alternativa para esse fator. Por
exemplo, no estudo de projeto de estao de trabalho o tipo CPU tem trs
nveis: Intel, AMD e Apple. O Tamanho da memria tem trs nveis: 1 GB, 2
GB ou 4 GB. O nmero de unidades de disco tem quatro nveis: 1, 2, 3 ou 4.
A carga de trabalho possui trs nveis: secretariado, gesto ou cientfico.
Finalmente, os usurios podem ser colocados em um dos trs nveis de ensino
dentre diplomados numa escola, graduados e ps-graduados. O termo
Avaliao de Desempenho de Sistemas

90

tratamento tambm usado na literatura de delineamento experimental no


lugar de nveis.
os fatores cujos efeitos devem ser quantificados so chamados fatores
primrios. Por exemplo, no estudo de projeto de estao de trabalho, pode ser
Fatores
principalmente interessados em quantificar apenas o efeito do tipo de CPU,
Primrios
tamanho da memria e nmero de unidades de disco. Assim, existem trs
fatores principais neste caso.
os fatores que causam impacto no desempenho, mas cujo impacto no
estamos interessados em quantificar so chamados de fatores secundrios.
Fatores
Por exemplo, no estudo da estao de trabalho podem no estar interessados
Secundrios em determinar se o desempenho com ps-graduao melhor do que com os
graduados da faculdade. Da mesma forma, no queremos quantificar a
diferena entre as trs cargas de trabalho. Estes so os fatores secundrios.
repetio de todos ou alguns experimentos chamado de replicao. Por
Replicao
exemplo, se todos os experimentos em um estudo so repetidos trs vezes, o
estudo diz-se de trs repeties.
o desenho experimental consiste em especificar o nmero de experimentos,
as combinaes de nveis do fator para cada experimento e o nmero de
repeties de cada experimento. Por exemplo, no estudo do projeto de
estao de trabalho, pode-se realizar experimentos correspondentes a todas as
Desenho
combinaes possveis de nveis de cinco fatores. Isso exigiria 33433
ou 324 experimentos. Poderamos repetir cada experimento cinco vezes,
levando a um total de 1215 observaes. Este um projeto experimental
possvel. Mais tarde, outros possveis projetos experimentais sero descritos.
qualquer entidade que usada para o experimento chamada uma unidade
experimental. Geralmente apenas as unidades experimentais que considero
um dos fatores em estudo so de interesse. Por exemplo, no estudo de projeto
da estao de trabalho, os usurios contratados para usar a estao de
Unidade
trabalho, enquanto as medies esto sendo realizadas, podem ser
Experimental
considerados a unidade experimental. No de interesse unidades
experimentais, apesar de afetar a resposta, um dos objetivos do projeto
experimental o de minimizar o impacto da variao entre as unidades
experimentais.
dois fatores A e B so ditos interagirem se o efeito de um depende do nvel do
outro. Por exemplo, Tabela 4.5 mostra o desempenho de um sistema com dois
fatores. Como o fator A alterado do nvel A 1 ao nvel A2, o desempenho
aumenta em 2, independentemente do nvel de fator de B. Neste caso no h
interao. A Tabela 4.6 mostra outra possibilidade. Neste caso, como o fator
Interao
A alterado do nvel A1 ao nvel A2, o desempenho aumenta, quer por dois
ou por trs, dependendo se B est no nvel B 1 ou nvel B2, respectivamente.
Os dois fatores interagem neste caso. A apresentao grfica deste exemplo
dada na Figura 4.4; no caso a, as linhas so paralelas, indicando que no h
interao. No caso b, as linhas no so paralelas, indicando interao.

Tabela 4.8 - Fatores no interagem


A1 A2
Avaliao de Desempenho de Sistemas

91

B1
B2

3
6

5
8

Tabela 4.9 - Fatores que interagem


A1 A2
B1 3
5
B2 6
9

Figura 4.5 - Apresentao grfica de fatores que a) interagem e b) no interagem.


4.5.2. Erros Comuns em Experimentao
Os analistas inexperientes, que no esto cientes do desenho
experimental e tcnicas de anlise, muitas vezes obtm concluses
equivocadas devido aos seguintes erros

Avaliao de Desempenho de Sistemas

92

Tabela 4.10 - Erros comuns em experimentao


A variao devido ao erro experimental ignorada

Cada valor medido um valor aleatrio. Cada vez que ele repetido, o valor medido pode
ser ligeiramente diferente, mesmo se todos os fatores controlveis so mantidos no mesmo
valor. Na tomada de decises com base em medies, importante isolar o efeito de erros. A
variao devido a um fator deve ser comparada com aquela devido a erros antes de tomar
uma deciso sobre o seu efeito. Analistas inexperientes que no esto cientes disto, atribuem
toda variao aos fatores e ignora completamente os erros
A variao devido ao erro experimental ignorada

cada valor medido um valor aleatrio. Cada vez que ele repetido, o valor medido pode
ser ligeiramente diferente, mesmo se todos os fatores controlveis so mantidos no mesmo
valor. Na tomada de decises com base em medies, importante isolar o efeito de erros. A
variao devido a um fator deve ser comparada com aquela devido a erros antes de tomar
uma deciso sobre o seu efeito. Analistas inexperientes que no esto cientes disto, atribuem
toda variao aos fatores e ignora completamente os erros
Parmetros importantes no so controlados

anteriormente, foi salientado que a lista de parmetros deve incluir todas as cargas de
trabalho, ambiente e parmetros do sistema que afetam o desempenho. Apenas alguns destes
parmetros so selecionados como fatores e tem seus valores variados no experimento. Por
exemplo, quando se comparam duas estaes de trabalho, o usurio da estao de trabalho
tem um efeito significativo sobre o desempenho medido. No entanto, se o efeito dos usurios
no corretamente contabilizado, os resultados podem no ser significativos
Efeitos de diferentes fatores no so isolados

um analista pode variar vrios fatores simultaneamente e, em seguida, pode no ser capaz de
atribuir a mudana no desempenho a qualquer fator em particular. Para evitar isso, alguns
analistas usam desenhos experimentais muito simples que levam a problemas, o que ser
discutido a seguir
Designs simples variando um fator por vez so usados

tal projeto um desperdcio des recursos. Ele requer muitos experimentos para obter a
mesma informao. Com delineamento experimental adequado, possvel obter intervalos
de confiana para os efeitos com o mesmo nmero de experimentos
Interaes so ignoradas

muitas vezes o efeito de um fator depende do nvel de outros fatores. Por exemplo, o efeito
da adio de 1 KB de cache pode depender do tamanho do programa. Tais interaes no
podem ser estimadas em designs que varia um fator por vez
Muitos experimentos so conduzidos
o nmero de experimentos uma funo do nmero de fatores e seus nveis. melhor
dividir o projeto em vrias etapas cada um usando um pequeno desenho em vez de usar
um projeto enorme, com muitos fatores e nveis. Na primeira etapa, o nmero de fatores
e os nveis devem ser pequenos. Tal projeto vai ajudar a depurar o processo
experimental e tambm ajudar a descobrir os fatores que no so significativas e no
devem ser includas no projeto. O primeiro projeto tambm vai dizer se os pressupostos
da anlise esto satisfeitas e se todas as transformaes de dados so obrigatrias.
Mais fatores e nveis podem ser adicionados em etapas subsequentes. As tcnicas
experimentais de projeto e anlise apresentadas a seguir ajudam a evitar esses
problemas

Avaliao de Desempenho de Sistemas

93

4.6. Tipos de Projetos Experimentais


Existem inmeras variedades de desenhos experimentais. Os trs modelos
mais utilizados so projetos simples, fatoriais completos e fatoriais
fracionados. As explicaes destes projetos e suas vantangens e
desvantagens so dadas a seguir.
4.6.1. Designs Simples
Em um projeto simples, inicia-se com uma configurao tpica e segue
variando um fator de cada vez para ver como cada fator afeta o
desempenho. Por exemplo, no estudo de projeto da estao de trabalho
discutido anteriormente, uma configurao tpica pode consistir de uma
CPU Intel com duas unidades de disco executando uma tarefa de gesto
por um graduado da faculdade. O desempenho desta configurao
medido em primeiro lugar. Em seguida, faz variar o primeiro fator, a CPU
e, em seguida, o desempenho comparado com outros processadores na
mesma configurao e carga de trabalho. Isso nos ajudar a decidir qual
CPU a melhor. Em seguida, alterar o nmero de unidades de disco para
um, trs e quatro, comparando o desempenho de forma a encontrar o
nmero ideal. Dado k fatores, com o i-simo fator com n i nveis, um design
k

simples requer apenas n experimentos, onde

n=1+ (n i1) .
i=1

Entretanto, neste projeto no se faz o melhor uso do esforo despendido.


No estatisticamente eficiente. Alm disso, sem os fatores de interao,
este projeto pode levar a concluses erradas. Por exemplo, se o efeito da
CPU depende do tamanho da memria, a combinao ideal no pode ser
determinada at que todas as possibilidades sejam avaliadas. Este
projeto, portanto, no recomendado.
4.6.2. Projeto Fatorial Completo
Um projeto fatorial completo utiliza todas as combinaes possveis com
todos os nveis de todos os fatores. Um estudo de desempenho com k
fatores, com o i-simo fator com n i nveis, exige n experimentos, onde
k

n= ni .
i=1

No estudo de projeto de estao de trabalho, o nmero de experimentos


Avaliao de Desempenho de Sistemas

94

seria n = (3 CPUs) (3 nveis de memria) (4 unidades de disco) (3


cargas de trabalho) (3 nveis de ensino) = 324 experimentos.
A vantagem de um design fatorial completo que todas as combinaes
possveis de configurao e carga de trabalho so examinadas. Podemos
encontrar o efeito de cada fator, incluindo os fatores secundrios e suas
interaes. O principal problema o custo do estudo. Levaria muito tempo
e recursos financeiros para realizar estes experimentos, especialmente
quando se leva em conta a possibilidade de que cada um desses
experimentos pode ter que ser repetido vrias vezes. H trs maneiras de
reduzir o nmero de experimentos:
1. reduzir o nmero de nveis de cada fator.
2. reduzir o nmero de fatores.
3. usar fatoriais fracionados.

A primeira alternativa especialmente recomendada. Em alguns casos,


pode-se tentar apenas dois nveis de cada fator e determinar a
importncia relativa de cada um deles. Um projeto fatorial completo em
que cada um dos k fatores usado em dois nveis exige experimentos 2 k.
Este um projeto muito popular e chamado de projeto 2 k. Depois que a
lista de fatores ter sido substancialmente reduzida, pode-se tentar mais
nveis por fator. A terceira alternativa de planejamento, fatorial fracionado,
descrito na prxima seo.
4.6.3. Design Fatorial Fracionado
s vezes, o nmero de experimentos necessrios para um design fatorial
completo muito grande. Isso pode acontecer se o nmero de fatores ou
seus nveis grande. Pode no ser possvel a utilizao de um design
fatorial completo devido despesa ou o tempo necessrio. Nesses casos,
pode-se usar apenas uma frao do projeto fatorial completo. O exemplo a
seguir ilustra o processo

Exemplo 4.4 - Considere apenas quatro dos cinco fatores em estudo da estao de
trabalho. Vamos ignorar o nmero de unidades de disco para este exemplo. Temos
quatro fatores, cada um em trs nveis. Portanto, o nmero de experimentos necessrios
n = (3 CPUs) (3 nveis de memria) (3 cargas de trabalho) (3 nveis de ensino)
= 81 experimentos. O modelo fatorial completo composto por 81 experimentos o
projeto chamado 34. Um planejamento fatorial fracionrio 34-2 consistindo de apenas
nove experimentos mostrada na Tabela 4.8. Observe que cada um dos quatro fatores
usado trs vezes em cada um dos seus trs nveis

Tabela 4.11 - Uma amostra planejamento fatorial fracionrio


Experimento
1
2
3

CPU
Intel
Intel
Intel

Avaliao de Desempenho de Sistemas

Nvel de Memria Carga de Trabalho


4 GB
Gerencial
2 GB
Cientfico
1 GB
Secretaria
95

Nvel Educacional
Graduao
Ps-Graduao
Colgio

4
5
6
7
8
9

AMD
AMD
AMD
Apple
Apple
Apple

4
2
1
4
2
1

GB
GB
GB
GB
GB
GB

Cientfico
Secretaria
Gerencial
Secretaria
Gerencial
Cientfico

Colgio
Graduao
Ps-Graduao
Ps-Graduao
Colgio
Graduao

Para todas as vantagens, h uma desvantagem correspondente.


Planejamentos fatoriais fracionados economizam tempo e dinheiro quando
comparado aos fatoriais completos. No entanto, as informaes obtidas a
partir de um planejamento fatorial fracionado so menores que o obtido a
partir de um design fatorial completo. Por exemplo, pode no ser possvel
obter interaes entre todos os fatores. Por outro lado, se algumas das
interaes so conhecidas e insignificantes, isso no pode ser considerado
um problema e o tempo e os custos de um projeto fatorial completo no
pode ser justificada.
4.7. Experimentos com fator nico
Projetos de um fator so usados para comparar vrias alternativas de uma
nica varivel categrica. Por exemplo, pode-se usar tal concepo para a
comparao de vrios processadores, vrios sistemas de computadores ou
vrios esquemas de cache. As tcnicas para analisar tais projetos so
apresentados neste captulo. No h limite no nmero de nveis que o
fator pode tomar. Em particular, ao contrrio dos desenhos 2 k, o nmero
de nveis pode ser superior a 2.
4.7.1. Modelo
O modelo utilizado em projetos de um fator nico
y ij = + j +e ij

4.10

Aqui, yij a i-sima reposta (ou observao) com o fator de nvel j (isto ,
a j-sima alternativa), a resposta mdia, j o efeito da j-sima
alternativa, e eij o termo de erro. Os efeitos so calculados de modo que
eles somam zero

j =0

4.7.2. Clculo dos Efeitos

Avaliao de Desempenho de Sistemas

96

Os dados medidos em um design de um fator consiste em r observaes


para cada uma das alternativas. H um total de ra observaes, que so
dispostos em um uma matriz ra de modo que as r observaes
pertencentes alternativa j de um vetor coluna. Fazendo y ij denotar a
entrada i na coluna j e substituindo as respostas observadas na Equao
do modelo, obtem-se ra equaes. Adicionando estas equaes, obtemse
r

y ij=r a + j+ e ij
i=1 j=1

4.11

i=1 j =1

j=1

Desde que os efeitos j adicionados sejam zero (pelo design) e se quer


que o erro mdio seja zero, a equao anterior torna-se
r

y ij=r a + 0+0

4.12

i=1 j=1

O parmetro do modelo, portanto, dado po


r

y ij

4.13

= i=1 j =1
ra

A quantidade do lado direito a chamada mdia geral de todas as ar


respostas, denotada por ... Os dois pontos no ndice indicam que a
mdia feito ao longo de ambas as dimenses (linhas e colunas) da
matriz. Isso deve ser distinguido das mdias de coluna, que so obtidos
por uma mdia de respostas pertencentes a uma determinada coluna (ou
linha). A mdia da coluna quer dizer para a coluna j-sima denotado por
r

y ij

.j e calculado da seguinte forma y. j= i=1


r
r

por yij, obtemos

y. j=

(+ j+eij )
i=1

, substituindo + j + eij

r +r j + e ij
i=1

= + j .

Aqui assumimos que os termos de erro para observaes r pertencente a


cada alternativa somam zero. O parmetro j pode assim ser estimado
como segue j= y. j= y. j y .

Exemplo 4.5 - Em um estudo de comparao de cdigo, o nmero de bytes necessrios


para codificar uma carga de trabalho em trs diferentes processadores R, V e Z foi
medida cinco vezes cada um (uma vez que cada um dos diferentes programadores
pediram para o cdigo de mesma carga de trabalho). Os dados medidos esto
mostrados na Tabela 4.9.

Tabela 4.12 - Anlise do Estudo Comparativo do Tamanho do Cdigo


Avaliao de Desempenho de Sistemas

97

R (b)
144
120
176
288
144

V (b)
101
144
211
288
72

Z (b)
130
180
141
374
302

Ao analisar esses dados, as cinco observaes foram assumidas para a


mesma carga de trabalho e as entradas em uma nica linha so
consideradas independentes. Se as entradas estiverem relacionadas, uma
anlise de dois fatores teria que ser usada. A anlise de um fator,
apresentada aqui, s vlida se as linhas no representam qualquer fator
adicional. A anlise mostrada na Tabela 4.10. Aqui, um nmero de nveis
3, e o nmero de repeties 5. Ns somamos cada coluna para
encontrar a soma da coluna e em seguida, adicione somas das coluna
para obter a soma total. As somas so divididas pelo respectivo nmero de
observaes para obter as mdias. As diferenas entre as mdias de
coluna e a mdia geral do os efeitos da coluna
Os resultados so interpretados da seguinte forma. Um processador mdio
requer 187,7 bytes de armazenamento. Os efeitos dos processadores R, V
e Z so -13,3, -24,5 e 37,7, respectivamente. Isto , R requer 13,3 b a
menos que a mdia dos processadores, V requer 24,5 b menos que a
mdia dos processadores, e Z requer 37,7 b a mais que a mdia dos
processadores
Tabela 4.13 - Dados de um Estudo Comparativo de Tamanho Cdigo
R
V
Z
144
101
130
120
144
180
176
211
141
288
288
374
144
72
302
y.2 = 816
y.3 = 1127
Soma da Coluna y.1 = 872

y.. = 2815

Mdia da Coluna .1 = 174,4

= ..= 187,7

.2 =163,2

.3 = 225,4

Efeito da Coluna 1= .1-..= -13,3 2= .2-.. = -24,5 3 = .1-..= 37,7


4.7.3. Estimativa dos Erros Experimentais
Uma vez que os parmetros do modelo foram computados, podemos
estimar a resposta para cada uma das alternativas y^ j = + .

Avaliao de Desempenho de Sistemas

98

A diferena entre as respostas estimada e medida representa erro


experimental. Se computarmos os erros experimentais em cada uma das
observaes ar, o erro mdio deve ser zero pois os parmetros e j
foram calculados assumindo que a soma dos erros para cada coluna
zero. A varincia dos erros pode ser estimada a partir da soma dos erros
ao quadrado (SSE)
r

SSE= e2ij

4.14

i=1 j=1

Exemplo 4.6 - Computao de erros para o estudo de comparao Cdigo tamanho do


Exemplo 4.5 a seguinte:

[ ][
144
120
176
288
144

101
144
211
288
72

][

187,7 13,3 24,5


187,7 13,3 24,5
187,7 + 13,3 24,5
187,7 13,3 24,5
187,7 13,3 24,5

130
187,7 187,7
180
187,7 187,7
141 = 187,7 187,7
374
187,7 187,7
302
187,7 187,7

][

37,7 30,4 62,2 95,4


37,7 54,4 19,2 45,4
37,7 + 1,6
47,8 84,4
37,7
113,6 125,8 148,6
37,7 30,4 91,2 76,6

4.15

Cada observao foi dividida em trs partes: a mdia geral, o efeito do processador j,
e os resduos. A notao matricial usada para todas as trs partes. A soma dos
quadrados de entradas na matriz residual SSE = (-30,4) 2 + (-54,4)2 + ... + (76,6)2 =
94365,20

4.7.4. Atribuio da Variao


A variao total de y em um design experimental de um fator pode ser
atribuda aos fatores e aos erros. Para isso, eleva-se ao quadrado ambos
os lados da equao do modelo
y ij = 2 + 2j + e2ij +2 j+ 2 e ij + 2 j e ij

4.16

Adicionando os ar termos correspondentes das equaes, obtem-se


r

y ij = + + e 2ij+termos de produtos cruzados


i=1 j=1

i=1 j =1

i=1 j=1

2
j

4.17

i=1 j=1

Os termos de produto cruzado de todos os complementos zero pois


j =0 e eij=0 .

Avaliao de Desempenho de Sistemas

99

A equao anterior, expressa em termos de somas de quadrados, pode ser


escrita como
SSY =SS 0+ SSA+ SSE

4.18

onde SSY a soma dos quadrados de y, SS0 a soma dos quadrados das
mdias, SSA a soma dos quadrados dos efeitos, e SSE a soma de erros
quadrados. Note-se que SS0 e SSA podem ser facilmente calculadas da
seguinte forma
r

SS 0= 2=r a
i=1 j=1
r
a

i=1 j=1

j=1

4.19

SSA= 2j=r 2j

4.20

Assim, SSE pode ser calculada facilmente a partir SSY sem calcular os
erros individuais. A variao total de y (SST) definida com
r

SST = ( y ij y )2= y ij ra y =SSY SS 0=SSA+ SSE


i=1 j=1

4.21

i=1 j=1

A variao total pode ser dividida em duas partes, SSA e SSE, que
representam o que explicado e as partes no explicadas da variao.
Eles podem ser expressos em percentagem da variao total. A alta
porcentagem de variao explicada indica um bom modelo

Exemplo 4.7 - Para o estudo de comparao Cdigo Tamanho do Exemplo 4.5


SSY = 1.442 + 1.202 + ... + 3.022 = 633.63
SS0 = ar2 = 35(187,7)2 = 528.281,
SSA = rj2 = 5[(-13,3)2 + (-24,5)2 + (37,6)2 ] = 10.992,
SST = SSY - SS0 = 633.639,0 - 528.281,7 = 105.357,
SSE = SST - SSA = 105.357,3 10.992,1 = 943.65.
Porcentagem de variao explicada pelos processadores = 100 10.992,13/105.357,3 =
10.4%.
Os restantes 89,6% da variao no tamanho do cdigo devido a erros experimentais,
que neste caso poderia ser atribuda a diferenas de programador. A questo de saber
se 10,4% - a contribuio processadores de variao - estatisticamente significativa
abordada na prxima seo.

4.7.5. Anlise da Variao

Avaliao de Desempenho de Sistemas

100

Na alocao da variao a diferentes fatores uma abordagem informal


muito til na prtica. Nesse enfoque, qualquer fator que explicou um alto
percentual de variao foi considerado importante. Essa importncia deve
ser diferenciada de significado, que um termo estatstico. Para
determinar se um fator tem um efeito significativo sobre a resposta, os
estatsticos comparam a sua contribuio para a variao dos erros. Se a
variao inexplicada (devido a erros) alta, um fator que explica uma
grande frao da variao pode vir a ser estatisticamente insignificante. O
procedimento estatstico para analisar o significado de vrios fatores
chamado de Anlise de Varincia (ANOVA). O procedimento para
experimentos com um fator muito semelhante ao que foi explicado
anteriormente. Para entender a ANOVA, considere a soma dos quadrados SSY, SS0, SSA e SSE. Cada uma das somas dos quadrados tem um grau de
liberdade associado que corresponde ao nmero de valores independentes
necessrios para comput-las. Os graus de liberdade para as somas so as
seguintes
SSY =SS 0+ SSA+ SSE
ra=1+(a1)+ a(r 1)

4.22
4.23

A soma SSY consiste em uma soma de termos a x r, todos os quais podem


ser escolhidos independentemente. Este, portanto, tem a x r graus de
liberdade. A soma SS0 consiste em um nico termo 2 que repetida a x r
vezes. Uma vez um valor para foi escolhido, SS0 pode ser computada.
Assim, SS0 tem um grau de liberdade
A soma SSA contm uma soma de um termo j2 mas apenas a-1 delas so
independente a soma de j zero. Portanto, SSA tem um a-1 graus de
liberdade.
A soma SSE consiste em a x r termos de erro, dos quais apenas a(r-1)
podem ser independentemente escolhidos. Isto porque os r erros
correspondente a r repeties de cada experimento devem somar zero.
Assim, somente r-1 erros em cada um dos experimentos so
independentes. Observe que os graus de liberdade dos dois lados das
equaes anteriores tambm se somam. Isso verifica se os graus de
liberdade foram corretamente atribudos.
O Teste F pode ser usado para verificar se SSA significativamente maior
que SSE. Assumindo que os erros so normalmente distribudos, SSE e SSA
tm distribuies Qui-quadrado. A relao (SSA/gl A)/(SSE/gle), onde glA =
a-1 e gle = a(r-1) so graus de liberdade (gl) para SSA e SSE,
respectivamente, tem uma distribuio F com numerador glA e gle graus
de liberdade no denominador. Se a proporo calculada maior do que o
quantil F[1-, glA, gle] obtido a partir da tabela de quantis das variveis F,
SSA considerado significativamente maior que SSE. A quantidade
SSA/glA chamado de quadrado mdio de A (MSA). De forma similar,
Avaliao de Desempenho de Sistemas

101

SSE/gle chamado de quadrado mdio dos erros (MSE). Se a relao


calculado MSA/MSE maior do que o valor lido da tabela de quantis da
varivel F, o fator assumido para explicar uma frao significativa da
variao. Um arranjo tabular conveniente para realizar o teste F
mostrado na Tabela 4.14.
Tabela 4.14 - Tabela ANOVA para experimentos de um fator
Componente
y
..
y-.
A
e

Suma
Quadrados
yij2

dePercentual
Variao

SS0 = ar2
SST=SSY-SS0 100

deGraus
de
Quadrado da Mdia F Calculado F Tabelado
Liberdade
ar
1
ar-1

SSA = rj2
100(SSA/SST) a-1
SSE=SST-SSA 100(SSE/SST) a(r-1)

MSA = SSA/(a-1) MSA/MSE F[1-,a-1,a(r-1)]


MSE = SSE/[a(r-1)]

se = MSE1/2

Exemplo 4.8 - O ANOVA para o estudo de comparao Cdigo Tamanho do Exemplo 4.5
mostrada na Tabela 4.15. Da tabela, vemos que o valor de F calculado menor que o da
tabela e, portanto, mais uma vez conclumos que a diferena observada nos tamanhos
dos cdigos principalmente devido a erros experimentais e no a qualquer diferena
significativa entre os processadores

Tabela 4.15 - Tabela ANOVA para o Estudo de Comparao Cdigo Tamanho


Soma
dePercentual Graus
deQuadrado
Componente
F-Calculado F-Tabelado
Quadrados de Variao Liberdade da Mdia
y
633.639,00
..
528.281,69
y-..
105.357,31 100,0
14
A
10992.13
10,4
2
5.496,1
0,7
2,8
e
94.365,20 89,6
12
7.863,8
se = MSE1/2 = 7.863,771/2 = 88,68

4.8. Experimentos com 2k fatores


Um projeto experimental 2k fatores utilizado para determinar o efeito de
k fatores, cada um dos quais tem duas alternativas ou nveis. Esta classe
de desenho fatorial merece discusso especial pois fcil de analisar e
ajuda a ordenar os fatores em ordem de impacto. No incio de um estudo
de desempenho, o nmero de fatores e seus nveis geralmente so
grandes. Um projeto fatorial completo com um nmero to grande de
fatores e nveis no pode ser a melhor utilizao dos esforos disponveis.
O primeiro passo deve ser o de reduzir o nmero de fatores e escolher
aqueles fatores que tm impacto significativo sobre o desempenho.
Avaliao de Desempenho de Sistemas

102

Muitas vezes, o efeito de um fator unidirecional, ou seja, o desempenho


de forma contnua diminui ou aumenta continuamente quando o fator
varia do mnimo ao mximo. Por exemplo, o desempenho dever melhorar
quando o tamanho da memria aumentado ou quando o nmero de
unidades de disco aumentado. Em tais casos, podemos comear a
experimentar, o nvel mnimo e o mximo do fator. Isso nos ajudar a
decidir se a diferena no desempenho significativa o suficiente para
justificar uma anlise pormenorizada.
A fim de explicar os conceitos de designs 2 k, til comear com um caso
simples de apenas dois fatores (k = 2). Este caso especial apresentado
nas sees seguintes. Aps o desenvolvimento deste caso, sero
generalizados os conceitos para um nmero maior de fatores.
4.9. 22 Fatoriais
Um projeto experimental 22 um caso especial de um projeto 2k fatorial
com k = 2. Neste caso, h dois fatores e dois nveis cada. Tal projeto pode
ser facilmente analisado utilizando um modelo de regresso, conforme
mostrado pelo seguinte exemplo.

Exemplo 4.9 - Considere o problema de estudar o impacto do tamanho da memria e


tamanho do cache no desempenho de uma estao de trabalho sendo projetada. Dois
nveis de cada um desses dois fatores so escolhidos para a simulao inicial. O
desempenho da estao de trabalho em milhes de instrues por segundo (MIPS)
listada na Tabela 4.16.

Tabela 4.16 - Desempenho em MIPS


Tamanho do Cache Tamanho da Memria
(kB)
4 GB
1
15
2
25

Tamanho da Memria
16 GB
45
75

Seja definir duas variveis xA e xB da seguinte forma:


xA = -1, se 4 GB de memri
xA = +1, se 16 GB de memri
xB = -1, se 1 KB de cache
xB = +1, se 2 KB de cache
O desempenho em MIPS y agora pode ser estimado a partir de x A e xB usando um
modelo de regresso no-linear da forma:
y = q0 + qA xA + qB xB + qAB xA xB
Substituindo os quatro observaes no modelo, temos as seguintes quatro equaes:
15 = q0 - qA - qB + qA
Avaliao de Desempenho de Sistemas

103

45 = q0 + qA - qB - qA
25 = q0 - qA + qB + qA
75 = q0 + qA + qB + qAB
Estas quatro equaes podem ser resolvidas para as quatro incgnitas. A equao de
regresso :
y = 40 + 20 xA + 10 xB + 5 xA xB
O resultado interpretado da seguinte forma. O desempenho mdio de 40 MIPS, o
efeito de memria de 20 MIPS, o efeito de memria cache de 10 MIPS e da interao
entre a memria e o cache representa 5 MIPS.

4.9.1. Clculo dos Efeitos


Em geral, todo o projeto 22 pode ser analisado usando o mtodo do
Exemplo 4.9. No caso geral, suponha que y 1, y2, y3 e y4 representam as
quatro respostas observadas. A correspondncia entre os nveis do fator e
as respostas mostrada na Tabela 4.17.

Tabela 4.17 - Anlise do delineamento 22


Experimento A B y
1
-1 -1 y1
2

-1

y2

-1

y3

y4

O modelo para um projeto de 22 : y = q0 + qA xA + qB xB qAB xA xB


Substituindo os quatro observaes no modelo, temos:
y1 = q0 - qA - qB + qA
y2 = q0 + qA - qB - qA
y3 = q0 - qA + qB - qA
y4 = q0 + qA + qB + qAB
Resolvendo essas equaes para qi temos:
Avaliao de Desempenho de Sistemas

104

q0 = 1/4( y1 + y2 + y3 + y4
qA = 1/4(-y1 + y2 - y3 + y4
qB = 1/4(-y1 - y2 + y3 + y4
qAB = 1/4( y1 - y2 - y3 + y4 )
Note que as expresses para qA, qB, e qAB so combinaes lineares das
respostas de tal forma que a soma dos coeficientes zero. Tais expresses
so chamadas de contrastes.
Notar tambm que os coeficientes de y i na equao para qA so idnticos
aos nveis de A listadas na Tabela 4.14. Assim, q A pode ser obtido
multiplicando as colunas A e y na tabela. Isto tambm verdade para q B e
qAB, o que pode ser obtido pela multiplicao das respectivas colunas de
nvel pela coluna de resposta. Estas observaes leva-nos ao mtodo de
tabela de sinal para efeitos de clculo, que descrito a seguir.
4.9.2. Mtodo de Tabela para Calcular os Efeitos Sinal
Para um projeto de 22, os efeitos podem ser facilmente calculado atravs
da preparao de uma matriz de sinal 44, como mostrado na Tabela
4.18.
Tabela 4.18 - Mtodo da Tabela de Sinais para o Clculo dos Efeitos de Projetos 22
I
A B AB y
1
-1 -1 1
15
1
1 -1 -1 45
1
-1 1 -1 25
1
1 1 1
75
160 80 40 20 Total
40 20 10 5
Total/4
A primeira coluna da matriz rotulada I e constituda por 1s. As
prximas duas colunas, A e B, contm basicamente todas as combinaes
possveis de -1 e 1. A quarta coluna, rotulada AB, o produto das entradas
das colunas A e B. As quatro observaes so listadas no vetor coluna
desta matriz. O vetor coluna rotulado por y consiste na resposta
correspondente aos nveis de fator listados nas colunas A e B.
O prximo passo multiplicar as entradas na coluna I por aqueles da
coluna y e colocar a soma em coluna I. As entradas na coluna A so agora
Avaliao de Desempenho de Sistemas

105

multiplicado por aqueles da coluna y e a soma contabilizado em coluna


A. Esta operao da multiplicao da coluna repetida para as outras
duas colunas da matriz.
Os valores em cada coluna so divididas por 4 para dar os coeficientes
correspondentes do modelo de regresso. Geralmente, 1 no est
explicitamente escrito nas entradas da matriz. O sinal de mais ou menos
suficiente para denotar 1 ou -1, respectivamente.
4.9.3. Atribuio da Variao
A importncia de um fator medida pela proporo da variao total na
resposta que explicada pelo fator. Assim, se dois fatores explicam 90 e
5% da variao da resposta, o segundo fator pode ser considerado sem
importncia em muitas situaes prticas.
A variao da amostra de y pode ser calculada como segue: s e2 = (yi-)2/
(22-1)
Aqui, denota a mdia de respostas de todos os quatro experimentos. O
numerador do lado direito da equao acima chamado a variao total
de y ou Soma dos Quadrados Total (SST):
SST = (yi-)2
Para um projeto de 22, a variao pode ser dividida em trs partes:
SST = 22qA2 + 22qB2 + 22qAB2
Antes de apresentar uma derivao dessa equao, til compreender o
seu significado. As trs partes do lado direito representam a parcela da
variao total explicada pelo efeito de A, B e a interao AB,
respectivamente. Assim, 22qA2 a parte da SST que explicada pelo fator
A. Chama-se a soma dos quadrados devido a A e denotado como SSA.
Da mesma forma, SSB 22qB2 e SSAB (devido interao AB) 2 2qAB2.
Assim,
SST = SSA + SSB + SSAB
Estas partes podem ser expressas como uma frao, por exemplo,
Frao da variao explicada por A = SSA/SST, expressa em percentagem,
essa frao fornece uma maneira fcil de avaliar a importncia do fator A.
Os fatores que apresentam uma elevada percentagem de variao so
Avaliao de Desempenho de Sistemas

106

considerados importantes. Deve ser salientado que a variao diferente


de varincia. Assim, um fator que explica 60% da variao pode ou no
pode explicar 60% da varincia total de y. A percentagem de varincia
explicada bastante difcil de calcular. O percentual de variao, por outro
lado, fcil de computar e fcil de explicar para os tomadores de deciso.
A derivao da Equao para SST segue agora.

Derivao 4.1. O modelo utilizado em um projeto 22


2

y i=q 0 +q A x Ai +q B x Bi+ q AB x AiBi ,i [1,2 ]

4.24

As colunas xA, xB e xAxB da matriz de design na Tabela 4.18 tem as seguintes propriedades:
1. A soma das entradas em cada coluna zero:

x Ai=0

x Bi=0

2. A soma dos quadrados de entradas em cada coluna 4:


x Ai x Bi=4 .

x Ai x Bi=0

x 2Ai=4

x 2Bi=4

.
e

3. As colunas so ortogonais uma vez que o produto interno de quaisquer duas colunas
zero: x Ai x Bi=0 , x Ai ( x Ai x Bi)=0 e x Bi ( x Ai x Bi )=0 .
Essas propriedades nos permitem calcular a variao total da seguinte forma:
Mdia da amostra:
1
1
y i= (q 0 +q A x Ai +q B x Bi + q AB x AiBi)

4
4
1
1
1
1
y = q 0 + q A x Ai + q B x Bi + q AB x AiBi=q0
4
4
4
4
y =

4.25
4.26

Variao Total:
SST = ( y i y )2= (q 0+ q A x Ai +q B x Bi+ q AB x Ai x Bi y )

4.27

SST = (q A x Ai ) + (q B x Bi) + (q AB x Ai x Bi )2+termos do produto

4.28

SST =q A x Ai +q B x Bi+ q AB x Ai x Bi

4.29

SST =4 q 2A + 4 q 2B +4 q2AB

4.30

Os termos dos produtos cruzados das equaes precedentes so zero devido ortogonalidade
das colunas.

Avaliao de Desempenho de Sistemas

107

Exemplo 4.10 - No caso do estudo da memria cache


= 1/4(15+55+25+75) = 40
SST = (yi-)2 = (252 + 152 + 152 + 352) = 2100 ou
SST = 4202 + 4102 + 452 = 2100
Assim, a variao total de 2100, dos quais 1.600 (76%) podem ser atribudas
memria, 400 (19%) podem ser atribudos cache, e apenas 100 (5%) podem ser
atribudas interao.
A porcentagem de variao ajuda o pesquisador decidir se ou no de valor para
investigar um fator ou interao. Por exemplo, no estudo de memria cache, a variao
de 5% devido interao parece insignificante. O primeiro fator a ser mais aprofundado
o tamanho da memria, o que explica 76% da variao. O cache menos importante
porque explica apenas 19% da variao.

Exemplo 4.11 - Duas redes de memria de interconexo chamada Omega e Crossbar


foram comparados utilizando simulao. Dois diferentes padres de referncia de
memria de endereo chamada Aleatria e Matrix foram usados. Como o nome indica o
padro de referncia endereos aleatrios da memria com uma probabilidade uniforme
de referncia. O segundo modelo simulou um problema de multiplicao de matrizes em
que cada processador (de um sistema multiprocessador) est fazendo uma parte da
multiplicao. Para manter a anlise simples, muitos fatores que eram conhecidos por
afetar o desempenho das redes de interconexo foram mantidos fixos em um nvel
como segue:

1. Nmero de processadores foi fixado em 1


2. Solicitaes em fila em blocos e no por buffe
3. Comutao de circuitos foi usado em vez de comutao de pacote
4. Arbitragem aleatria foi usada em vez de round robi
5. Interleaving infinito de memria foi usada de modo que no havia conteno no
banco de memria
Um planejamento 22 fatorial foi utilizado. As atribuies dos smbolos mostrado na
Tabela 4.19. Trs diferentes mtricas de desempenho foram calculadas utilizando
simulao: vazo mdia (T), Tempo de trnsito de 90% em ciclos (N) e tempo mdio de
resposta (R). O desempenho medido mostrado na Tabela 4.20. Os efeitos, calculado
usando o mtodo de tabela de sinais, so apresentados na Tabela 4.21. A tabela
tambm contm porcentagem de variao explicada.

Tabela 4.19 - Fatores utilizados no estudo da Rede de Interconexo


Smbolo
Fator
Nvel -1
Nvel +1
A
Tipo de Rede
Crossbar
Omega
B
Padro de Endereo Utilizado
Aleatrio
Matrix
Tabela 4.20 - Respostas medidas no Estudo da Rede de Interconexo
Resposta
A B
T
N R
-1 -1 0.6041 3 1.655
1 -1 0.4220 5 2.378
-1 1 0.7922 2 1.262
Avaliao de Desempenho de Sistemas

108

0.4717

4 2.190

Tabela 4.21 - Efeitos mdios para o Estudo da Rede de Interconexo


Estimativa da Mdia
Variao Explicda (%)
Parmetros
T
N
R
T
N
R
q0
0.5725
3.5
1.871
qA

0.0595

-0.5

-0.145

17.2

20

10.9

qB

-0.1257

1.0

0.413

77.0

80

87.8

qAB

-0.0346

0.0

0.051

5.8

1.3

Os resultados so interpretados da seguinte forma:

A vazo mdia de 0,5725. O rendimento em grande parte afetada pelo


padro de referncia, que faz uma diferena de 0,1257 e, portanto, explica 77%
da sua variao. O tipo de rede contribui 0,0595 para o throughput. A Rede
Omega muito superior mdia, e a Rede Crossbar muito inferior mdia.
Assim, a diferena lquida entre os dois tipos de redes 0,119. A escolha da rede
afetada pelo padro de endereo uma vez que existe uma pequena interao.
Dependendo do padro de endereo e combinao de rede, o rendimento pode
subir ou descer por 0,0346.
O tempo de trnsito de 90% tambm afetado principalmente pelo padro de
endereo. Como qA negativo, o tempo de trnsito maior para A = -1 ou Rede
Crossbar. Isso se aplica tanto padres de endereo, pois no h interao entre o
padro de endereo e o tipo de rede.
O tempo de resposta tambm depende principalmente do padro de endereo. A
interao entre o tipo de padro e da rede baixa.

Assim, percebe-se que todas as trs mtricas so mais afetadas pelos


padres de endereo do que pelo tipo de rede. Isso ocorre porque os
padres de endereo escolhidos so muito diferentes.
4.10. Experimento Fatorial 2k Geral
Um projeto experimental 2k utilizado para determinar o efeito de k
fatores, cada um dos quais tem duas alternativas ou nveis. Ns j
discutimos o caso especial de dois fatores (k = 2) nas duas ltimas sees.
Agora vamos generalizar a anlise para mais de dois fatores.
As tcnicas de anlise desenvolvidas at agora para projetos 2 2 podem ser
estendidas para um projeto de 2 k. Dados k fatores em dois nveis cada,
so obrigatrios um total de 2k experimentos. A anlise produz 2k efeitos.
Estes incluem os k efeitos principais, C k,2 interaes de dois fatores, Ck,3
interaes de trs fatores, e assim por diante. O mtodo de tabela de sinal
para analisar os resultados e alocar a variao tambm vlido. Ser
ilustrado com um exemplo.

Avaliao de Desempenho de Sistemas

109

Exemplo 4.12 - Para projetar uma mquina LISP, os trs fatores que precisam ser
estudadas so: tamanho do cache, tamanho de memria e se um ou dois processadores
sero usados. Os trs fatores e suas atribuies de nvel so mostrados na Tabela 4.22.
O projeto 23 e do desempenho medido em MIPS mostrada na Tabela 4.23.

Tabela 4.22 - Fatores e Nveis no Exemplo 4.12


Fator
Nvel -1
Nvel +1
Tamanho da memria, A
4 GB
16 GB
Tamanho do cache, B
1 KB
2 KB
Nmero de CPU, C
1
2

Tabela 4.23 - Resultados de uma experincia 23


4 GB
Tamanho do Cache
(KB)
1 CPU 2 CPU's
1
14
46
2
10
50

16 GB
1 CPU
22
34

2 CPU's
58
86

Para analisar o experimento, foi preparada uma tabela de sinais como mostrado na
Tabela 4.24. Como mostrado na ltima linha desta tabela, os efeitos de memria cache e
os processadores so qA = 10, qB = 5, e qC = 20, respectivamente. As trs interaes de
dois fatores so qAB = 5, qAC = 2, e qBC = 3. O qABC interao de trs fatores 1.

Tabela 4.24 - Um exemplo de Tabela Sinais


A A B AB
I
A B C
y
B C C C
1 -1 -1 -1 1 1 1 -1 14
1 1 -1 -1 -1 -1 1 1
22
1 -1 1 -1 -1 1 -1 1
10
1 1 1 -1 1 -1 -1 -1 34
1 -1 -1 1 1 -1 -1 1
46
1 1 -1 1 -1 1 -1 -1 58
1 -1 1 1 -1 -1 1 -1 50
1 1 1 1 1 1 1 1
86
320 80 40 160 40 16 24 9
Total
40 10 5 20 5 2 3 1
Total/8
A parcela da variao explicada por vrios fatores e interaes so proporcionais ao
quadrado dos efeitos. A SST pode ser calculado por meio dos efeitos da seguinte forma:
SST = 23(qA2 + qB2 + qC2 + qAB2 + qAC2 + qBC2 + qABC2)
SST = 8 (102 + 52 + 202 + 52 + 22 + 32 + 12)
SST = 800 + 200 + 3200 + 200 + 32 + 72 + 8 = 4512

Avaliao de Desempenho de Sistemas

110

A parcela da variao explicada pelos sete efeitos so 800/4512 (18%), 200/4512 (4%),
3200/4512 (71%), 200/4512 (4%), 32/4512 (1%), 72/4512 (2%) e 8 / 4512 (0%),
respectivamente.

4.11.Exerccios
1. Demonstre que (yi-ym) 2 = (i-ym)-(yi-i)2
2. O desempenho de um sistema que est sendo projetado depende dos seguintes
trs fatores:
a) CPU tipo: Intel, AMD, Apple
b) Tipo de sistema operacional: Windows, Linux, Unix
c) Tipo de unidade de disco: A, B
3. Quantos experimentos so necessrias para analisar o desempenho se
a) H interao significativa entre os fatores
b) No h interao entre os fatores
c) As interaes so pequenas comparadas com os efeitos principais
4. Analise o desenho 23 mostrado na Tabela 4.25.
a) Quantifique os efeitos principais e as interaes
b) Quantifique as porcentagens de variao explicada
c) Classificaque as variveis na ordem decrescente de importncia

Tabela 4.25 - Um projeto 23


A1
A2
C1

C2 C1

C2

B1 100 15 120 10
B2 40

30 20

50

Avaliao de Desempenho de Sistemas

111

5. Referncias
Jain, R. The Art of Computer Systems Performance Analysis: Techniques for
Experimental Design, Measurement, Simulation, and Modeling. WileyInterscience, 1991.
Menasc, Daniel A.; Almeida, Virglio A. F. Planejamento de Capacidade
para Servios na Web: Mtricas, modelos e mtodos. Rio de Janeiro:
Campus, 2003.
HINES, W. W. et al. Estatstica Aplicada e Probabilidade para Engenheiros. LTC, 2003.

PRADO, D. Teoria das Filas e da Simulao. 2 ed. IDNG, 2004.


LAW A. M. Simulation Modeling and Analysis. Pearson Education, 2006.

Avaliao de Desempenho de Sistemas

112