Gerenciando dinamicamente a execu - PowerPoint PPT Presentation

1 / 20
About This Presentation
Title:

Gerenciando dinamicamente a execu

Description:

Gerenciando dinamicamente a execu o de tarefas com uma linguagem interpretada {anolan, noemi}_at_inf.puc-rio, schulze_at_lncc.br – PowerPoint PPT presentation

Number of Views:40
Avg rating:3.0/5.0
Slides: 21
Provided by: anol3
Category:

less

Transcript and Presenter's Notes

Title: Gerenciando dinamicamente a execu


1
Gerenciando dinamicamente a execução de tarefas
com uma linguagem interpretada
  • anolan, noemi_at_inf.puc-rio,
  • schulze_at_lncc.br

2
Motivação
  • Desenvolver um mecanismo para a alocação de
    recursos para trabalhos computacionais submetidos
    através da grade.
  • Endereçamento Virtual (para clusters com
    endereçamento virtual, sem Globus, permitir a
    submissão de jobs usando um mecanismo simples e
    pouco pesado)

3
Componentes do Globus GRAM
MDS client API calls to locate resources
GRAM Client
MDS
Update MDS with resource state information
GRAM client API calls to request resource
allocation and process creation.
Site boundary
GRAM Reporter
Query current status of resource
Local Resource Manager
Gatekeeper
Create
Allocate create processes
Request
Job Manager
Authentication
Process
Globus Security Infrastructure
Parse
Monitor control
Process
RSL Library
Process
4
Escalonadores Locais
  • LSF (Load Sharing Facility)
  • SGE (Sun Grid Engine)
  • OpenPBS (Open Portable Batch System)
  • Condor

5
Características comuns
  • Oferecem checkpointing e migração de processos
  • Balanceamento dinâmico de carga (fundamentalmente
    por migração de processos)
  • Autenticação e autorização
  • Daemon fault recovery
  • Staging

6
Requerimentos de adaptabilidade no Grid
  • Barreiras administrativas
  • Considerável variabilidade no uso dos recursos
  • Aplicações de longa vida demandam atuar durante a
    execução (adaptação dinâmica/checkpointing?)
  • O balanceamento da carga e a tolerância a falhas
    são problemas fundamentais em ambientes Grid.

7
Linguagens interpretadas
  • Interatividade
  • Adaptação as funções podem ser acrescentadas ou
    redefinidas dinamicamente
  • Portabilidade
  • Flexibilidade

8
ALua
  • Mecanismo de comunicação baseado em eventos para
    programação paralela e distribuída em Lua.
  • Aplicações ALua são compostas por vários
    processos rodando em diferentes máquinas que se
    comunicam através de mensagens
  • As mensagens são chunks de código que será
    executado pelo receptor. O código pode estar
    escrito em Lua ou C.
  • Concorrência
  • Single thread. As mensagens são executadas
    seqüencialmente em um loop de eventos.

9
n00
n01
RSL
Tarefa
Host Carga
n00.par 0
n03.par 0.2
n01.par 0.7
n02.par 0.77
n02
n03
10
Grid submission
  • globusrun -r server.par.inf.puc-rio.br/jobmanager
    -alua '(executablels) (count2)'

11
Escalonador Local
Client
GRAM
submit.lua
control.lua
ALua Local Resource Manager
Resource Manager
Job Queue
Scheduling policies
Resource requirements
Job scheduler
Job dispatcher
Resource alocation
Monitoring information
Task Manager
Allocate and create processes
Control, status, cancel
Processor
12
Notification engine (Lua Monitor)
  • Sistema de monitoração extensivel escrito em Lua
  • Baseado em
  • Propriedades parâmetros a serem observados,
  • Aspectos permite especificar determinado
    comportamento da propriedade,
  • Observadores especifica as propriedades/aspectos
    de interesse e um callback para receber
    notificações da ocorrência do evento.

13
Lua Monitor
  • Exemplo
  • LuaMonitorattachEventObserver(notifyEventfu
    nction(self, event)
    alua.send(taskManager,alarm()),"CP
    UIncrease","CPUIncreasing")

14
Grid submission
  • globusrun -r server.par.inf.puc-rio.br/jobmanager
    -alua '(executablels) (count1)'globus_gram_cli
    ent_callback_allow successful
  • lua submit.lua exec 1 ls
  • GRAM Job submission successfulGLOBUS_GRAM_PROTOCO
    L_JOB_STATE_ PENDING

15
Grid submission
  • globusrun -r server.par/jobmanager-alua
    '(executablever00) (count1) (jobType"mpi")
    (arguments"11 1 0 0 0 285615")'globus_gram_clien
    t_callback_allow successfulGRAM Job submission
    successfulGLOBUS_GRAM_PROTOCOL_JOB_STATE_PENDING
    GLOBUS_GRAM_PROTOCOL_JOB_STATE_ACTIVEGLOBUS_GRAM_
    PROTOCOL_JOB_STATE_DONE

16
Problemas
  • Segurança
  • Execução no loop de eventos não tem autenticação
  • Jobs executados com os direitos do Resource
    Manager
  • Escalabilidade
  • Interconexão dos daemons
  • Desempenho
  • Linguagem interpretada (troca por mais
    flexibilidade). (Precisa avaliação quantitativa
    das perdas reais no modelo de programação dual!)

17
Resultados experimentais
18
Conclusões e Trabalhos futuros
  • Console
  • Permitir comunicações entre processos executando
    em diferentes sites
  • Escalonamento global (Meta escalonamento)
  • Testar com aplicações reais

19
Mais informações
  • Managing jobs with an interpreted language for
    dynamic adaptation, MGC2005
  • http//alua.inf.puc-rio.br

20
Fim
Write a Comment
User Comments (0)
About PowerShow.com