SlideShare ist ein Scribd-Unternehmen logo
1 von 49
Downloaden Sie, um offline zu lesen
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Algoritmos para economia de energia no
escalonamento de workflows em nuvens
computacionais
Elaine N. Watanabe, Pedro P. V. Campos,
Kelly R. Braghetto, Daniel M. Batista
Instituto de Matemática e Estatística
Universidade de São Paulo, São Paulo, Brasil
{elainew,pedrovc,kellyrb,batista}@ime.usp.br
Simpósio Brasileiro de Redes de Computadores e Sistemas
Distribuídos - 2014
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Roteiro
1 Motivação
2 Conceitos
3 PowerHEFTLookahead
4 HEFT-DynamicAllocationVM
5 Task Clustering
6 Experimentos
7 Conclusões
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Motivação
Data centers [BB10]: 2% do CO2 no mundo
Servidores (Google) [BH07]:
Análise de milhares de servidores durante 6 meses
CPUs operavam entre 10% a 50%
Ineficiente energeticamente
Gastos extras
Custos em 2014 [B07]:
Refrigeração e Energia elétrica(75%) > Equipamento(25%)
Uma das possíveis soluções
Computação em nuvem!
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Computação em nuvem
Máquinas virtuais (VMs)
Alto desempenho
(TOP500: posição 64
em 11/2013)
Ambiente elástico
(sob demanda)
Candidato à execução de
Workflows
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Workflows científicos
Descrição de um experimento
científico
Conjunto de tarefas interligadas
Aquisição
Processamento
Análise
Visualização
Etc.
E no contexto da nuvem?
Problema?
Dependência entre os dados
Possível solução?
Novas políticas de escalonamento!
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Objetivos
Avaliar o escalonamento de workflows em nuvens
computacionais visando à economia de energia
3 novos algoritmos de escalonamento
PowerHEFTLookahead
HEFT-DynamicAllocationVM
Task Clustering
Uso do simulador CloudSim-DVFS
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Trabalhos relacionados
Topcuoglu et al. 2002: HEFT
(Heterogeneous Earliest-Finish-Time)
Mais de mil citações no Google Acadêmico
Aksanli et al. 2012: GENSim
Estudo comparativo de eficiência energética
Simular batch jobs e service jobs
Sem suporte a VMs
Kliazovich et al. 2012: GreenCloud
Comparação entre simuladores existentes
Avaliar componentes da rede, não apenas os servidores
Não possui código aberto
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Trabalhos relacionados
Beloglazov et al. 2012: CloudSim
Eficiência energética em nuvem
CloudSim + simulações energéticas
Sem suporte a workflows
Weiwei and Deelman 2012: WorkflowSim (CloudSim)
Simulação de workflows em nuvens computacionais
considerando simulação de falhas
Sem suporte a simulações energéticas
Guérout et al. 2013: CloudSim-DVFS (CloudSim)
Suporte à simulação energética de workflows em nuvens
computacionais
Escalonadores com número de VMs fixas
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Roteiro
1 Motivação
2 Conceitos
3 PowerHEFTLookahead
4 HEFT-DynamicAllocationVM
5 Task Clustering
6 Experimentos
7 Conclusões
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
CloudSim-DVFS
Disponível em outubro/2013
Uso do DVFS (Dimensionamento dinâmico de voltagem e
frequência): De acordo com o uso de CPU, altera-se frequência
e voltagem da CPU, economizando energia
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Modelo energético
PTOT = (1 −α)PCPUOciosa +(α)PCPUCargaMaxima (1)
onde α é o uso de CPU e PCPUOciosa e PCPUCargaMaxima são as
potências da CPU a 0% e 100% de utilização, respectivamente.
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Frequências utilizadas para criação de VMs
Frequências (GHz) 0.8 1.0 1.2 1.5 1.7
CPU ociosa (W) 140 146 153 159 167
CPU carga máxima (W) 228 238 249 260 272
Tabela: Frequências da nuvem privada (Grid’5000 Reims) utilizadas por
Guérout et al. 2013 para criar a lista de VMs
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Workflows
DAG (Grafo Orientado Acíclico)
Nós: custo de computação
Arestas: custo de comunicação
(transferência de dados)
Caminhos críticos e não-críticos
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Escalonadores do CloudSim-DVFS
Performance: frequência máxima sempre
OnDemand: frequência máxima se CPU em uso e mínima
quando ociosa
Optimal: diminuir consumo energético nos caminhos não-críticos
com VMs "mais lentas"
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
HEFT: Heterogeneous Earliest Finish Time
Tarefa VM 1 VM 2 VM 3 rank(ti )
1 14,9 11,9 9,9 57,9
2 13,8 11,1 9,2 45,6
3 11,7 9,4 7,8 34,3
4 13,8 9,2 12,7 45,6
5 12,7 10,2 8,5 44,7
6 13,8 11,1 9,2 34,2
7 7,4 6 5 24,6
8 5,3 4,3 3,5 22,8
9 19,1 15,3 12,7 34,1
10 22,3 17,9 14,9 18,3
Tarefas em ordem
decrescente de rank:
1,2,4,5,3,6,9,7,8,10
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Roteiro
1 Motivação
2 Conceitos
3 PowerHEFTLookahead
4 HEFT-DynamicAllocationVM
5 Task Clustering
6 Experimentos
7 Conclusões
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
PowerHEFTLookahead
VM 1 = VM do tipo
"mais rápida"(Tipo 1)
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
PowerHEFTLookahead
Aloca a tarefa de
maior rank na VM 1
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
PowerHEFTLookahead
Simula a alocação das
demais tarefas
Qual o consumo
energético?
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
PowerHEFTLookahead
Simula a criação de
uma nova VM (Tipo 1)
Qual o consumo
energético?
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
PowerHEFTLookahead
Simula a criação de
uma nova VM (Tipo 2)
Qual o consumo
energético?
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
PowerHEFTLookahead
Simula a criação de
uma nova VM (Tipo 3)
Qual o consumo
energético?
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
PowerHEFTLookahead
Qual caso obteve o
menor consumo
energético?
É melhor criar uma
nova VM? De qual
tipo?
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Roteiro
1 Motivação
2 Conceitos
3 PowerHEFTLookahead
4 HEFT-DynamicAllocationVM
5 Task Clustering
6 Experimentos
7 Conclusões
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
HEFT-DynamicAllocationVM
VM 1 = VM do tipo
"mais rápida"(Tipo 1)
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
HEFT-DynamicAllocationVM
Aloca a tarefa de
maior rank
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
HEFT-DynamicAllocationVM
Aloca a tarefa de
maior rank
Tarefa dependente da
anterior? Pode
executar na mesma
VM
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
HEFT-DynamicAllocationVM
Tarefa paralelizável?
Aloca uma nova VM
do tipo "mais lenta"
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
HEFT-DynamicAllocationVM
Paralelize o máximo
que puder
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
HEFT-DynamicAllocationVM
Uma VM lenta vai
executar mais de uma
tarefa?
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
HEFT-DynamicAllocationVM
Troque por uma VM
mais rápida, pois pode
ser um caminho crítico
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
HEFT-DynamicAllocationVM
Faça isso para todos
os casos
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
HEFT-DynamicAllocationVM
Continue a alocação
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
HEFT-DynamicAllocationVM
Alocação final com
dependência de dados
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Roteiro
1 Motivação
2 Conceitos
3 PowerHEFTLookahead
4 HEFT-DynamicAllocationVM
5 Task Clustering
6 Experimentos
7 Conclusões
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Task Clustering
Reconhece duas VMs
"mais lentas"que vão
executar apenas uma
tarefa cada
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Task Clustering
Agrupa as tarefas em
uma única VM "mais
rápida"
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Roteiro
1 Motivação
2 Conceitos
3 PowerHEFTLookahead
4 HEFT-DynamicAllocationVM
5 Task Clustering
6 Experimentos
7 Conclusões
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Experimentos
Ambiente de Teste: o mesmo utilizado por [Guérout et al. 2013]
1 VM por host
Tipos de VMs: conforme frequências para DVFS
Escalonadores:
Performance (PERF)
DVFS: OnDemand (ONDEM) e Optimal (OPT)
PowerHEFTLookahead (POWERHEFT)
HEFT
HEFT-DynamicAllocation-VM (DAVM)
HEFT-DynamicAllocation-VM-TaskClustering (DAVM-TC)
Optimal-TaskClustering (OPT-TC)
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Figura: Exemplo da estrutura do workflow (a) Sipht (codificação de genes),
(b) Cybershake (caracterização de zonas de risco de terremotos.) e (c)
Montage (mosaico astronômico).
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Montage
Figura: Comparativo do consumo energético e makespan do DAG Montage
utilizando diferentes políticas de escalonamento de tarefas.
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Roteiro
1 Motivação
2 Conceitos
3 PowerHEFTLookahead
4 HEFT-DynamicAllocationVM
5 Task Clustering
6 Experimentos
7 Conclusões
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Conclusões
Resultados
Redução do consumo energético na maioria dos casos,
chegando até a 22.7%
Task clustering pode ser vantajoso tanto em relação
ao consumo energético quanto ao tempo de execução
Estrutura de interligação das tarefas no workflow influencia no
escalonamento
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Conclusões
Contribuições
Três novos algoritmos para escalonamento de workflows
visando a eficiência energética sem impacto significativo no
makespan
Estudo comparativo com algoritmos existentes
Dados e código abertos à comunidade
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Trabalhos futuros
Simulações
Outros ambientes de teste
Outros modelos energéticos
Uso de cargas de trabalho dinâmicas
Novas abordagens com o HEFT
Validação dos resultados em ambiente real
Possibilidades de:
Integração do WorkflowSim ao CloudSim-DVFS
Utilização de escalonadores dinâmicos ao invés de estáticos
Adição da estimativa de consumo energético de outros
componentes do data center
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Muito obrigada!
Perguntas?
elainew@ime.usp.br
Agradecimentos
FAPESP (processo número: 2011/24114-0) e CAPES
Rodrigo N. Calheiros e Tom Guérout (CloudSim-DVFS)
Weiwei Chen (WorkflowSim)
Daniel A. Cordeiro (explicação sobre o HEFT)
Disponível em:
https://github.com/pedropaulovc/CloudSim_DVFS
http://www.ime.usp.br/~elainew
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Bibliografia
L.A. Barroso e U. Hölzle. The case for energy-proportional computing.
Computer, 40(12):33–37, 2007.
Tom Guérout, Thierry Monteil, Georges Da Costa, Rodrigo
Neves Calheiros, Rajkumar Buyya e Mihai Alexandru. Energy-aware
simulation with dvfs. Simulation Modelling Practice and Theory, v.39, i.1,
p.76-91, 2013.
H. Topcuoglu, S. Hariri e Min-You Wu. Performance-effective and
low-complexity task scheduling for heterogeneous computing. IEEE
Transactions on Parallel and Distributed Systems, 13(3):260–274, 2002.
A. Beloglazov e R. Buyya. Energy Efficient Resource Management in
Virtualized Cloud Data Centers. Energy Efficient Resource Management
in Virtualized Cloud Data Centers, 826–831, 2007.
C. Belady. In the data center, power and cooling costs more than the it
equipment it supports Energy Efficient Resource Management in
Virtualized Cloud Data Centers, 2007.
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Bibliografia
S. Murugesan. Harnessing green IT: Principles and practices IT
professional, 24–33,2008.
J. Vöckler, G. Juve, E. Deelman, M. Rynge and B. Berriman
Experiences using cloud computing for a scientific workflow
application Proceedings of the 2nd international workshop on
Scientific cloud computing, 15–24,2011.
L.F. Bittencourt, E. Madeira, N.L.S. Fonseca Scheduling in hybrid
clouds Communications Magazine, IEEE, 42–47,2012.
Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões
Bibliografia
B. Aksanli, J. Venkatesh and T. Rosing Using Datacenter
Simulation to Evaluate Green Energy Integration Computer,
56–64,2012.
D. Kliazovich, P. Bouvry and S.U. Khan GreenCloud: a
packet-level simulator of energy-aware cloud computing data
centers The Journal of Supercomputing, 1263–1283,2012.
C. Weiwei and E. Deelman WorkflowSim: A toolkit for simulating
scientific workflows in distributed environments IEEE 8th
International Conference on E-Science (e-Science), 1-8,2012.

Weitere ähnliche Inhalte

Ähnlich wie Algoritmos para economia de energia no escalonamento de workflows em nuvens computacionais

Desenvolvendo aplicações Web escaláveis
Desenvolvendo aplicações Web escaláveisDesenvolvendo aplicações Web escaláveis
Desenvolvendo aplicações Web escaláveis
elliando dias
 

Ähnlich wie Algoritmos para economia de energia no escalonamento de workflows em nuvens computacionais (20)

Grails
GrailsGrails
Grails
 
Aws sao paulo summit 2015 elasti cache avancado
Aws sao paulo summit 2015   elasti cache avancadoAws sao paulo summit 2015   elasti cache avancado
Aws sao paulo summit 2015 elasti cache avancado
 
Especificação de plataforma DaaS para laboratórios de informática
Especificação de plataforma DaaS para laboratórios de informática Especificação de plataforma DaaS para laboratórios de informática
Especificação de plataforma DaaS para laboratórios de informática
 
Cakephp 2.0 - O que mudou
Cakephp 2.0 - O que mudouCakephp 2.0 - O que mudou
Cakephp 2.0 - O que mudou
 
Como criar e executar testes paralelos web usando Selenium e containers
Como criar e executar testes paralelos web usando Selenium e containersComo criar e executar testes paralelos web usando Selenium e containers
Como criar e executar testes paralelos web usando Selenium e containers
 
Desenvolvendo aplicações Web escaláveis
Desenvolvendo aplicações Web escaláveisDesenvolvendo aplicações Web escaláveis
Desenvolvendo aplicações Web escaláveis
 
Paralelize seus testes web e mobile para ter feedbacks mais rápidos
Paralelize seus testes web e mobile para ter feedbacks mais rápidosParalelize seus testes web e mobile para ter feedbacks mais rápidos
Paralelize seus testes web e mobile para ter feedbacks mais rápidos
 
Minha aplicação Java vai pra nuvem. E agora?
Minha aplicação Java vai pra nuvem. E agora?Minha aplicação Java vai pra nuvem. E agora?
Minha aplicação Java vai pra nuvem. E agora?
 
Introdução ao Nodejs
Introdução ao NodejsIntrodução ao Nodejs
Introdução ao Nodejs
 
APM Model in .NET - PT-pt
APM Model in .NET - PT-ptAPM Model in .NET - PT-pt
APM Model in .NET - PT-pt
 
Medindo e Modelando o Desempenho de Aplicações em um Ambiente Virtual
Medindo e Modelando o Desempenho de Aplicações em um Ambiente VirtualMedindo e Modelando o Desempenho de Aplicações em um Ambiente Virtual
Medindo e Modelando o Desempenho de Aplicações em um Ambiente Virtual
 
Gerenciamento de configuração com puppet
Gerenciamento de configuração com puppetGerenciamento de configuração com puppet
Gerenciamento de configuração com puppet
 
ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014ASP.NET vNext no .NET Architects Days 2014
ASP.NET vNext no .NET Architects Days 2014
 
(DevOps) Gerencia de Configuração, Puppet, Ansible e Chef uma Analise Compara...
(DevOps) Gerencia de Configuração, Puppet, Ansible e Chef uma Analise Compara...(DevOps) Gerencia de Configuração, Puppet, Ansible e Chef uma Analise Compara...
(DevOps) Gerencia de Configuração, Puppet, Ansible e Chef uma Analise Compara...
 
Lampada Php Conference Brasil 2007 Palestra
Lampada Php Conference Brasil 2007 PalestraLampada Php Conference Brasil 2007 Palestra
Lampada Php Conference Brasil 2007 Palestra
 
Paralelização de Algoritmo do Produto Escalar
Paralelização de Algoritmo do Produto EscalarParalelização de Algoritmo do Produto Escalar
Paralelização de Algoritmo do Produto Escalar
 
UM ESTUDO PARA A IMPLANTAÇÃO DE UM MODELO DE GERÊNCIA DE NUVEM HÍBRIDA UTILIZ...
UM ESTUDO PARA A IMPLANTAÇÃO DE UM MODELO DE GERÊNCIA DE NUVEM HÍBRIDA UTILIZ...UM ESTUDO PARA A IMPLANTAÇÃO DE UM MODELO DE GERÊNCIA DE NUVEM HÍBRIDA UTILIZ...
UM ESTUDO PARA A IMPLANTAÇÃO DE UM MODELO DE GERÊNCIA DE NUVEM HÍBRIDA UTILIZ...
 
Palestra de Asp.Net 5 no TDC floripa e DotnetFloripa
Palestra de Asp.Net 5 no TDC floripa e DotnetFloripaPalestra de Asp.Net 5 no TDC floripa e DotnetFloripa
Palestra de Asp.Net 5 no TDC floripa e DotnetFloripa
 
Curso de Performance and Tuning - Linux
Curso de Performance and Tuning - LinuxCurso de Performance and Tuning - Linux
Curso de Performance and Tuning - Linux
 
Aplicando processamento paralelo em instruções SQL
Aplicando processamento paralelo em instruções SQLAplicando processamento paralelo em instruções SQL
Aplicando processamento paralelo em instruções SQL
 

Mehr von Elaine Naomi

Dealing with a search engine in your application - a Solr approach for beginners
Dealing with a search engine in your application - a Solr approach for beginnersDealing with a search engine in your application - a Solr approach for beginners
Dealing with a search engine in your application - a Solr approach for beginners
Elaine Naomi
 
Um Método para Paralelização Automática de Workflows Intensivos em Dados
Um Método para Paralelização Automática de Workflows Intensivos em DadosUm Método para Paralelização Automática de Workflows Intensivos em Dados
Um Método para Paralelização Automática de Workflows Intensivos em Dados
Elaine Naomi
 

Mehr von Elaine Naomi (15)

Design de aplicações orientadas a objeto
Design de aplicações orientadas a objetoDesign de aplicações orientadas a objeto
Design de aplicações orientadas a objeto
 
Sobre code smells, refactoring e design: como SOLID pode te ajudar no dia a dia
Sobre code smells, refactoring e design: como SOLID pode te ajudar no dia a diaSobre code smells, refactoring e design: como SOLID pode te ajudar no dia a dia
Sobre code smells, refactoring e design: como SOLID pode te ajudar no dia a dia
 
Hacking Evening - Liskov Substitution Principle
Hacking Evening - Liskov Substitution PrincipleHacking Evening - Liskov Substitution Principle
Hacking Evening - Liskov Substitution Principle
 
Code Smells: o que eles dizem sobre seu código?
Code Smells: o que eles dizem sobre seu código?Code Smells: o que eles dizem sobre seu código?
Code Smells: o que eles dizem sobre seu código?
 
Guru SP: Decodificando o code review
Guru SP: Decodificando o code reviewGuru SP: Decodificando o code review
Guru SP: Decodificando o code review
 
Bootcamp de Rails - CaquiCoders Meetup
Bootcamp de Rails - CaquiCoders MeetupBootcamp de Rails - CaquiCoders Meetup
Bootcamp de Rails - CaquiCoders Meetup
 
GURU SP - Design de aplicações orientadas a objeto
GURU SP - Design de aplicações orientadas a objetoGURU SP - Design de aplicações orientadas a objeto
GURU SP - Design de aplicações orientadas a objeto
 
TDC SP 2019 - Decodificando o code review
TDC SP 2019 - Decodificando o code reviewTDC SP 2019 - Decodificando o code review
TDC SP 2019 - Decodificando o code review
 
Além da programação funcional com Elixir e Erlang
Além da programação funcional com Elixir e ErlangAlém da programação funcional com Elixir e Erlang
Além da programação funcional com Elixir e Erlang
 
Code review: o que isso diz sobre a cultura dos times de desenvolvimento?
Code review: o que isso diz sobre a cultura dos times de desenvolvimento?Code review: o que isso diz sobre a cultura dos times de desenvolvimento?
Code review: o que isso diz sobre a cultura dos times de desenvolvimento?
 
Explorando o Paralelismo em Workflows Intensivos em Dados com o Uso de Anotaç...
Explorando o Paralelismo em Workflows Intensivos em Dados com o Uso de Anotaç...Explorando o Paralelismo em Workflows Intensivos em Dados com o Uso de Anotaç...
Explorando o Paralelismo em Workflows Intensivos em Dados com o Uso de Anotaç...
 
Uso de Anotações Semânticas para Exploração de Paralelismo em Workflows Inten...
Uso de Anotações Semânticas para Exploração de Paralelismo em Workflows Inten...Uso de Anotações Semânticas para Exploração de Paralelismo em Workflows Inten...
Uso de Anotações Semânticas para Exploração de Paralelismo em Workflows Inten...
 
Dealing with a search engine in your application - a Solr approach for beginners
Dealing with a search engine in your application - a Solr approach for beginnersDealing with a search engine in your application - a Solr approach for beginners
Dealing with a search engine in your application - a Solr approach for beginners
 
Um Método para Paralelização Automática de Workflows Intensivos em Dados
Um Método para Paralelização Automática de Workflows Intensivos em DadosUm Método para Paralelização Automática de Workflows Intensivos em Dados
Um Método para Paralelização Automática de Workflows Intensivos em Dados
 
Introdução ao MongoDB
Introdução ao MongoDBIntrodução ao MongoDB
Introdução ao MongoDB
 

Kürzlich hochgeladen (6)

Planejamento do viveiro de mudas florestais
Planejamento do viveiro de mudas florestaisPlanejamento do viveiro de mudas florestais
Planejamento do viveiro de mudas florestais
 
Historia da Agricultura Agronomia 2017.pptx
Historia da Agricultura Agronomia 2017.pptxHistoria da Agricultura Agronomia 2017.pptx
Historia da Agricultura Agronomia 2017.pptx
 
Apresentação sobre o cientista linus pauling.pptx
Apresentação sobre o cientista linus pauling.pptxApresentação sobre o cientista linus pauling.pptx
Apresentação sobre o cientista linus pauling.pptx
 
NEUROCIENCIA I (1).ppt aula explicativa 1
NEUROCIENCIA I (1).ppt aula explicativa 1NEUROCIENCIA I (1).ppt aula explicativa 1
NEUROCIENCIA I (1).ppt aula explicativa 1
 
Bilhete de Identidade sobre o Tungsténio.pptx
Bilhete de Identidade sobre o Tungsténio.pptxBilhete de Identidade sobre o Tungsténio.pptx
Bilhete de Identidade sobre o Tungsténio.pptx
 
Estudo Dirigido Sistema Cardiovascular - 8°.docx
Estudo Dirigido Sistema Cardiovascular - 8°.docxEstudo Dirigido Sistema Cardiovascular - 8°.docx
Estudo Dirigido Sistema Cardiovascular - 8°.docx
 

Algoritmos para economia de energia no escalonamento de workflows em nuvens computacionais

  • 1. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Algoritmos para economia de energia no escalonamento de workflows em nuvens computacionais Elaine N. Watanabe, Pedro P. V. Campos, Kelly R. Braghetto, Daniel M. Batista Instituto de Matemática e Estatística Universidade de São Paulo, São Paulo, Brasil {elainew,pedrovc,kellyrb,batista}@ime.usp.br Simpósio Brasileiro de Redes de Computadores e Sistemas Distribuídos - 2014
  • 2. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Roteiro 1 Motivação 2 Conceitos 3 PowerHEFTLookahead 4 HEFT-DynamicAllocationVM 5 Task Clustering 6 Experimentos 7 Conclusões
  • 3. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Motivação Data centers [BB10]: 2% do CO2 no mundo Servidores (Google) [BH07]: Análise de milhares de servidores durante 6 meses CPUs operavam entre 10% a 50% Ineficiente energeticamente Gastos extras Custos em 2014 [B07]: Refrigeração e Energia elétrica(75%) > Equipamento(25%) Uma das possíveis soluções Computação em nuvem!
  • 4. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Computação em nuvem Máquinas virtuais (VMs) Alto desempenho (TOP500: posição 64 em 11/2013) Ambiente elástico (sob demanda) Candidato à execução de Workflows
  • 5. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Workflows científicos Descrição de um experimento científico Conjunto de tarefas interligadas Aquisição Processamento Análise Visualização Etc. E no contexto da nuvem? Problema? Dependência entre os dados Possível solução? Novas políticas de escalonamento!
  • 6. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Objetivos Avaliar o escalonamento de workflows em nuvens computacionais visando à economia de energia 3 novos algoritmos de escalonamento PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Uso do simulador CloudSim-DVFS
  • 7. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Trabalhos relacionados Topcuoglu et al. 2002: HEFT (Heterogeneous Earliest-Finish-Time) Mais de mil citações no Google Acadêmico Aksanli et al. 2012: GENSim Estudo comparativo de eficiência energética Simular batch jobs e service jobs Sem suporte a VMs Kliazovich et al. 2012: GreenCloud Comparação entre simuladores existentes Avaliar componentes da rede, não apenas os servidores Não possui código aberto
  • 8. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Trabalhos relacionados Beloglazov et al. 2012: CloudSim Eficiência energética em nuvem CloudSim + simulações energéticas Sem suporte a workflows Weiwei and Deelman 2012: WorkflowSim (CloudSim) Simulação de workflows em nuvens computacionais considerando simulação de falhas Sem suporte a simulações energéticas Guérout et al. 2013: CloudSim-DVFS (CloudSim) Suporte à simulação energética de workflows em nuvens computacionais Escalonadores com número de VMs fixas
  • 9. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Roteiro 1 Motivação 2 Conceitos 3 PowerHEFTLookahead 4 HEFT-DynamicAllocationVM 5 Task Clustering 6 Experimentos 7 Conclusões
  • 10. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões CloudSim-DVFS Disponível em outubro/2013 Uso do DVFS (Dimensionamento dinâmico de voltagem e frequência): De acordo com o uso de CPU, altera-se frequência e voltagem da CPU, economizando energia
  • 11. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Modelo energético PTOT = (1 −α)PCPUOciosa +(α)PCPUCargaMaxima (1) onde α é o uso de CPU e PCPUOciosa e PCPUCargaMaxima são as potências da CPU a 0% e 100% de utilização, respectivamente.
  • 12. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Frequências utilizadas para criação de VMs Frequências (GHz) 0.8 1.0 1.2 1.5 1.7 CPU ociosa (W) 140 146 153 159 167 CPU carga máxima (W) 228 238 249 260 272 Tabela: Frequências da nuvem privada (Grid’5000 Reims) utilizadas por Guérout et al. 2013 para criar a lista de VMs
  • 13. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Workflows DAG (Grafo Orientado Acíclico) Nós: custo de computação Arestas: custo de comunicação (transferência de dados) Caminhos críticos e não-críticos
  • 14. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Escalonadores do CloudSim-DVFS Performance: frequência máxima sempre OnDemand: frequência máxima se CPU em uso e mínima quando ociosa Optimal: diminuir consumo energético nos caminhos não-críticos com VMs "mais lentas"
  • 15. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões HEFT: Heterogeneous Earliest Finish Time Tarefa VM 1 VM 2 VM 3 rank(ti ) 1 14,9 11,9 9,9 57,9 2 13,8 11,1 9,2 45,6 3 11,7 9,4 7,8 34,3 4 13,8 9,2 12,7 45,6 5 12,7 10,2 8,5 44,7 6 13,8 11,1 9,2 34,2 7 7,4 6 5 24,6 8 5,3 4,3 3,5 22,8 9 19,1 15,3 12,7 34,1 10 22,3 17,9 14,9 18,3 Tarefas em ordem decrescente de rank: 1,2,4,5,3,6,9,7,8,10
  • 16. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Roteiro 1 Motivação 2 Conceitos 3 PowerHEFTLookahead 4 HEFT-DynamicAllocationVM 5 Task Clustering 6 Experimentos 7 Conclusões
  • 17. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões PowerHEFTLookahead VM 1 = VM do tipo "mais rápida"(Tipo 1)
  • 18. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões PowerHEFTLookahead Aloca a tarefa de maior rank na VM 1
  • 19. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões PowerHEFTLookahead Simula a alocação das demais tarefas Qual o consumo energético?
  • 20. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões PowerHEFTLookahead Simula a criação de uma nova VM (Tipo 1) Qual o consumo energético?
  • 21. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões PowerHEFTLookahead Simula a criação de uma nova VM (Tipo 2) Qual o consumo energético?
  • 22. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões PowerHEFTLookahead Simula a criação de uma nova VM (Tipo 3) Qual o consumo energético?
  • 23. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões PowerHEFTLookahead Qual caso obteve o menor consumo energético? É melhor criar uma nova VM? De qual tipo?
  • 24. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Roteiro 1 Motivação 2 Conceitos 3 PowerHEFTLookahead 4 HEFT-DynamicAllocationVM 5 Task Clustering 6 Experimentos 7 Conclusões
  • 25. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões HEFT-DynamicAllocationVM VM 1 = VM do tipo "mais rápida"(Tipo 1)
  • 26. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões HEFT-DynamicAllocationVM Aloca a tarefa de maior rank
  • 27. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões HEFT-DynamicAllocationVM Aloca a tarefa de maior rank Tarefa dependente da anterior? Pode executar na mesma VM
  • 28. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões HEFT-DynamicAllocationVM Tarefa paralelizável? Aloca uma nova VM do tipo "mais lenta"
  • 29. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões HEFT-DynamicAllocationVM Paralelize o máximo que puder
  • 30. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões HEFT-DynamicAllocationVM Uma VM lenta vai executar mais de uma tarefa?
  • 31. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões HEFT-DynamicAllocationVM Troque por uma VM mais rápida, pois pode ser um caminho crítico
  • 32. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões HEFT-DynamicAllocationVM Faça isso para todos os casos
  • 33. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões HEFT-DynamicAllocationVM Continue a alocação
  • 34. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões HEFT-DynamicAllocationVM Alocação final com dependência de dados
  • 35. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Roteiro 1 Motivação 2 Conceitos 3 PowerHEFTLookahead 4 HEFT-DynamicAllocationVM 5 Task Clustering 6 Experimentos 7 Conclusões
  • 36. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Task Clustering Reconhece duas VMs "mais lentas"que vão executar apenas uma tarefa cada
  • 37. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Task Clustering Agrupa as tarefas em uma única VM "mais rápida"
  • 38. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Roteiro 1 Motivação 2 Conceitos 3 PowerHEFTLookahead 4 HEFT-DynamicAllocationVM 5 Task Clustering 6 Experimentos 7 Conclusões
  • 39. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Experimentos Ambiente de Teste: o mesmo utilizado por [Guérout et al. 2013] 1 VM por host Tipos de VMs: conforme frequências para DVFS Escalonadores: Performance (PERF) DVFS: OnDemand (ONDEM) e Optimal (OPT) PowerHEFTLookahead (POWERHEFT) HEFT HEFT-DynamicAllocation-VM (DAVM) HEFT-DynamicAllocation-VM-TaskClustering (DAVM-TC) Optimal-TaskClustering (OPT-TC)
  • 40. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Figura: Exemplo da estrutura do workflow (a) Sipht (codificação de genes), (b) Cybershake (caracterização de zonas de risco de terremotos.) e (c) Montage (mosaico astronômico).
  • 41. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Montage Figura: Comparativo do consumo energético e makespan do DAG Montage utilizando diferentes políticas de escalonamento de tarefas.
  • 42. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Roteiro 1 Motivação 2 Conceitos 3 PowerHEFTLookahead 4 HEFT-DynamicAllocationVM 5 Task Clustering 6 Experimentos 7 Conclusões
  • 43. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Conclusões Resultados Redução do consumo energético na maioria dos casos, chegando até a 22.7% Task clustering pode ser vantajoso tanto em relação ao consumo energético quanto ao tempo de execução Estrutura de interligação das tarefas no workflow influencia no escalonamento
  • 44. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Conclusões Contribuições Três novos algoritmos para escalonamento de workflows visando a eficiência energética sem impacto significativo no makespan Estudo comparativo com algoritmos existentes Dados e código abertos à comunidade
  • 45. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Trabalhos futuros Simulações Outros ambientes de teste Outros modelos energéticos Uso de cargas de trabalho dinâmicas Novas abordagens com o HEFT Validação dos resultados em ambiente real Possibilidades de: Integração do WorkflowSim ao CloudSim-DVFS Utilização de escalonadores dinâmicos ao invés de estáticos Adição da estimativa de consumo energético de outros componentes do data center
  • 46. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Muito obrigada! Perguntas? elainew@ime.usp.br Agradecimentos FAPESP (processo número: 2011/24114-0) e CAPES Rodrigo N. Calheiros e Tom Guérout (CloudSim-DVFS) Weiwei Chen (WorkflowSim) Daniel A. Cordeiro (explicação sobre o HEFT) Disponível em: https://github.com/pedropaulovc/CloudSim_DVFS http://www.ime.usp.br/~elainew
  • 47. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Bibliografia L.A. Barroso e U. Hölzle. The case for energy-proportional computing. Computer, 40(12):33–37, 2007. Tom Guérout, Thierry Monteil, Georges Da Costa, Rodrigo Neves Calheiros, Rajkumar Buyya e Mihai Alexandru. Energy-aware simulation with dvfs. Simulation Modelling Practice and Theory, v.39, i.1, p.76-91, 2013. H. Topcuoglu, S. Hariri e Min-You Wu. Performance-effective and low-complexity task scheduling for heterogeneous computing. IEEE Transactions on Parallel and Distributed Systems, 13(3):260–274, 2002. A. Beloglazov e R. Buyya. Energy Efficient Resource Management in Virtualized Cloud Data Centers. Energy Efficient Resource Management in Virtualized Cloud Data Centers, 826–831, 2007. C. Belady. In the data center, power and cooling costs more than the it equipment it supports Energy Efficient Resource Management in Virtualized Cloud Data Centers, 2007.
  • 48. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Bibliografia S. Murugesan. Harnessing green IT: Principles and practices IT professional, 24–33,2008. J. Vöckler, G. Juve, E. Deelman, M. Rynge and B. Berriman Experiences using cloud computing for a scientific workflow application Proceedings of the 2nd international workshop on Scientific cloud computing, 15–24,2011. L.F. Bittencourt, E. Madeira, N.L.S. Fonseca Scheduling in hybrid clouds Communications Magazine, IEEE, 42–47,2012.
  • 49. Motivação Conceitos PowerHEFTLookahead HEFT-DynamicAllocationVM Task Clustering Experimentos Conclusões Bibliografia B. Aksanli, J. Venkatesh and T. Rosing Using Datacenter Simulation to Evaluate Green Energy Integration Computer, 56–64,2012. D. Kliazovich, P. Bouvry and S.U. Khan GreenCloud: a packet-level simulator of energy-aware cloud computing data centers The Journal of Supercomputing, 1263–1283,2012. C. Weiwei and E. Deelman WorkflowSim: A toolkit for simulating scientific workflows in distributed environments IEEE 8th International Conference on E-Science (e-Science), 1-8,2012.