Grids Computacionais
Prof. Adriano Teixeira de Souza
   A metáfora da rede elétrica




                    Grid Computacional
                     (fonte de recursos
                       computacional)




                               Prof. Adriano Teixeira de Souza
O sonho do cientista (The Grid Vision)

   Computação em Grid adota tanto o nome quanto o
    conceito semelhantes aqueles da Rede de Potência
    Elétrica para capturar a noção ou a visão de:
    −   Oferecer desempenho computacional eficientemente;
    −   De acordo com a demanda;
    −   A um custo razoável;
    −   Para qualquer um que precisar.

   O sucesso da computação em grid depende da
    comunidade de pesquisadores
    ◦ A possibilidade de construir tal ambiente (hardware e
      software)
    ◦ Necessidade de atingir seus objetivos.


                                  Prof. Adriano Teixeira de Souza
◦   A computação em Grid é uma forma de computação
    distribuída que permite a partilha e coordenação de recursos
    para a resolução de problemas complexos, seja porque são de
    grande escala ou porque envolvem o processamento intensivo
    de dados

◦   A tecnologia associada a uma Grid permite, assim, que
    organizações geograficamente dispersas partilhem recursos
    computacionais, de armazenamento, ou mesmo aplicações

◦   Apesar de ter dado grandes passos no passado recente, a
    partilha de recursos em larga escala ainda não é uma
    realidade em muitas áreas


                                Prof. Adriano Teixeira de Souza
                                                          4
Prof. Adriano Teixeira de Souza
   SMPs    acoplamento
   MPPs
   NOWs
   Grids   distribuição




                           Prof. Adriano Teixeira de Souza
CPU


                     CPU
Memória

                     ...

                     CPU




          Prof. Adriano Teixeira de Souza
Escalonador


CPU    CPU          CPU

              ...
Mem.   Mem.         Mem.
                                                 requisições




                       Prof. Adriano Teixeira de Souza
requisições   requisições                   requisições




       CPU         CPU                      CPU

                              ...

      Mem.         Mem.                     Mem.




                            Prof. Adriano Teixeira de Souza
CPU    CPU          CPU

              ...
Mem.   Mem.         Mem.




                      Internet




                           Prof. Adriano Teixeira de Souza
SMPs        MPPs            NOWs               Grids

Conectividade     excelente   muito boa          boa            média/ruim

Heterogeneidade     nula        baixa           média              alta

Compartilhado       não         não              sim               sim

Imagem             única       comum           comum             múltipla

Escala               10        1.000            1.000            100.000



                              Prof. Adriano Teixeira de Souza
   TeraGrid
    ◦ 4 centros de supercomputação norte-americanos
    ◦ Cada centro com milhares de processadores
      dedicados ao TeraGrid
    ◦ Canais de altíssima velocidade (40 GBits/s)
    ◦ Poder agregado de 13,6 TeraFlops

   SETI@home
    ◦ Ciclos ociosos de 1.6 milhões de processadores
      espalhados em 224 países
    ◦ Computa em média a uma velocidade de 10 Teraflops



                             Prof. Adriano Teixeira de Souza
   Além das questões de praxe em computação
    paralela, Computação em Grid adiciona os
    seguintes aspectos:

   Escalonamento de Aplicação
   Acesso e Autenticação
   Imagem do Sistema




                        Prof. Adriano Teixeira de Souza
   Não é possível ter um escalonador
    controlando o Grid
    ◦ Tamanho e dispersão
    ◦ Múltiplos domínios administrativos

   Escalonadores de recurso
    ◦ Controlam alguns recursos no Grid

   Escalonadores de aplicação
    ◦ Escolhem quais recursos usar
    ◦ Particionam o trabalho da aplicação



                              Prof. Adriano Teixeira de Souza
...


                                                  ...


              Application
              Escalonador       ...         Escalonador
                                            Application
              de Aplicação
              Scheduler                     de Aplicação
                                            Scheduler




Resource
Escalonador       Resource
                  Escalonador         ...            Resource
                                                    Escalonador
de Recurso
Scheduler         de Recurso
                  Scheduler                         de Recurso
                                                    Scheduler




                                      Prof. Adriano Teixeira de Souza
   Necessita de informações sobre o Grid

    ◦ Sistemas de monitoramento: NWS, Remos

    ◦ Informações de monitoração são usadas em
      previsões de performance




                            Prof. Adriano Teixeira de Souza
   Supercomputação distribuída
    ◦ Para agregar recursos computacional (ao mesmo
      tempo) para resolver problemas que não podem sê-
      lo num computador único


   Computação de alta vazão
    (Scavenging grid)
    ◦ Aproveita recursos livres (idle) para aumentar a
      vazão agregada de tarefas




                              Prof. Adriano Teixeira de Souza
   Computação intensiva em dados
    ◦ Foco em sintetizar nova informação a partir de
      dados mantidos em repositórios, BDs e bibliotecas
      digitais geograficamente distribuídos

   Computação sob demanda
    ◦ Uso de grid para satisfazer, no curto prazo,
      demandas de recursos que não podem ser
      satisfeitas localmente de forma barata

   Computação colaborativa
    ◦ Foco em grids que incluem formas intensivas de
      interação humano-humano


                              Prof. Adriano Teixeira de Souza
   Mais perto dos últimos dois tipos (on-demand,
    collaborative), mas ...
    ◦ Aplicações de negócio rodam de forma contínua ...
    ◦ Por longos períodos de tempo ...
    ◦ E possuem requisitos mais fortes de QoS, segurança e
      contabilização

   Virtualização de Ativos de TI

   Marketing usa várias frases
    ◦ “utility computing,” “e-business on demand,” “planetary
      computing,” “autonomic computing,” “enterprise grids”

   Ainda não estamos perto de chegar a “The Grid”


                                 Prof. Adriano Teixeira de Souza
   Globus

   Condor

   MyGrid




             Prof. Adriano Teixeira de Souza
   Conjunto de serviços para Computação em
    Grid

   Solução mais famosa e mais amplamente
    usada

   Evoluindo para integração com WebServices

   Não é uma solução completa (out of the box)
    ◦ Falta escalonamento de aplicação, imagem do
      sistema, economias grid


                            Prof. Adriano Teixeira de Souza
   GSI       Autenticação única no Grid
   GRAM      Submissão e controle de tarefas
   MDS       Informações e diretórios
   Nexus     Comunicação entre tarefas
   MPI-G     MPI sobre Nexus
   GASS      Transferência de arquivos
   GridFTP   Transferência de arquivos




                           Prof. Adriano Teixeira de Souza
Prof. Adriano Teixeira de Souza
   Condor é um sistema que usa ciclos ociosos
    para computação de alta vazão
   Condor foi inicialmente projetado para NOWs
   Aplicações são Bag of Tasks
    ◦ Tarefas são submetidas ao Gerenciador Central
    ◦ Quando uma máquina fica ociosa, ela informa ao
      Gerenciador Central, que providência uma tarefa
   Tarefas podem terminar abruptamente
    ◦ Condor usa checkpointing e migração de tarefas
      para garantir progresso



                             Prof. Adriano Teixeira de Souza
Central Manager                Execute and Submit


Submit Only




   Execute Only   Execute Only    Execute Only          Execute Only




                                 Prof. Adriano Teixeira de Souza
                                                           25
   Flock of Condors
    ◦ Cooperação totalmente descentralizada de Condor
      pools
    ◦ Dois pools trocam tarefas através de gateways

   Condor-G
    ◦ Escalonador Condor usa recursos de Condor pools
      e recursos acessíveis via Globus




                            Prof. Adriano Teixeira de Souza
   Solução completa para aplicações Bag of Tasks

   Meu Grid são todas as máquinas que eu posso
    acessar
    ◦ Casa perfeitamente com aplicações Bag of Tasks

   Arquitetura baseada na Grid Machine Abstraction

   Um broker (ou escalonador de aplicações)

   Um conjunto de abstrações para esconder do
    usuário a heterogeneidade do grid


                               Prof. Adriano Teixeira de Souza
Home
                                                  Machine

                      Scheduler




               Grid Machine Abstraction



                 User
     Globus                       Grid      ...
                 Agent
     Proxy                       Script
                 Proxy




  Globus                 User
  GRAM                   Agent                              ...

Grid Machine       Grid Machine           Grid Machine



                          Prof. Adriano Teixeira de Souza

Sistemas Distribuídos - Grids Computacionais

  • 1.
  • 2.
    A metáfora da rede elétrica Grid Computacional (fonte de recursos computacional) Prof. Adriano Teixeira de Souza
  • 3.
    O sonho docientista (The Grid Vision)  Computação em Grid adota tanto o nome quanto o conceito semelhantes aqueles da Rede de Potência Elétrica para capturar a noção ou a visão de: − Oferecer desempenho computacional eficientemente; − De acordo com a demanda; − A um custo razoável; − Para qualquer um que precisar.  O sucesso da computação em grid depende da comunidade de pesquisadores ◦ A possibilidade de construir tal ambiente (hardware e software) ◦ Necessidade de atingir seus objetivos. Prof. Adriano Teixeira de Souza
  • 4.
    A computação em Grid é uma forma de computação distribuída que permite a partilha e coordenação de recursos para a resolução de problemas complexos, seja porque são de grande escala ou porque envolvem o processamento intensivo de dados ◦ A tecnologia associada a uma Grid permite, assim, que organizações geograficamente dispersas partilhem recursos computacionais, de armazenamento, ou mesmo aplicações ◦ Apesar de ter dado grandes passos no passado recente, a partilha de recursos em larga escala ainda não é uma realidade em muitas áreas Prof. Adriano Teixeira de Souza 4
  • 5.
  • 6.
    SMPs acoplamento  MPPs  NOWs  Grids distribuição Prof. Adriano Teixeira de Souza
  • 7.
    CPU CPU Memória ... CPU Prof. Adriano Teixeira de Souza
  • 8.
    Escalonador CPU CPU CPU ... Mem. Mem. Mem. requisições Prof. Adriano Teixeira de Souza
  • 9.
    requisições requisições requisições CPU CPU CPU ... Mem. Mem. Mem. Prof. Adriano Teixeira de Souza
  • 10.
    CPU CPU CPU ... Mem. Mem. Mem. Internet Prof. Adriano Teixeira de Souza
  • 11.
    SMPs MPPs NOWs Grids Conectividade excelente muito boa boa média/ruim Heterogeneidade nula baixa média alta Compartilhado não não sim sim Imagem única comum comum múltipla Escala 10 1.000 1.000 100.000 Prof. Adriano Teixeira de Souza
  • 12.
    TeraGrid ◦ 4 centros de supercomputação norte-americanos ◦ Cada centro com milhares de processadores dedicados ao TeraGrid ◦ Canais de altíssima velocidade (40 GBits/s) ◦ Poder agregado de 13,6 TeraFlops  SETI@home ◦ Ciclos ociosos de 1.6 milhões de processadores espalhados em 224 países ◦ Computa em média a uma velocidade de 10 Teraflops Prof. Adriano Teixeira de Souza
  • 13.
    Além das questões de praxe em computação paralela, Computação em Grid adiciona os seguintes aspectos:  Escalonamento de Aplicação  Acesso e Autenticação  Imagem do Sistema Prof. Adriano Teixeira de Souza
  • 14.
    Não é possível ter um escalonador controlando o Grid ◦ Tamanho e dispersão ◦ Múltiplos domínios administrativos  Escalonadores de recurso ◦ Controlam alguns recursos no Grid  Escalonadores de aplicação ◦ Escolhem quais recursos usar ◦ Particionam o trabalho da aplicação Prof. Adriano Teixeira de Souza
  • 15.
    ... ... Application Escalonador ... Escalonador Application de Aplicação Scheduler de Aplicação Scheduler Resource Escalonador Resource Escalonador ... Resource Escalonador de Recurso Scheduler de Recurso Scheduler de Recurso Scheduler Prof. Adriano Teixeira de Souza
  • 16.
    Necessita de informações sobre o Grid ◦ Sistemas de monitoramento: NWS, Remos ◦ Informações de monitoração são usadas em previsões de performance Prof. Adriano Teixeira de Souza
  • 17.
    Supercomputação distribuída ◦ Para agregar recursos computacional (ao mesmo tempo) para resolver problemas que não podem sê- lo num computador único  Computação de alta vazão (Scavenging grid) ◦ Aproveita recursos livres (idle) para aumentar a vazão agregada de tarefas Prof. Adriano Teixeira de Souza
  • 18.
    Computação intensiva em dados ◦ Foco em sintetizar nova informação a partir de dados mantidos em repositórios, BDs e bibliotecas digitais geograficamente distribuídos  Computação sob demanda ◦ Uso de grid para satisfazer, no curto prazo, demandas de recursos que não podem ser satisfeitas localmente de forma barata  Computação colaborativa ◦ Foco em grids que incluem formas intensivas de interação humano-humano Prof. Adriano Teixeira de Souza
  • 19.
    Mais perto dos últimos dois tipos (on-demand, collaborative), mas ... ◦ Aplicações de negócio rodam de forma contínua ... ◦ Por longos períodos de tempo ... ◦ E possuem requisitos mais fortes de QoS, segurança e contabilização  Virtualização de Ativos de TI  Marketing usa várias frases ◦ “utility computing,” “e-business on demand,” “planetary computing,” “autonomic computing,” “enterprise grids”  Ainda não estamos perto de chegar a “The Grid” Prof. Adriano Teixeira de Souza
  • 20.
    Globus  Condor  MyGrid Prof. Adriano Teixeira de Souza
  • 21.
    Conjunto de serviços para Computação em Grid  Solução mais famosa e mais amplamente usada  Evoluindo para integração com WebServices  Não é uma solução completa (out of the box) ◦ Falta escalonamento de aplicação, imagem do sistema, economias grid Prof. Adriano Teixeira de Souza
  • 22.
    GSI Autenticação única no Grid  GRAM Submissão e controle de tarefas  MDS Informações e diretórios  Nexus Comunicação entre tarefas  MPI-G MPI sobre Nexus  GASS Transferência de arquivos  GridFTP Transferência de arquivos Prof. Adriano Teixeira de Souza
  • 23.
  • 24.
    Condor é um sistema que usa ciclos ociosos para computação de alta vazão  Condor foi inicialmente projetado para NOWs  Aplicações são Bag of Tasks ◦ Tarefas são submetidas ao Gerenciador Central ◦ Quando uma máquina fica ociosa, ela informa ao Gerenciador Central, que providência uma tarefa  Tarefas podem terminar abruptamente ◦ Condor usa checkpointing e migração de tarefas para garantir progresso Prof. Adriano Teixeira de Souza
  • 25.
    Central Manager Execute and Submit Submit Only Execute Only Execute Only Execute Only Execute Only Prof. Adriano Teixeira de Souza 25
  • 26.
    Flock of Condors ◦ Cooperação totalmente descentralizada de Condor pools ◦ Dois pools trocam tarefas através de gateways  Condor-G ◦ Escalonador Condor usa recursos de Condor pools e recursos acessíveis via Globus Prof. Adriano Teixeira de Souza
  • 27.
    Solução completa para aplicações Bag of Tasks  Meu Grid são todas as máquinas que eu posso acessar ◦ Casa perfeitamente com aplicações Bag of Tasks  Arquitetura baseada na Grid Machine Abstraction  Um broker (ou escalonador de aplicações)  Um conjunto de abstrações para esconder do usuário a heterogeneidade do grid Prof. Adriano Teixeira de Souza
  • 28.
    Home Machine Scheduler Grid Machine Abstraction User Globus Grid ... Agent Proxy Script Proxy Globus User GRAM Agent ... Grid Machine Grid Machine Grid Machine Prof. Adriano Teixeira de Souza