Earth
System Grid
Alberto Egon Schaeffer Filho
CMP134 - Introdução ao Processamento Paralelo e
Distribuído
Prof. Philippe O. A. Navaux
As
informações e figuras contidas nesse texto foram obtidas através de documentos de
domínio público disponíveis nos sites ESG, ORNL, NERSC, LANL e NCAR, os quais
são indicados na seção de referências.
Clientes para Análise Distribuída de Dados
Serviço para Gerenciamento de Dados
Distribuídos
Serviço para Transferência de Dados em Alta
Performance
O Earth System Grid (ESG) é um projeto de
pesquisa para a construção de um Grid computacional e de dados a fim de prover
um ambiente poderoso e transparente que possibilitará a nova geração de
pesquisas climáticas [1]. Trata-se de um sistema distribuído para
armazenamento, acesso e descoberta de dados previamente processados resultantes
de simulações climáticas. O projeto é patrocinado pelo Departamento de Energia
dos Estados Unidos (U.S. DOE).
A criação de novos e avançados programas de
simulação irá acelerar a execução de modelos climáticos em torno de 100 vezes
por volta de 2005, em relação à taxa dos modelos climáticos atuais. As
simulações produzirão dezenas de petabytes de dados de saída, o que será
disponibilizado para pesquisadores através de uma rede de diagnósticos e
centros regionais de climatologia. Esses centros, usuários, modelos e dados
serão conectados em um ambiente virtual colaborativo chamado Earth System Grid.

Figura
1 – Centros participantes do projeto ESG
Essa pesquisa é realizada através de uma
parceria entre 6 laboratórios (ANL, LBNL, LLNL, NCAR, ORNL, LANL) e uma
universidade (USC), como pode ser visualizado na figura 1.
O termo "metacomputador" denota um
supercomputador virtual em rede, construído dinamicamente de recursos
distribuídos geograficamente ligados por redes de alta velocidade [3]. A
metacomputação é motivada pela necessidade de acessar recursos não localizados
dentro de um mesmo computador. Entre as características desses sistemas
destacam-se: escalabilidade, heterogeneidade, estrutura imprevisível,
comportamento dinâmico e com múltiplos domínios administrativos. Essas
características combinadas com as necessidades dos pesquisadores climáticos
proporcionaram a construção do Earth System Grid.
A modelagem climática é caracterizada pelo
tamanho das simulações e pelo volume de dados de saída produzidos pelo modelo.
Com a entrada dos computadores com capacidade de processamento da ordem de
teraflops, a capacidade de gerar dados está em sério risco de ultrapassar a
capacidade de arquivá-los e transferi-los de um site a outro. No final de 2002,
havia aproximadamente 75 TB de dados nos laboratórios NCAR, ORNL, LANL, LBNL e
LLNL. No final de 2007, estima-se que haverá 3 PB (3000 TB) de dados nesses
locais.
Devido ao fato desse conjunto de dados ser
grande demais para ser replicado em cada site, uma nova infraestrutura de
compartilhamento é necessária para suportar acesso efetivo a dados e computação
por uma grande comunidade. Nesse âmbito, é proposto o Earth System Grid, uma
nova infraestrutura projetada para suportar colaboração virtual, computação remota,
acesso a dados remotos, e aplicações distribuídas [2].
A disponibilidade do ESG vai mudar o modo
como os pesquisadores trabalham. Os cientistas serão capazes de requisitar
conjuntos de dados complexos através de ferramentas Grid. O Grid irá determinar
onde esse conjunto de dados deve ser calculado, armazenado, processado e
visualizado, usando a combinação mais eficaz de recursos locais e remotos.
Entre os componentes necessários para criar
essa infraestrutura distribuída e colaborativa destacam-se:
-
Computadores com capacidade de
processamento na ordem de teraflops para gerar modelos atmosféricos, oceânicos
e híbridos;
-
Armazenamentos de dados com
capacidade para manter petabytes de dados, e com tempo de acesso rápido;
-
Hardware para rede que permita
que a informação seja transmitida rapidamente, para comunicação audiovisual,
visualização, animação, etc...;
-
Ferramentas para visualização
e processamento de dados tanto para os servidores como para os desktops;
As soluções propostas incluem a rápida
disseminação de dados gerados por sites centrais, e o desenvolvimento de
ferramentas Grid para análise de dados climáticos que permitam acesso
transparente a dados e recursos computacionais remotos. A hierarquia de
componentes tecnológicos que compõem o Earth System Grid é apresentada na
figura abaixo[8]:

Figura
2 - Arquitetura de software do ESG
Atualmente, a maioria das ferramentas para
análise de dados climáticos roda na máquina local do usuário, e não necessita
de recursos externos além dos fornecidos pela própria máquina e/ou rede local.
Infelizmente, esse modo de operação faz com que o usuário fique confinado e
isolado de recursos externos e certamente não é apropriado para os próximos
conjuntos de dados que podem chegar a petabytes. Ao invés disso, são
requisitados clientes Grid para análise de dados que permitirão aos usuários acessar
computadores e visualizar dados a distância como se eles estivessem no mesmo
espaço físico, permitindo assim um substancial aumento da produtividade dos
pesquisadores.
No modelo atual, a análise dos dados é feita
com ferramentas como o PCMDI (Program for Climate Model Diagnosis and
Intercomparison), que executam em parte na máquina local. Porém, atualmente estão em desenvolvimento
portais que permitem a solicitação de análises sobre conjuntos de dados através
da web; dessa forma, é eliminado o requisito de que os clientes tenham qualquer
tipo de software específico em suas máquinas uma vez que toda a interação passa
a ser realizada através do web browser.
![]() |
Figura
3 – Ferramenta de visualização PCMDI (esquerda) e visualização através de Web
Portals (direita).
Nas duas abordagens, o middleware provido
pelo ESG é responsável por selecionar recursos computacionais e de software
para processar a análise, de forma que a solicitação do cliente seja processada
da forma mais eficiente possível.
Em análises distribuídas sobre dados
distribuídos em uma rede, a performance dependerá fortemente da eficiência com
que esses dados serão acessados. As formas típicas de analisar e visualizar
dados climáticos começam por gerar produtos a partir dos dados extraídos de
simulações sobre uma certa região em um determinado período de tempo. Para
armazenar esses produtos, existe um Catálogo de Metadados que mantém o conteúdo
de cada produto, como também sua localização. Quando algum usuário requisitar
algum dado, o catálogo é consultado, e se possuir o produto requisitado, o
mesmo é extraído daí. Caso contrário, os dados serão extraídos do conjunto de
dados original, e o catálogo deverá ser atualizado com o novo produto.
Através da criação de um Catálogo
Distribuído de Metadados, todos os centros participantes do Grid passam a estar
interligados, de forma que o compartilhamento de dados seja transparente.
Quando um programa de análise de dados fizer uma requisição, essa será passada
a um agente local chamado Query Monitor. Ele será responsável por
consultar o catálogo local para descobrir se o dado está no cache local. Se não
for encontrado localmente, o Query Monitor será responsável por tentar
encontrar o dado em catálogos remotos. Nesse momento, serviços de rede providos
pelo Globus[3] também serão consultados para definir o estado corrente da rede
e decidir de onde obter os dados necessários.
Em um primeiro momento, os dados residirão
somente em caches em discos. Após, o mesmo projeto será aplicado, mas um
componente adicional será adicionado, o qual será responsável por mover os
dados de fitas para caches em discos. Nessa estratégia, será empregado um
algoritmo de LRU (Least Recently Used), além de dicas sobre o uso esperado dos
arquivos transferidos.

Figura
4 - Esquema para compartilhamento de dados no ESG
A figura acima apresenta um esquema para o
ESG contendo os módulos distribuídos para coordenação de cache, onde cada um
deles é formado por um Catálogo de Metadados, um Query Monitor e um
Gerenciador de Cache.
Os serviços para transferência de dados em
alta performance permitem que usuários (ou aplicações como o gerenciador de
cache distribuída) expressem especificações para transferências de dados de
forma relativamente abstrata. Para obter alta taxa de transferência sobre WAN's
são usadas técnicas que incluem: uso de múltiplos sockets TCP para o fluxo de
dados, com cada socket sendo gerenciado por uma thread separada; e uso de
blocos de dados de tamanho grande (ao menos 64 KB), lendo e escrevendo ao menos
100 blocos por vez.
Como explicado acima, os clientes para
análise de dados são projetados de forma que a performance de análises
complexas poderá ser otimizada pelo particionamento da análise através de
sistemas locais e remotos. O serviço proporciona mecanismos para localização de
computadores e dados, determinar características de disponibilidade e
performance, localização, construção, ou transferência de um executável remoto,
inicialização de computações remotas, e transferência de dados entre
componentes.
Os serviços Grid definidos acima são
construídos sobre softwares existentes (especialmente Globus) que fornecem
serviços de baixo nível para a construção de middlewares grid. Contudo, um
grupo está encarregado especificamente de alterar os serviços de segurança
providos pelo Globus. Apesar do Globus fornecer uma excelente base para
autenticação no ESG (sign-on único, interoperabilidade com mecanismos de
segurança locais, etc), algumas extensões são necessárias para tratar questões
específicas que ocorrem em alguns ambientes de segurança máxima (como em alguns
laboratórios). Entre elas destacam-se firewalls e requisitos para controle
local de credenciais.
A construção da rede física para conectar os
pesquisadores climáticos utiliza uma combinação de redes:
-
vBNS - Very High Performance
Backbone Network Service;
-
NTON - National Transparent
Optical Network;
-
ESnet - Energy Sciences Network;
-
MREN - Metropolitan Research
& Education Network;
A proposta é combinar essas 4 redes criando
um ambiente DOE/acadêmico heterogêneo. Além disso, essa rede possui uma larga
escala de banda variando de OC-3 (vBNS e MREN), com capacidade de 155 Mb/s, a
OC-48 (NTON) com capacidade de 2.5 Gb/s.
Alguns dos recursos computacionais
disponíveis nos centros de pesquisa envolvidos no projeto são apresentados na
tabela abaixo:
|
ORNL
(Oak Ridge National Laboratory) |
* Phoenix: Cray X1 com 32 processadores
vetoriais multi-streaming. Cada processador tem uma cache de 2 MB e 4
processadores formam um nodo com 16 GB de memória compartilhada. * Cheetah: Um IBM p690 de 27 nodos, cada um com 32 processadores Power4 de 1.3 GHz. Os nodos possuem quantidade variável de memória, podendo ser 8, 32, ou 128 GB de memória. |
|
LANL (Los Alamos National Laboratory) |
* SGI Origin 2000 com 2048 processadores de 250 MHz. O sistema tem uma velocidade de pico de 1-teraflop e 512 GB de memória. Aproximadamente um terço dos processadores, cerca de 640, são devotados à modelagem atmosférica, oceânica e climática. |
|
NCAR
(National Center for Atmospheric Research) |
* Bluesky: Cluster IBM 1600 com processadores POWER4 de 1.3 GHz, na seguinte configuração: 92 nodos de 8 processadores, 13 nodos de 32 processadores, nodos separados para logins de usuários. Cada processador tem uma memória de 2 GB, compartilhada entre os processadores do mesmo nodo. |
|
LBNL/NERSC
(National Energy Research Scientific Computing Center) |
* Seaborg: IBM RS/6000 SP tem 416 nodos de
16 processadores POWER3 (totalizando 6656 processadores) com uma performance
de pico de 10 teraflops e memória agregada de 7.8 terabytes. * PDSF (Parallel Distributed Systems Facility): Um cluster Linux de 390 processadores. |
|
ANL (Argonne National Laboratory) |
* SGI Origin 2000 com 128 processadores e um IBM SP de 150 nodos; |
Esta seção tem por finalidade fornecer algumas
informações sobre um dos mais poderosos supercomputadores disponíveis nos
laboratórios que suportam o projeto: trata-se do Cray X1. Esta máquina foi
entregue em março de 2003 no Laboratório Nacional de Oak Ridge (ORNL), e
através de um programa de parceria entre o laboratório e a Cray serão avaliados
os processadores, memória e escalabilidade da arquitetura e do ambiente de
software do X1. Esse processo tem por objetivo determinar sua eficácia na
solução dos mais desafiadores problemas científicos.
O Cray X1 é o primeiro computador americano
a oferecer processamento vetorial e processamento massivamente paralelo em uma
única arquitetura. O sistema foi especificamente projetado para aplicações
científicas.

Figura
5 – Supercomputador Cray X1 no laboratório de Oak Ridge
O Cray X1 do laboratório de Oak Ridge foi
nomeado Phoenix, e sua configuração atual apresenta com 32 processadores
vetoriais multi-streaming, sendo que cada processador tem uma cache de 2 MB, e
4 processadores formam um nodo com 16 GB de memória compartilhada. A taxa de
transferência da memória é bastante alta, chegando a atingir aproximadamente a
metade da taxa de transferência da cache. Na metade de 2003, o computador
passará a contar com 128 processadores, e esse número chegará a 256 até o final
de setembro [6]. A figura 5 apresenta uma pequena fração do sistema Cray em
ORNL, que será formado por 8 gabinetes (atualmente conta com apenas um, além do
gabinete de IO). Em princípio, a configuração empregada no laboratório
utilizará apenas metade da taxa de ocupação dos gabinetes, que podem abrigar
até 64 processadores. Adicionalmente, o computador (com 256 processadores) pode
atingir uma taxa de 3.2 teraflops (3.2 trilhões de cálculos por segundo), e seu
custo foi de 30 milhões de dólares.
A configuração máxima do supercomputador X1
é de 64 gabinetes, abrigando 4096 processadores. Se as coisas correrem como
esperado, estima-se que ele ultrapasse o computador japonês Earth Simulator,
que hoje é o computador mais rápido do mundo, com 40 trilhões de operações por
segundo [10].
Nesse trabalho foi apresentado o Earth
System Grid, um Grid computacional e de dados para pesquisas climáticas. Nesse
âmbito, suas principais funções são o processamento distribuído e transparente
de análise sobre dados climáticos, além do compartilhamento desses dados entre
os laboratórios. Entre os centros de pesquisa envolvidos no projeto estão 6
laboratórios e uma universidade dos Estados Unidos. Além da arquitetura de
software do ESG, apresentando suas principais características, foram
apresentados alguns dos principais recursos computacionais disponibilizados
pelos centros de pesquisa que suportam o projeto. Por último, algumas
características do supercomputador Cray X1 foram discutidas, sendo esse um dos
principais supercomputadores envolvidos no projeto.
[1] ESG Group. Earth System Grid - Turning
Climate Datasets into Community Resources, AMS2002.
[2] Ian Foster, Don
Middleton & Dean Williams. The Earth System Grid (ESG), DOE SciDAC PI
Meeting, Napa, CA 10-11 March 2003 (presentation).
[3] Ian
Foster & Carl Kesselman. Globus: A metacomputing infrastructure toolkit.
The International Journal of Supercomputer Applications and High Performance
Computing, 11(2):115-128, Summer 1997.
[4] http://www.earthsystemgrid.org. Último acesso em 06/06/2003.
[5] http://www.nersc.gov/aboutnersc/facilities.html.
Último acesso em 06/06/2003.
[6] http://www.ccs.ornl.gov/ccs.html.
Último acesso em 09/06/2003.
[7] http://www.scd.ucar.edu/computers/index.html.
Último acesso em 09/06/2003.
[8] DOE
Next Generation Internet. Prototyping an Earth System Grid. Response to Program
Notice 99-09. March 31, 1999. Disponível
em http://www.lanl.gov/radiant/pubs/grid/climate_final.pdf.
[9]
Power4 System Microarchitecture. Disponível
em http://www-1.ibm.com/servers/eserver/pseries/hardware/whitepapers/power4.html.
Último acesso em 09/06/2003.
[10] http://www.knoxnews.com/kns/news_columnists/article/0,1406,KNS_359_1971483,00.html.
Último acesso em 11/06/2003.
[11] http://www.cray.com/products/systems/x1/index.html.
Último acesso em 11/06/2003.