Dynamic Voltage Scaling in Multitier Web Servers with End-to-End Delay Control



Documentos relacionados
Energy-Efficient Real-Time Heterogeneous Server Clusters

Victor Emanuel F. Carvalho Sistemas de Tempo Real Prof. Julius

Fundamentos de Sistemas Operacionais

Avaliação de Desempenho de Sistemas Discretos

Fundamentos de Sistemas Operacionais

SISTEMAS DISTRIBUÍDOS

Equivalência de Fluxos e Modelagem Hierárquica. Profa. Jussara M. Almeida 1 o Semestre de 2014

Sistemas Operacionais. Gerência de Processador

Sistemas Operacionais Abertos. Prof. MSc. André Yoshimi Kusumoto

Análise de Desempenho de Sistemas Distribuídos _ NOTAS DE AULA _ Prof. Tiago Garcia de Senna Carneiro DECOM/UFOP

Estatística e Modelos Probabilísticos - COE241

Processamento Digital de Sinais. Conversão A/D e D/A. Prof. Dr. Carlos Alberto Ynoguti

Modelagem e Análise de Sistemas - COS767

Modelagem Analítica. Profa. Jussara M. Almeida 1 o Semestre de 2011

Hardware: Componentes Básicos. Sistema de Computador Pessoal. Anatomia de um Teclado. Estrutura do Computador. Arquitetura e Organização

Sistemas Operacionais. Prof. André Y. Kusumoto

Notas da Aula 10 - Fundamentos de Sistemas Operacionais

Sistemas Operacionais. Escalonamento de processos

Estatística e Modelos Probabilísticos - COE241

Estatística e Modelos Probabilísticos - COE241

Modelos de Redes de Filas com Uma Classe (Análise de Valores Médios) Profa. Jussara M. Almeida 2 o Semestre de 2011

Sistemas Operacionais de Tempo Real. Prof. Andre Luis Meneses Silva

Load Balancing and Unbalancing for Power and Performance in Cluster-Based Systems

Como modelar o comportamento de um sistema? MAB-515

Modelos de Redes de Filas com Uma Classe (Análise de Valores Médios) Profa. Jussara M. Almeida 1 o Semestre de 2014

A subcamada de controle de acesso ao meio

AULA 07 Distribuições Discretas de Probabilidade

Notas da Aula 11 - Fundamentos de Sistemas Operacionais

Gerência de recursos - escalonamento global. GERÊNCIA DE RECURSOS Escalonamento Global. Gerência de recursos - escalonamento global

Análise e Modelagem de Desempenho de Sistemas de Computação. Profa. Jussara M. Almeida 1 o Semestre de 2014

Título da Apresentação

PLANEJAMENTO DE TRANSPORTES TT049

Processos Estocásticos aplicados à Sistemas Computacionais

6 ESCALONAMENTO DE CPU

FACULDADE DE CIÊNCIAS E TECNOLOGIA. Redes de Telecomunicações (2006/2007)

Escalonamento (Tarefas Esporádicas)

23/05/12. Consulta distribuída. Consulta distribuída. Objetivos do processamento de consultas distribuídas

Conceitos Básicos de Planejamento

SISTEMAS OPERACIONAIS. 3ª. Lista de Exercícios

Estatística e Modelos Probabilísticos - COE241

Escalonamento de Processos Uniprocessador

EEL711 Processamento de Sinais. Introdução

Escalonamento de Processos. Estratégia de atribuição do Processador aos Processos

Avaliação e Desempenho Aula 18

Avaliação e Desempenho Aula 1 - Simulação

Gerência de Recursos. Gerência do Processador

UFRJ IM - DCC. Sistemas Operacionais I. Unidade III Memória Primária. 29/04/2014 Prof. Valeria M. Bastos

Gerência de recursos - escalonamento global. GERÊNCIA DE RECURSOS Escalonamento Global. Gerência de recursos - escalonamento global

ARQUITETURA DE COMPUTADORES

Hierarquia de Memória

Sistemas Distribuídos. Capítulo 6 - Aula 10

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES INTRODUÇÃO AO PARALELISMO: PROCESSADORES SUPERESCALARES. Prof. Dr. Daniel Caetano

PARTE I - FUNDAMENTOS DE PROJETOS DE COMPUTADORES ARQUITETURA DE COMPUTADORES ANTONIO RAMOS DE CARVALHO JÚNIOR

Conceitos de Análise de Desempenho

The future is parallel but it may not be easy

ENGENHARIA DE SOFTWARE

Abordagens de Escalonamento

Escalonamento do CPU

Análise de Valores Limites de Desempenho. Profa. Jussara M. Almeida 1 o Semestre de 2014

Introdução aos Sistemas de Tempo Real

1331 Velocidade do som em líquidos Velocidade de fase e de grupo

Índice. Escolha de um Computador

PROCESSADORES SUPERESCALARES FELIPE G. TORRES

Sistemas Operacionais

Arquitecturas de Software Enunciado de Projecto

Introdução. Uso do disco Vantagens Desvantagens Baixo custo, facilidade de manutenção do software e do hardware, simetria e flexibilidade

Linear para o Problema de Escalonamento de Workflows em Múltiplos Provedores de Nuvem

Tecnologias de Construção de Memórias e Memórias RAM, entrelaçada e Virtual

Avaliação de Desempenho

Conceitos Básicos Processador

Conceitos Básicos dos Sistemas de Tempo Real

PIPELINE DE INSTRUÇÕES (estratégia e desempenho) Adão de Melo Neto

Sincronização. Tempo e Relógios. Sincronização de Relógios - Algoritmo de Cristian - Algoritmo de Berkeley - Network Time Protocol

Arquiteturas Paralelas

Unidade 12: Introdução ao Paralelismo:

Aula 10: Escalonamento da CPU

7 Medição da Velocidade do Vento em um Túnel de Vento utilizando Fusão de Dados: Resultados Experimentais

Arquitetura de Computadores

Executivo Cíclico. Executivo Cíclico Introdução. Sistemas de Tempo Real: Executivo Cíclico Exemplo. Executivo Cíclico Introdução

Aula 02: Tendências Tecnológicas e Custos

PCC104 Projeto e Análise de Algoritmos

Avaliação de desempenho

Avaliação de Desempenho de Sistemas DCC 074

Aula 1 Restrições temporais: origem e caracterização

Escalonamento de Tarefas

Variância dos Tempos de Resposta


Principais distribuições discretas Distribuição de Bernoulli sucesso fracasso X = 1, se sucesso X = 0, se fracasso P(X) TOTAL 1 Exemplo 5:

Sistemas de Entrada e Saída

DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS

Avaliação de Desempenho

Organização de Computadores 1

Programação Orientada a Objetos SANTOS, Rafael

Modelagem de Sistemas de Tempo Real. Sérgio Campos

Avaliação de Desempenho de Sistemas Discretos

SO: Escalonamento. Sistemas Operacionais Flavio Figueiredo (

SOP - TADS Processos. Revisão Ultima aula

Debian GNU/Linux kernel tuning para cargas extremas de I/O de disco e rede para SGBD e

Sistemas Operacionais

Transcrição:

Dynamic Voltage Scaling in Multitier Web Servers with End-to-End Delay Control Tibor Horvath and Tarek Abdelzaher and Kevin Skadron and Xue Liu Universidade Federal Fluminense Diego Passos Apresentação de Artigo 1/37

. e modelagem. Primeiro algoritmo. Segundo algoritmo.... Diego Passos Apresentação de Artigo 2/37

Diego Passos Apresentação de Artigo 3/37

Proposta e Objetivos Dois Algoritmos DVS distribuído. Uma abordagem ótima. Dentro das hipóteses adotadas. Uma abordagem aproximada. Ambas focadas em requisitos soft real time. Aplicação a Servidores Web Multitier Servidores divididos em estágios. Exemplo: Conteúdo estático. Conteúdo dinâmico. Bases de dados. Em geral, super-dimensionados. Diego Passos Apresentação de Artigo 4/37

Motivações Trabalhos Anteriores Foco em: servidores únicos; ou servidores sem hierarquia. Não Levam em Conta A soma dos atrasos de cada estágio. Que as cargas em cada estágio não são uniformes. Diego Passos Apresentação de Artigo 5/37

Características da Solução Trabalha com frequências discretas. Modelo de controle com retro-alimentação. Pode ser combinado com outras estratégias: Por exemplo, esquemas de desligamento de máquinas ociosas. Considera cada estágio como uma única máquina: Thin Pipeline. Supõe bom balanceamento de carga. Diego Passos Apresentação de Artigo 6/37

e Modelagem Diego Passos Apresentação de Artigo 7/37

Servidor Multitier Processamento Sequencial Cada estágio pode ativar tarefas no estágio seguinte. Dependendo do conteúdo. Não há paralelismo entre os estágios. Estágios entram em ação de forma sequencial. Diego Passos Apresentação de Artigo 8/37

Caracterização do Atraso D = N i D i D: atraso total do pedido. D i : atraso devido ao estágio i do servidor. D i = D CP U i Di CP U Di block I/O, por exemplo. Se D block i + D block i : atraso de processamento. : atraso de operações bloqueantes. domina o atraso total Pode-se reduzir a frequência de CPU de maneira mais agressiva. Diego Passos Apresentação de Artigo 9/37

Primeiro Algoritmo Hipótese Atraso de processamento em um estágio é uma função convexa da utilização da CPU. Em outras palavras: Quanto maior a utilização, mais acentuado é o aumento no atraso. Hipótese razoável, na prática. Procedimento Se o atraso fim-a-fim excede um limiar máximo: Aumente a frequência do estágio com maior carga. Se o atraso fim-a-fim é menor que um limiar mínimo: Reduza a frequência daquele com menor carga. Diego Passos Apresentação de Artigo 10/37

Primeiro Algoritmo: Análise Por Causa da Convexidade Aumentar a frequência do estágio mais ocupado implica a máxima redução no atraso. Reduzir a frequência do estágio menos ocupado implica o mínimo aumento no atraso. Simplicidade do Algoritmo Não é ótimo. Assume que a economia de energia é proporcional à utilização. Mas depende apenas: da utilização de cada CPU. da atraso fim-a-fim de cada pedido. Diego Passos Apresentação de Artigo 11/37

Condições de Otimalidade W 1 H(U 1 ) = W 2 H(U 2 ) = = W N H(U N ) Onde ( ) Ai λ W i = n i T i H(U i ) = (1 U i) 2 U n+1 i U i é a utilização no estágio i. λ i é a taxa de chegada de trabalho no estágio i. T i é o tempo médio de serviço do estágio i. A i e n vêm da equação: P i = A i f n i + B i Diego Passos Apresentação de Artigo 12/37

Segundo Algoritmo Versão ótima do primeiro algoritmo. Periodicamente, cada estágio anuncia sua utilização média. Também periodicamente, o primeiro estágio anuncia o atraso médio fim-a-fim D. Cada estágio: Calcula W i H(U i ) para todos os estágios. Se D > a hi L, aumenta (para a próxima disponível) a frequência do estágio com menor W i H(U i ). Se D < a lo L, reduz (para a próxima disponível) a frequência do estágio com maior W i H(U i ). L: prazo máximo. a hi e a lo : limiares (normalizados). Diego Passos Apresentação de Artigo 13/37

Segundo Algoritmo: Análise Similar ao Primeiro Quando o atraso médio é alto, prazos são perdidos. Aumenta-se a frequência de um estágio. Quando o atraso médio é baixo, recursos ficam ociosos. Reduz-se a frequência de um estágio. Diferenças Critério de escolha do estágio: Utilização x W i H(U i ). Diego Passos Apresentação de Artigo 14/37

Lidando com Múltiplas Classes Múltiplas Classes de Pedidos Diferentes prazos (L i ). Diferentes atrasos fim-a-fim (D i ). Alterações no Algoritmo Se j : D j > a hi L j, aumenta a frequência do estágio com menor W i H(U i ). Se j : D j < a lo L j, reduz a frequência do estágio com maior W i H(U i ). Diego Passos Apresentação de Artigo 15/37

Escolhendo a hi É escolhido de forma que: P (D[k + 1] > L D[k] < a hi L) r D[k + 1] e D[k] são as medidas de atraso no instante atual e no próximo. r é a taxa tolerável de perda de prazos. Diego Passos Apresentação de Artigo 16/37

Escolhendo a lo Seleção baseada no tamanho de tolerância (a hi a lo ). Evitar que o intervalo seja pequeno demais. Pode causar oscilações. Exemplo: Uma redução de frequência aumenta muito o atraso médio. O atraso cai abaixo do limiar. Novo ajuste é necessário. Diego Passos Apresentação de Artigo 17/37

Escolha do Período de Amostragem Períodos Muito Longos Reação do algoritmo é muito lenta. O sistema pode perder muitos pedidos ou desperdiçar energia. Períodos Muito Curtos Modificações são muito frequentes. Método pode se tornar instável. Conclusão Período deve ser longo o suficiente para que o último ajuste se reflita na amostra corrente. Diego Passos Apresentação de Artigo 18/37

Diego Passos Apresentação de Artigo 19/37

Cenário Hardware Laptops com processador AMD. Frequências variando de 532 MHz a 1529 MHz. Chaveamento em 100 microssegundos. Duas s de Software TPC-W. Benchmark baseado em transações Web. Servidor Apache. Primeiro estágio: conteúdo HTML estático. Segundo estágio: CGIs. Terceiro estágio: banco de dados MySQL. Diego Passos Apresentação de Artigo 20/37

Seleção de Parâmetros (1/2) Escolha de a hi Taxa tolerada de perda de prazos: 5%. Experimentalmente, foi calculada a probabilidade condicional. Optou-se pelo valor 0, 7. Diego Passos Apresentação de Artigo 21/37

Seleção de Parâmetros (2/2) Escolha de a lo Concluiu-se que 0, 3 é um intervalo suficiente. Não permite oscilações do método. Escolha específica para os processadores considerados. Escolha do Período de Amostra 200ms. Poucas requisições, considerando capacidade do sistema. Ao mesmo tempo, baixo overhead. Apenas 5 execuções por segundo. Diego Passos Apresentação de Artigo 22/37

Outras Considerações Sobre Parâmetros Período de Amostragem Em baixa carga, 200ms é muito curto. Poucos pedidos. Média não é representativa. Neste caso, período de amostragem sobe para 4 a 10 segundos. Falta de Sincronia Problema não é serio, assumindo: Utilização média e atraso médio não mudam muito rápido. No pior caso, não há consenso e dois estágios agem. Apenas aumenta o efeito do ajuste. Diego Passos Apresentação de Artigo 23/37

Diego Passos Apresentação de Artigo 24/37

Propostas Avaliadas Quatro Baseline. Sempre a maior frequência. Processador desligado quando ocioso. Independent DVS. Decisões locais, apenas. Algoritmo PAST. Feedback DVS. Algoritmo simplificado. Weighted Feedback DVS. Algoritmo ótimo. Diego Passos Apresentação de Artigo 25/37

Carga Sintética Maior parte leva 300 ms ou menos. Sem concorrência. Diego Passos Apresentação de Artigo 26/37

Perda de Prazos X Carga (1/2) No baseline, saturação começa em 450 req/min. Independent DVS: similar. Tem crescimento mais rápido para L=4. Diego Passos Apresentação de Artigo 27/37

Perda de Prazos X Carga (2/2) Saturação começa mais cedo. Mas ainda dentro da tolerância de 5%. Diego Passos Apresentação de Artigo 28/37

Consumo X Carga (1/2) Baseline economiza 100 W em relação ao pico. Diego Passos Apresentação de Artigo 29/37

Consumo X Carga (2/2) Em carga média, Feedback resulta em 30% de economia. Versão simplificada é ligeiramente pior. Em baixa carga, CPU quase sempre inativa. Em alta carga, frequências são sempre altas. Diego Passos Apresentação de Artigo 30/37

Perda de Prazos X Carga (TPC-W) Todas as políticas dentro da tolerância até 140 clientes. Com 160, apenas o baseline. Diego Passos Apresentação de Artigo 31/37

Consumo X Carga (TPC-W) Em carga média, bons resultados do Feedback. Em carga alta, Independent DVS consome menos. Mas com maior taxa de perda de prazos. Diego Passos Apresentação de Artigo 32/37

Número de Mudanças de Frequência Segundo os autores, grande variabilidade mesmo em carga constante. O que causa variabilidade? Pedidos heterogêneos? Diego Passos Apresentação de Artigo 33/37

Sensibilidade: Limiar Superior 0,7 é uma boa escolha: menor perda de prazos que os maiores. maior economia que os menores. Diego Passos Apresentação de Artigo 34/37

Sensibilidade: Limiar Inferior 0,6 (deadzone de 0,3), tem baixa perda de prazos. A partir de 0,4, boa economia. Diego Passos Apresentação de Artigo 35/37

Diego Passos Apresentação de Artigo 36/37

Experimentos O esquema proposto mantém baixa perda de prazos, com economia não trivial. A economia ótima não ocorre com utilizações balanceadas. Mas com as utilizações ponderadas. Mas o algoritmo simplificado traz bons resultados. Cerca de 30% de economia. Trabalhos Futuros Mais servidores por estágio. Incorporar controle de outros estados do sistema. Diego Passos Apresentação de Artigo 37/37