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

Documentos relacionados
Escalonamento de Workflows com Uso Intensivo de Dados em Nuvens

Emparelhamentos Bilineares Sobre Curvas

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

Inteligência Artificial

PESQUISA OPERACIONAL -PROGRAMAÇÃO LINEAR. Prof. Angelo Augusto Frozza, M.Sc.

T.I. para o DealerSuite: Servidores Versão: 1.1

Eventos, Tarefas,Tempos e Prazos

Unidade 1: O Computador

Fundamentos de Teste de Software

Sistemas Operacionais. Rodrigo Rubira Branco

Aula 10: Escalonamento da CPU

Programação Orientada a Objetos SANTOS, Rafael

ARQUITETURA DE COMPUTADORES. Professor: Clayton Rodrigues da Siva

REGULAMENTO ESPECÍFICO DE BASQUETEBOL DESPORTO ESCOLAR

ADMINISTRAÇÃO DE BANCOS DE DADOS MÓDULO 8

M =C J, fórmula do montante

Introdução à Informática

Métricas de Software

Iniciação Científica no INATEL

10. CPU (Central Processor Unit) Conjunto das instruções Estrutura interna Formato das instruções...

Gerenciamento do Escopo do Projeto (PMBoK 5ª ed.)

DISTRIBUIÇÕES ESPECIAIS DE PROBABILIDADE DISCRETAS

Título da Apresentação

REGULAMENTO ESPECÍFICO DE BASQUETEBOL

Curso de Formação de Oficiais Conhecimentos Específicos ENGENHARIA DE COMPUTAÇÃO CADERNO DE QUESTÕES

Arquitetura de referência de Streaming sob demanda para desktop (ODDS) DELL

Fundamentos de Programação. Diagrama de blocos

Prof. Daniela Barreiro Claro

Análise Qualitativa no Gerenciamento de Riscos de Projetos

ENGENHARIA DE SOFTWARE

Otimização Linear Aplicada a Problemas de Planejamento de Produção

REGULAMENTO ESPECÍFICO BASQUETEBOL. (Revisto em Setembro de 2014)

MDS II Aula 04. Concepção Requisitos Diagrama de Casos de Uso (Use Cases)

Aula 03. Processadores. Prof. Ricardo Palma

Arquitecturas de Software Enunciado de Projecto

Universidade Estadual de Goiás Biblioteca UnUCET. Regulamento

Conceitos básicos sobre computadores

TOP 20 ROTINAS QUE VOCÊ PODE AUTOMATIZAR HOJE!

Data Envelopment Analysis in the Sustainability Context - a Study of Brazilian Electricity Sector by Using Global Reporting Initiative Indicators

Apresentação dos Requisitos Do Edital Inmetro nº 01/2011

Tipos de problemas de programação inteira (PI) Programação Inteira. Abordagem para solução de problemas de PI. Programação inteira

DOCUMENTO DE REQUISITO DE SOFTWARE

Deswik.Sched. Sequenciamento por Gráfico de Gantt

Arquitetura TCP/IP. Apresentado por: Ricardo Quintão

Regulamento das Bolsas PARSUK Xperience 2014

Organização e Arquitetura de Computadores. Ivan Saraiva Silva

IFRS 13 Mensuração do valor justo

Modelo Entidade Relacionamento (MER) Professor : Esp. Hiarly Alves

DIMENSÕES DE PESQUISA EM ENGENHARIA DE SOFTWARE

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

BPMN - Business Process Modeling Notation Uma Notação para a Modelagem de Processos. Renata Guanaes

REGULAMENTO ESPECÍFICO DE BASQUETEBOL

Flávia Rodrigues. Silves, 26 de Abril de 2010

Prospeto a publicar nas ofertas públicas de valores mobiliários

GSCI - GSIG. 2 Programação Linear. Prof. Ricardo Villarroel Dávalos, Dr. Eng.

Arquitetura de Conectividade para Ambientes de Computação em Nuvem. Palestrante: Herlon Hernandes

CENTRAIS ELÉTRICAS DE RONDÔNIA S.A. CERON PREGÃO MINISTÉRIO DE MINAS E ENERGIA ANEXO XIII DO EDITAL

Aula 8 21/09/ Microeconomia. Demanda Individual e Demanda de Mercado. Bibliografia: PINDYCK (2007) Capítulo 4

GUIA DE DIGITALIZAÇÃO ÓTIMA

OPERAÇÕES COM FRAÇÕES

MBA em Gerenciamento de Projetos. Teoria Geral do Planejamento. Professora: Maria Erileuza do Nascimento de Paula

Programação de Computadores I Estruturas de Repetição PROFESSORA CINTIA CAETANO

SISTEMAS OPERACIONAIS. 3ª. Lista de Exercícios

REGIMENTO ESPECÍFICO BASQUETEBOL. Câmara Municipal de Lisboa e Juntas de Freguesia Olisipíadas 2ª edição

Insight for a better planet SOLUÇÕES EM PLANEJAMENTO, AGENDAMENTO E OTIMIZAÇÃO FLORESTAL

Roteiro... Sistemas Distribuídos Aula 4. Troca de mensagens. Comunicação entre processos. Conceitos de SD, vantagens e desvantagens

Estudo sobre a dependência espacial da dengue em Salvador no ano de 2002: Uma aplicação do Índice de Moran

2 Workshop processamento de artigos em serviços de saúde Recolhimento de artigos esterilizados: é possível evitar?

ISS Eletrônico. Formato de Arquivos para Transmissão de Documentos Declarados através do aplicativo OFFLINE. Extensão do Arquivo JUNHO2006.

Obtenção Experimental de Modelos Matemáticos Através da Reposta ao Degrau

UNIVERSIDADE ESTADUAL DE CAMPINAS FACULDADE DE EDUCAÇÃO. Elaborado por Gildenir Carolino Santos Grupo de Pesquisa LANTEC

Plano Pós-Pago Alternativo de Serviço

GUIA SOBRE A APLICAÇÃO DOS ASPECTOS LINGUÍSTICOS DA CARTILHA DE ADESÃO À AGENCE UNIVERSITAIRE DE LA FRANCOPHONIE

Manual Remessa Bancária

PARECER Nº, DE RELATORA: Senadora ADA MELLO I RELATÓRIO


CONTRATO DE LICENÇA DO UTILIZADOR PARA PRODUTOS DE SOFTWARE DA STONERIDGE ELECTRONICS LTD

Álgebra Linear Aplicada à Compressão de Imagens. Universidade de Lisboa Instituto Superior Técnico. Mestrado em Engenharia Aeroespacial

Engenharia de Software II

COBRANÇA BANCÁRIA CAIXA

Análise de Sistemas 3º Bimestre (material 2)

Tratores. Informações gerais sobre tratores. Recomendações. Distância do eixo

Destaques do Concurso de Bolsas Individuais 2015

I TORNEIO DE INTEGRAÇÃO CIENTÍFICA TIC

Cursos Profissionais - nível Curso Técnico de Turismo Ambiental e Rural

A dissertação é dividida em 6 capítulos, incluindo este capítulo 1 introdutório.

EDITAL PARA INSCRIÇÃO DE TRABALHOS NO III CURSO DE EXTENSÃO SOBRE O TRABALHO DO ASSISTENTE SOCIAL NA EDUCAÇÃO DO IFMG

II Semana de Ciência e Tecnologia do IFMG campus Bambuí II Jornada Científica 19 a 23 de Outubro de 2009

Como Elaborar uma Proposta de Projeto

I. Conjunto Elemento Pertinência

Projeto de Desenvolvimento de Software

MUNICÍPIOS DA PENÍNSULA DE SETÚBAL ASSOCIAÇÕES ESCOLAS JOGOS DO FUTURO DA REGIÃO DE SETÚBAL 2016 BASQUETEBOL REGULAMENTO

FUNDAÇÃO DE AMPARO AO ENSINO E PESQUISA

Lógica de Programação. Profas. Simone Campos Camargo e Janete Ferreira Biazotto

Estruturas de Repetição

D-Francoforte no Meno: Aluguer de salas de reuniões e conferências 2013/S Anúncio de concurso. Serviços

Transcrição:

Discretização do Tempo na Utilização de Programação Linear para o Problema de Escalonamento de Workflows em Múltiplos Provedores de Nuvem Thiago A. L. Genez, Luiz F. Bittencourt, Edmundo R. M. Madeira Instituto de Computação (IC) Universidade Estadual de Campinas (UNICAMP) 03 de Maio de 2012 1 / 25

Roteiro 1 Introdução Visão geral do problema Objetivos deste trabalho 2 Cenário do Escalonamento em Nuvens 3 Visão geral do Algoritmo de Escalonamento Modelagem do Problema Formulação da Programação Linear Inteira 4 Representação da Linha do Tempo 5 Avaliação 6 Conclusão e Trabalhos Futuros 2 / 25

Introdução Visão geral do problema Introdução I Visão geral de Computação em Nuvem: Oferece recursos como serviços de utilidade geral Os recursos podem ser alugados e liberados sob demanda Camada de virtualização Modelo de tarifação pago-pelo-uso (pay-as-you-go) Dividido em três modelos gerais (NIST) IaaS infrastructure as a service PaaS platform as a service SaaS software as a service 3 / 25

Introdução Visão geral do problema Introdução II Provedor de SaaS (ou PaaS): Fornece um serviço de execução de workflows aos seus clientes através de acordos de nível de serviço (SLA) Deve cumprir o deadline da execução estipulado para cada workflow Aluga recursos (VMs) do provedor de IaaS também através de SLAs Múltiplos provedores de IaaS Pode reduzir os custos de manutenção da sua infraestrutura própria Não tem que lidar com as peculiaridades de hardware Traz elasticidade ao seu poder computacional Dois níveis de SLAs: 1 o nível: SLAs entre o provedor de SaaS e cada cliente 2 o nível: SLAs entre o provedor de SaaS e cada provedor de IaaS Escalonamento: Programação Linear Inteira (PLI) 4 / 25

Introdução Visão geral do problema Introdução III Principal problema: Permitir o escalonamento de workflows grandes pela PLI: (> 30 nós) Várias dependências entre estes nós Dependendo do tamanho do workflow ou tamanho do deadline: Aumento da linha temporal discreta da PLI T = {1, 2, 3, 4,..., deadline} Aumenta o tempo de execução do escalonador Soluções aceitáveis podem não ser encontradas em tempo hábil 5 / 25

Introdução Visão geral do problema Introdução IV Objetivo deste trabalho: Relaxar a dimensão tempo na PLI Aumentando a granularidade da linha do tempo Fator multiplicativo λ T = {λ, 2λ, 3λ,..., deadline}, onde λ N + Permitir que o provedor de SaaS escalone workflows com grande número de nós e dependências Em tempo aceitável (hábil) Menor custo monetário possível com VMs Respeitar os deadlines estabelecidos para cada workflow 6 / 25

Cenário Cenário do Escalonamento em Nuvens I Dois níveis de SLA O cenário do ambiente de escalonamento na nuvem: 7 / 25

Cenário Cenário do Escalonamento em Nuvens II Dois níveis de SLA Workflow: representado por um DAG G = {U, E}, onde: cada nó u i U representa um serviço a ser executado cada aresta e i,j E representa uma dependência de dados entre os serviços i e j 8 / 25

Algoritmo de Escalonamento Modelagem do Problema Modelagem do Problema O problema de escalonamento de workflows pode ser citado como: Encontre um mapeamento viável M entre os nós do DAG G e as VMs de vários provedores de IaaS, de tal modo que a soma do custo computacional monetário para todos os nós u U nas máquinas virtuais em V seja mínimo, as dependêcias entre os nós do DAG G não sejam violadas e o tempo total de execução do mapeamento M ( makespan) M G seja no máximo igual ao deadline exigido pelo usuário, ou seja, M G D G. Método utilizado: Programação linear Inteira (PLI) Para workflows pequenos ( 15 nós) e com pouca dependência Execução é rápida Tempo aceitável Considerando λ = 1 9 / 25

Algoritmo de Escalonamento Programação Linear Inteira Formulação da Programação Linear Inteira (PLI) I As variáveis e constante utilizadas no programa linear inteiro: x u,t,v : variável binária que assume o valor 1 se o nó u termina sua execução no instante de tempo t na VM v, caso contrário, assume o valor 0; y t,v : variável binária que assume o valor 1 se a VM v está sendo utilizada no instante de tempo t, caso contrário, assume o valor 0; C v : constante que assume o custo por unidade de tempo da máquina virtual v. Função objetivo linear: Minimize y t,v C v t T v V 10 / 25

Algoritmo de Escalonamento Programação Linear Inteira Formulação da Programação Linear Inteira (PLI) II Restrições: (C1) (C2) x u,t,v = 1; t T v V u U; u U v V w u J v t=1 x u,t,v = 0; Determinam que qualquer nó do DAG deve ser executado apenas uma vez e em uma única VM Estabelecem que o nó u do DAG não pode ser definido como terminado até que tenha sido executado na VM v t w z J r +f u,z L i,j t (C3) x u,s,v x z,s,r s=1 s=1 z U, u H(z), r, v V, t T, i, j I B i,v = 1, B j,r = 1 Determinam que o nó z do DAG não pode iniciar sua execução até que todos os nós anteriores tenham terminado suas execuções e os dados resultados tenham chegado à VM que executará z 11 / 25

Algoritmo de Escalonamento Programação Linear Inteira Formulação da Programação Linear Inteira (PLI) III Restrições: (C4) t+ w u J v 1 u U s=t:t D G w u J v v V, t T x u,s,v P v Estipulam que o número de nós do DAG em execução na VM v, em um determinado tempo t não pode exceder o número de núcleos de processamento de v (C5) t s=t w u J v +1 y s,v x u,t,v ( w u J v ) u U, v V, t { w u J v,..., D G } Determinam que uma VM deve permanecer ativa, enquanto estiver executando os nós que a exigem 12 / 25

Algoritmo de Escalonamento Programação Linear Inteira Formulação da Programação Linear Inteira (PLI) IV Restrições: (C6) (C7) y t,v δ i v V i I, t T B i,v = 1 y t,v α s v V s ζ, t T K s,v = 1 Especificam que o número de VMs reservadas somadas com o número de VMs alugadas sob demanda não pode exceder o número máximo permitido por cada provedor de IaaS Estabelecem que a quantidade de VMs sendo utilizadas não pode exceder o limite estipulado no SLA (C8) x u,t,v {0, 1} u U, t T, v V (C9) y t,v {0, 1} t T, v V Especificam que as variáveis deste PLI só irão assumir valores binários (0 ou 1) 13 / 25

Linha do Tempo Representação da Linha do Tempo I Tempo: Granularidade da linha do tempo Questão-chave para o problema de escalonamento Classificação do tempo: Discreto: existe um intervalo de tempo que não é divisível Eventos ocorrem no início (ou no final) dos intervalos Escalonamento menos preciso Modelo matemático mais simples Contínuo: não há intervalos de tempo não divisíveis Eventos ocorrem em qualquer instante de tempo Escalonamento mais preciso Modelo matemático mais complexo 14 / 25

Linha do Tempo Representação da Linha do Tempo II Tempo discreto: As VMs são contabilizadas por unidades de tempo inteiras usadas As unidades parcialmente consumidas: Cobradas como se fossem unidades de tempo completas Fator multiplicativo λ T = {λ, 2λ, 3λ, 4λ,..., Λ}, tal que Λ D G e λ N + Dependendo do valor de λ: Granularidade fina (intervalos de tempo curtos) Aumenta o número de elementos do conjunto T Aumenta o espaço de busca de soluções (mais preciso) Aumenta o tempo de execução do escalonador Solução ótima ou aceitável pode demorar para ser encontrada 15 / 25

Linha do Tempo Representação da Linha do Tempo III Tempo discreto: (cont) Dependendo do valor de λ: Granularidade grossa (intervalos de tempo longos) Diminui o número de elementos do conjunto T Diminui o espaço de busca de soluções (menos preciso) Diminui o tempo de execução do escalonador Escalonamento pode se tornar inviável Falta de unidades de tempo o suficiente para representar todas as dependências dos nós do DAG Trade-off: Usar Intervalos de tempo curtos para obter um escalonamento mais preciso Intervalos de tempo longos para diminuir o tempo de execução do escalonador 16 / 25

Avaliação Avaliação I 17 / 25

Avaliação Avaliação II Detalhes da Simulação: Java and IBM ILOG CPLEX Optimizer As métricas avaliadas foram: Custo monetário do escalonamento Makespan do workflow Tempo de execução do escalonador Número de soluções inviáveis Worfklows de aplicações do mundo real usados foram: Fork-Join com 30 nós Montage Ligo Abordagem ótima: não relaxamos as restrições (C8) e (C9) Variamos o fator múltiplicativo λ e o deadline Tempo limite de 600 segundos para cada simulação 18 / 25

Avaliação Avaliação III Configuração das Simulações Utilizamos 3 provedores de IaaS em nossas simulações Cada provedor de IaaS tem suas próprias configurações e preços para as VMs no plano de reserva e sob demanda VMs com 1 a 8 núcleos de processamentos Desempenho dos recursos heterogêneos (processadores e enlaces) 19 / 25

Avaliação Avaliação IV Resultados para o DAG Fork-Join com 30 nós: DAG Fork Join com 30 nós DAG Fork Join com 30 nós Custo ($) 30 25 20 15 10 5 0 1 2 3 4 5 6 7 8 9 10 λ Makespan 40 35 30 25 20 15 10 5 0 1 2 3 4 5 6 7 8 9 10 λ DAG Fork Join com 30 nós DAG Fork Join com 30 nós 700 100 Tempo de execução (s) 600 500 400 300 200 100 soluções inviáveis (%) 80 60 40 20 0 1 2 3 4 5 6 7 8 9 10 λ 0 1 2 3 4 5 6 7 8 9 10 λ 2/7 x T max 3/7 x T max 4/7 x T max 5/7 x T max 6/7 x T max 20 / 25

Avaliação Avaliação V Resultados para o DAG Montage: DAG Montage DAG Montage Custo ($) 9 8 7 6 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10 λ Makespan 30 25 20 15 10 5 0 1 2 3 4 5 6 7 8 9 10 λ DAG Montage DAG Montage 700 100 Tempo de execução (s) 600 500 400 300 200 100 soluções inviáveis (%) 80 60 40 20 0 1 2 3 4 5 6 7 8 9 10 λ 0 1 2 3 4 5 6 7 8 9 10 λ 2/7 x T max 3/7 x T max 4/7 x T max 5/7 x T max 6/7 x T max 21 / 25

Avaliação Avaliação VI Resultados para o DAG Ligo: DAG Ligo DAG Ligo Custo ($) 400 350 300 250 200 150 100 50 0 5 10 15 20 25 λ Makespan 200 180 160 140 120 100 80 60 40 20 0 5 10 15 20 25 λ DAG Ligo DAG Ligo 700 100 Tempo de execução (s) 600 500 400 300 200 100 soluções inviáveis (%) 80 60 40 20 0 5 10 15 20 25 λ 0 5 10 15 20 25 λ 2/7 x T max 3/7 x T max 4/7 x T max 5/7 x T max 6/7 x T max 22 / 25

Conclusão e Trabalhos Futuros Conclusão e Trabalhos Futuros I Conclusão: Para workflows com vários nós e várias dependências: Tempo de escalonamento pode ser alto Apresentamos uma maneira de reduzir o espaço de busca de soluções no problema de escalonamento em nuvens com 2 níveis de SLA: Relaxando o tempo na PLI Simulações mostraram que aumento da discretização do tempo pode: Reduzir o tempo de execução do workflow Encontrar soluções viáveis com custos satisfatórios em tempo hábil Alguns casos (λ > 1) custos monetários menores do que quando λ = 1 Para deadlines altos, podemos usar valores altos para λ Para alguns workflows é necessário escalonar com λ > 1 Abordagem da discretização do tempo pode fornecer uma base para o provedor de SaaS negociar os SLAs com seus clientes 23 / 25

Conclusão e Trabalhos Futuros Conclusão e Trabalhos Futuros II Trabalhos Futuros: Relaxamento da programação linear inteira Desenvolvimento de heurísticas não-iterativas Escalonamento de múltiplos workflows no mesmo conjunto de VMs 24 / 25

Questões Obrigado! Questões? thiagogenez@ic.unicamp.br Agradecimentos: 25 / 25

Configuração das Simulações Configuração das Simulações Utilizamos 3 provedores de IaaS em nossas simulações O número máximo de VMs que podem ser alugadas a partir de cada provedor de IaaS: δ A = 4, δ B = 7, δ C = 2. Enlaces externos (enlaces entre provedores de IaaS): É escolhido aleatoriamente do intervalo [2, 3] Enlaces internos (enlaces entre VMs dentro do mesmo provedor de IaaS): É escolhido aleatoriamente do intervalo [0.1, 0.2]l Simulações com DAGs de aplicações do mundo real: Fork-Join com 30 nós, Montage e Ligo D G variando de T max 2/7 à T max 6/7 em etapas de 1/7 Intel R Xeon X 5660 CPU 2.80GHz com 16GB de RAM

Configuração das Simulações Tabela 1 : Provedor de IaaS A Tipo Núcleo Instrução Preço Preço Por Núcleo Demanda Reserva P 1 1.5 $0.13 $0.045 M 2 1.5 $0.20 $0.070 Tabela 2 : Provedor de IaaS B Tipo Núcleo Instrução Preço Preço Por Núcleo Demanda Reserva P 1 2 $0.17 $0.045 M 2 2 $0.30 $0.059 G 3 2 $0.40 $0.140 EG 4 2 $0.52 $0.183 EG2 8 2 $0.90 $0.316

Configuração das Simulações Tabela 3 : Provedor de IaaS C Tipo Núcleo Instrução Preço Preço Por Núcleo Demanda Reserva P 1 2 $0.15 $0.052 M 2 2 $0.25 $0.088 G 4 2.5 $0.50 $0.176 EG 8 2.5 $0.80 $0.281 Tabela 4 : Máquinas virtuais reservadas para provedor de SaaS Tipo IaaS VM Quantidade Reservada A P 1 Reservada A M 1 Reservada B P 1 Reservada B M 1