escalonamento em grade patrícia kayser vargas mangan [email protected]

35
Escalonamento em Grade Patrícia Kayser Vargas Mangan [email protected]

Upload: internet

Post on 17-Apr-2015

107 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

Escalonamento em Grade

Patrícia Kayser Vargas Mangan

[email protected]

Page 2: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 2

Roteiro

• Introdução

• Escalonamento em ambiente de grade

• Modelo GRAND

• Considerações Finais

Page 3: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 3

Introdução

• Escalonamento (informal...)– processo de atribuir processos a

processadores (ou tarefas a recursos)– existem vários algoritmos presentes na

literatura– problema NP-completo– uso de heurísticas

Page 4: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 4

Introdução

• Classificação – taxonomia Casavant & Kuhl (1988)– com relação ao momento em que é realizada

a escolha dos processadores• estático: atribuição antes do início da execução• dinâmico: durante a execução, atribui a medida

que recursos são disponibilizados• estático+dinâmico = uso de informações

dinâmicas diminuindo overhead na execução

Page 5: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 5

Escalonamento em ambiente de grade

• Computação em grade (grid computing)– infra-estrutura computacional

• um conjunto virtual de recursos

– grande número de recursos• elementos em torno de 1000-10000

– recursos heterogêneos e geograficamente distribuídos

• recursos se espalham em múltiplos domínios administrativos

– ambiente dinâmico– aplicações de grande demanda computacional

Page 6: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 6

Escalonamento em ambiente de grade

• O que muda em relação ao escalonamento em cluster ou rede local?

• Quais requisitos de escalonamento?

Heterogeneidade de recursos Ambiente dinâmico

Aplicações que executam por dias ou semanas

Custos variáveis para acesso a base de dados

Page 7: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 7

Modelo GRAND

• GGrid RRobust AApplicatioNN DDeployment

• Resultado de uma tese em andamento

• Doutoramento pela – PESC – COPPE/Sistemas – UFRJ

• Orientadores:– Inês de Castro Dutra [email protected]– Cláudio F. R. Geyer [email protected]

Page 8: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 8

Modelo GRAND

• Motivação: aplicações formadas por um grande número de tarefas– escalonamento e controle são desafios– sobrecarga na máquina de submissão– controle e particionamento manual proibitivos

• grande quantidade de recursos• tempo longo de execução

• Objetivo: tratar dois problemas– particionamento da aplicação– gerenciamento da aplicação

Page 9: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 9

Modelo GRANDPremissas

• Ambiente heterogêneo

• Um grande número de tarefas será submetido

• As tarefas não se comunicam por troca de mensagens

• Tarefas podem ter dependências com outras tarefas devido a compartilhamento de arquivos

Page 10: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 10

Modelo GRANDPremissas

• Um grande número de arquivos pode ser manipulado pelas tarefas

• Arquivos grandes podem ser usados na computação

• O ambiente de grade utilizado é seguro

• Cada nodo da grade possui o seu gerenciador de recursos local

• Cada nodo da grade disponibiliza informações sobre os recursos locais

Page 11: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 11

Modelo GRAND

• Aplicações podem ser modeladas como um grafo– Directed Acyclic Graph (DAG)– nodo = tarefa– aresta = dependência

independent tightly-coupledlow-coupled

Page 12: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

DAG inference

Clustering

Mapping

Submission

Application Description

Directed Acyclic Graph (DAG)

Set of sub-DAGs

Allocation Decisions

Results

Page 13: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

descrição da aplicação

Task Manager

Application Manager

informações de estado e monitoração &resultados

Grid Nodes

Resource Management

System

resultados

tarefas

informações de estado e monitoração &resultados

info.monitoração& resultados

Local Network

Submission Manager

Submit Machine

subgrafo de tarefas

subgrafo de tarefas

Page 14: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 14

Modelo GRAND

• GRID-ADL – GridGrid AApplication DDescription LLanguage– sintaxe simples e de alto nível

• alguns elementos da linguagem de descrição do Condor DAGMan

– detecção automática do DAG• Globus Chimera também infere o DAG da aplicação

– algumas construções para ajudar a expressar aplicações complexas

• comandos inspirados em linguagens de script

Page 15: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 15

Modelo GRANDParticionamento (Clustering)

• Inicialmente as tarefas são agrupadas em subgrafos– sem informações do ambiente de execução– com o objetivo de gerar grupos a serem

submetidos de forma independente– objetivo é obter grupos de baixa

granulosidade • que são submetidos como um todo (ao invés de

tarefa a tarefa)• que podem vir a ser reagrupados se necessário

Page 16: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 16

Modelo GRANDParticionamento (Clustering)

• Algoritmo de acordo com a aplicação (1/3):– independent tasks:

• cada tarefa pode ser atribuída a qualquer nodo da grade em qualquer ordem

• tarefas são agrupadas pela ordem de definição em blocos de tamanho pequeno

Page 17: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 17

Modelo GRANDParticionamento (Clustering)

• Algoritmo de acordo com a aplicação (2/3):– loosely-coupled tasks:

• tarefas possuem dependências, mas independentes entre si dentro de uma fase

• detecta fases, dentro de cada fase aplica algoritmo de independent tasks

Page 18: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 18

Modelo GRANDParticionamento (Clustering)

• Algoritmo de acordo com a aplicação (3/3):– tightly-coupled tasks:

• tarefa possuem dependências, ideal manter localidade de dados

• uso do algoritmo DSC (Dominant Sequence Clustering)

– algoritmo clássico– baixa complexidade

Page 19: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 19

DSC

• DAG com tarefas e arestas valoradas• modelo macro-dataflow

– tarefa recebe todas as entradas antes de iniciar e executa sem interrupção

• número ilimitado de processadores• inicialmente cada nodo pertence à um cluster• clusters são agrupados se diminuir a seqüência

dominante– caminho crítico do DAG escalonado

Page 20: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 20

DSCn1

n5n4

n3n2

n7

n6

3 0.5

14

2.52

2.5

1

12

1

1

1

6

UEG = {n1, n2, n3, n4, n5, n6, n7}

PTo=13

FL={n1(0+13), n4(0+9.5), n5(0+7.5)}

PFL={}

tlevel(n1)=0Não pode reduzir

Page 21: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 21

DSCn1

n5n4

n3n2

n7

n6

3 0.5

14

2.52

2.5

1

12

1

1

1

6

• UEG = {n2, n3, n4, n5, n6, n7}

• PTo=13

• FL={n2(4+9), n3(1.5+8), n4(0+9.5), n5(0+7.5)}

• PFL={}

tlevel(n2)=4Zerando (n1,n2),

tlevel(n2)=1

Page 22: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 22

DSCn1

n5n4

n3n2

n7

n6

3 0.5

14

2.52

2.5

1

12

1

1

1

6

Page 23: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 23

DSCn1

n5n4

n3n2

n7

n6

3 0.5

14

2.52

2.5

1

12

1

1

1

6

PT=8

Page 24: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 24

DAG inference

Clustering

Mapping

Submission

Application Description

Directed Acyclic Graph (DAG)

Set of sub-DAGs

Allocation Decisions

Results

Escolha de Submission Manager

Page 25: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 25

descrição da aplicação

Task Manager

Application Manager

informações de estado e monitoração &resultados

Grid Nodes

Resource Management

System

resultados

tarefas

informações de estado e monitoração &resultados

info.monitoração& resultados

Local Network

Submission Manager

Submit Machine

subgrafo de tarefas

subgrafo de tarefas

Page 26: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 26

Modelo GRANDInteração entre os componentes (1/5)

• Application Manager:– ao se tornar ativo

• broadcast na rede local• Submission Managers existentes respondem (local e

estado)

– quando aplicação for submetida • ativado por demanda• realiza o particionamento em subgrafos• escolhe um ou mais Submission Managers para enviar

os subgrafos (pode instanciar novos se necessário)

Page 27: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 27

Modelo GRAND Interação entre os componentes (2/ 5)

• Application Manager:– heurísticas para escolha dos Submission Managers (SM)

• uso de comunicação periódica para detecção de SM falhos ou sobrecarregados

• limite máximo de grafos para cada SM em função de poder computacional da máquina

• cálculo de peso para cada SM em função de histórico de execuções (peso maior melhor escolha)

Page 28: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 28

Modelo GRAND Interação entre os componentes (3/ 5)

• Submission Manager:– recebem subgrafos (representação interna)– comunicação periódica com o Application Manager indicando progresso da execução

– pode haver comunicação com outros Submission Manager devido dependências entre subgrafos

Page 29: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 29

Modelo GRAND Interação entre os componentes (4/5)

• Submission Manager:– escolhem nodo da grade considerando:

• requisitos da aplicação (alguns nodos podem não atender requisitos mínimos)

• limite máximo de subgrafos por nodo da grade (considera submissões em andamento)

• cálculo de peso para cada nodo em função de histórico de execuções (peso maior melhor escolha)

– escolha do nodo da grade aciona um Task Manager específico

Page 30: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 30

Modelo GRAND Interação entre os componentes (5/ 5)

• Task Manager:– pode ser ativado/desativado em função das

necessidades do Submission Manager– transforma subgrafos (representação interna) em

formato apropriado para submissão• p.ex. cria arquivo de submissão do Condor e executa

um condor_submit

– comunicação periódica com o Submission Manager indicando progresso da execução

Page 31: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 31

Considerações Finais

• GRAND: gerenciamento de aplicações em ambiente de grid– organização hierárquica de controladores– a carga da máquina do usuário é

compartilhada com outra máquinas– proposta de uma linguagem de descrição de

alto nível– protótipo em andamento

Page 32: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 32

Considerações Finais

• Trabalhos futuros:– novos experimentos com algoritmos de

particionamento– protótipo:

• adequação a outros aspectos do modelo• melhorias na interface gráfica do protótipo• experimentos em grade de teste (UFRJ, UFRGS,

LNCC e UERJ)

Page 33: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 33

Patrícia Kayser Vargas

[email protected]

http://www.cos.ufrj.br/grand

Page 34: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 34

GRANDLinguagem de Descrição

graph phaseOUTPUT = ""foreach ${TASK} in 1..5 { task ${TASK} -e ${TASK}”.exe” -i ${TASK}”.in” -o ${TASK}”.out” OUTPUT = ${OUTPUT} + ${TASK}+”.out "}task 6 -e 6.exe -i ${OUTPUT} -o data.outtransient ${OUTPUT}

Page 35: Escalonamento em Grade Patrícia Kayser Vargas Mangan kayser@cos.ufrj.br

05/10/2005 PDP - UFRGS 35

• Experimentos em cluster de oito nodos gerenciado pelo Condor (SANCHES, J.A.L. 2004)