Índices de carga e de desempenho ssc-642 sistemas computacionais distribuÍdos
TRANSCRIPT
ÍNDICES DE CARGA E DE DESEMPENHO SSC-642 SISTEMAS COMPUTACIONAIS DISTRIBUÍDOS
UNIVERSIDADE DE SÃO PAULO
GUILHERME JABUR ROSSITI (nUSP
6813237)
JAMES BRUNO PESCAROLI LOPES (nUSP
6766364)
PAULO CÉSAR BATISTA AUDI (nUSP
6906352)
ÍNDICE
1. INTRODUÇÃO
2. ÍNDICE DE CARGA EM SISTEMAS DISTRIBUÍDOS
3. DIFERENTES TIPOS DE ÍNCIDE DE CARGA
4. ÍNDICE DE DESEMPENHO
5. REFERÊNCIAS
SISTEMAS DISTRIBUÍDOS
INTRODUÇÃO
DEFINIÇÕES DE SISTEMAS DISTRIBUÍDOS:
“Grupo de computadores com capacidade de processamento autônomo, interconectados por uma rede.”
“Compartilhamento de recursos e informações.”
“Uma coleção de elementos de processamento, fisicamente distribuídos, conectados por uma rede de comunicação e utilizada com objetivos específicos.”
ÍNDICE DE CARGA
INTRODUÇÃO
DEFINIÇÃO DE ÍNDICE DE CARGA:
Variável numérica positiva destinada a quantificar a condição de carga de uma máquina num determinado instante, ou num passado recente, dependendo da frequência de atualização da informação.
ÍNDICE DE CARGA
INTRODUÇÃO
Quanto maior for o uso de um certo recurso do sistema, maior será o valor de índice de carga.
Índices de Carga podem ser classificados em dois grupos: simples ou compostos.
ÍNDICE DE CARGA
INTRODUÇÃO
CARACTERÍSTICAS IMPORTANTES:
1. Deve ter uma relação direta com a métrica utilizada para medir o desempenho das aplicações;
2. Deve gerar pouca sobrecarga na coleta de informações;
3. Não deve ser afetado com intensidade por flutuações nas medições;
4. Deve servir para comparar a carga de diferentes máquinas (sistemas heterogêneos).
MOTIVAÇÃO
ÍNDICE DE CARGA EM SISTEMAS DISTRIBUÍDOS
Exploração da existência de recursos computacionais ociosos no sistema.
Problemas de grande porte e complexos podem ser resolvidos de forma eficiente, a um custo relativamente baixo.
Escalonamento global deve decidir qual computador está mais capacitado a atender às necessidades de certo processo, compartilhando e distribuindo a carga de trabalho entre as máquinas (algoritmos de balanceamento de carga).
DIFICULDADES
ÍNDICE DE CARGA EM SISTEMAS DISTRIBUÍDOS
O custo para obter os índices de carga não devem interferir no desempenho do sistema, deve gerar uma sobrecarga mínima no sistema.
A heterogeneidade arquitetural e de configuração das plataformas distribuídas.
Unidade utilizada para medir a carga de diferentes recursos.
Existência de limite superior ou inferior para determinada carga.
DIFICULDADE
ÍNDICE DE CARGA EM SISTEMAS DISTRIBUÍDOS
Exemplo: Considerando dois computadores:
Computador 1 (2 processos de baixa ocupação na fila); Computador 2 (1 processo que ocupa 99% da CPU).
Em um índice de carga baseado no comprimento de fila de processos na CPU, o Computador 1 tem índice igual a 2 e o Computador 2 tem índice igual a 1.
De acordo com o algoritmo de comprimento de fila, o segundo computador irá receber o processo iniciado, apesar de não ter recursos disponíveis. Isso significa que o Computador 2 está menos sobrecarregado que o 1?
DIFERENTES TIPOS DE ÍNDICES DE CARGA
-Índices de carga de CPU
-Índices de carga de disco
-Índices de carga de memória
-Índices de carga de rede
ÍNDICES DE CARGA DE CPU:
-Porcentagem de utilização da CPU:
Em sistemas UNIX existe uma constante que representa a potência de processamento.
Três tipos de dados podem ser conseguidos de maneira relativamente simples: utilização, média de carga e consumo da CPU.
ÍNDICES DE CARGA DE CPU:
No UNIX:
Comando vmstat : mostra os tempos gastos pela CPU com os processos de usuário, sistema e ociosos.
Comando sar –u : mostra os tempos gastos com código de usuário, código do sistema e ocioso.
ÍNDICES DE CARGA DE CPU:
Exemplo de comando vmstat:
ÍNDICES DE CARGA DE CPU:
Tamanho médio da fila de processos:
Média do número de processos que estão executando em um determinado tempo.
Esta medida pode ser obtida através do comando uptime
ÍNDICES DE CARGA DE DISCO:
Disco: pode se tornar um gargalo do sistema.
Algumas informações que podem ser utilizadas como índices de carga podem ser obtidas através do comando iostat.
Este comando permite monitorar o processamento do disco
ÍNDICES DE CARGA DE DISCO:
Exemplo:
Volumes de disco são apresentados em termos de leitura e escrita por segundo
ÍNDICES DE CARGA DE MEMÓRIA:
Existem basicamente dois números que quantificam a quantidade de memória ativa:
- Tamanho total de memória virtual.
- Taxa de paginação.
ÍNDICES DE CARGA DE MEMÓRIA:
Pode se obter um índice de carga para ilustrar a quantidade de memória utilizada ou a quantidade de memória existente através de informações obtidas no arquivo /proc/meminfo:
INTRODUÇÃO
ÍNDICES DE CARGA DE REDE
Assim como acontece com os índices de carga de CPU,
DISCO e MEMÓRIA, existem diversos tipos de índices de
caga de REDE, podendo escolher o mais apropriado
para analisar o desempenho de sua aplicação.
ÍNDICES MAIS RELEVANTES
ÍNDICES DE CARGA DE REDE
Quantidade de dados recebidos e transmitidos por segundo
Índice de carga quantitativo, que caracteriza os acessos a rede de comunicação
Número de Colisões
Quanto maior o numero de colisões, mais congestionada esta a rede e, com isso, maior o índice de carga
ÍNDICES MAIS RELEVANTES
ÍNDICES DE CARGA DE REDE
Taxa de transferência de dados
Quanto maior a taxa de transferência de dados, mais congestionada esta a rede, maior o índice de carga
Taxa de erros
Quanto maior a quantidade de erros na rede, maior o índice de carga
MOTIVAÇÃO
ÍNDICES DE DESEMPENHO
É o desempenho esperado de um sistema
computacional, composto pelos quatro principais
recursos da maquina (Processador, Disco, Memória e
Rede) , cada qual com seu peso especifico para cada
aplicação, obtendo:
Obtido através de benchmarks específicos para cada indice de carga
Índice memória
Índice CPU
…
COMO OBTER ?
ÍNDICES DE DESEMPENHO
Os pesos de cada índice de carga são dados de acordo com a necessidade da aplicação, se é uma aplicação com uso maior de CPU ou memória, por exemplo
Ocorre a normalização dos índices para uma determinada escala para que possam ser comparados e formar o Índice de Desempenho
O ÍNDICE DE CARGA E DESEMPENHO
DÚVIDAS ?