Você
espeta seu computador na tomada, liga o bicho e pouco depois põe-se
a trabalhar. Para a máquina, não importa se você
está redigindo uma tese de doutorado sobre física quântica
ou ouvindo um MP3 da Eguinha Pocotó: sua faina é sempre
a mesma, processar dados (e por paradoxal que pareça, permitir
que você ouça a Eguinha Pocotó exige mais dela que
editar sua tese).
Pense um pouco: a capacidade de processamento da máquina você
sabe que vem de seu microprocessador, ou CPU. Mas a energia que a alimenta,
vem de onde?
Para você, pouco importa. Tudo o que você quer é
que seu micro funcione, suas lâmpadas acendam, sua geladeira gele
e seu forno elétrico esquente. Mas para além de sua tomada
jaz um notável sistema de distribuição, uma intrincada
malha que permite transportar até o Rio Grande do Sul a energia
gerada em Paulo Afonso quando sobra no Nordeste e derivar para o Maranhão
a energia gerada em Itaipu quando cai o consumo no Sudeste. Em resumo:
esteja você onde estiver, seu micro pode receber energia de qualquer
parte do Brasil. E em questão de minutos a fonte pode ser alterada
por um sofisticado sistema de gerenciamento que está sempre monitorando
oferta e demanda e encaminhando a energia de onde está sobrando
para onde está faltando. Sistemas em malha (grid systems)
funcionam assim.
Mas voltemos a seu micro. E ao meu. Imagine que você está
conectado à Internet enquanto ouve a Ária da Corda de
Sol, digitaliza uma foto, examina um vídeo e edita um pesado
arquivo gráfico. Enquanto isso eu, também conectado à
Internet, estou aqui batucando em meu teclado essas mal traçadas.
Sua máquina, coitada, mal dá conta do recado e parece
funcionar em câmara lenta, tal a demanda sobre sua CPU. A minha,
enquanto isso, leva uma tremenda boa vida processando as parcas idéias
que gotejam lentamente de meus cansados neurônios. Quer dizer:
sobra capacidade de processamento aqui enquanto falta aí. Que
tal chupar através da Internet um bocado de ciclos
de máquina de minha CPU para aliviar a labuta da sua? Como aqui
há capacidade de sobra para a tarefa que está sendo executada,
eu nem sequer perceberia. Mas você notaria claramente a diferença
no desempenho de seu micro.
Se nossas máquinas estivessem ligadas em malha (grid),
isso não somente seria possível como perfeitamente natural.
Desviar capacidade de processamento de máquinas folgadas
para suprir a demanda das assoberbadas seria tão simples como
desviar energia nos sistemas de distribuição em malha.
Saber a origem da capacidade de processamento seria tão irrelevante
quanto saber de onde vem a energia. O sistema simplesmente distribuiria,
via Internet, a capacidade de processamento de onde estivesse sobrando
para onde estivesse faltando. E como as máquinas estariam conectadas
em todo o planeta, sempre haveria algumas com capacidade sobrando nas
altas madrugadas americanas para suprir a demanda dos micros funcionando
no febril horário comercial asiático. Ou nas madrugadas
asiáticas e horário comercial europeu. E assim por diante.
Parece um sonho? Pois não é. A interconexão maciça
de processadores é uma tecnologia emergente em pleno desenvolvimento.
Chama-se grid computing (computação em malha)
e há diversas organizações, privadas, acadêmicas
e governamentais, ativamente empenhadas em seu desenvolvimento. Em uma
delas, o GRID Infoware, ou Grid Computer Information Centre (<www.gridcomputing.com/>),
uma organização dirigida pelo Dr. Rajkumar Buyya, encontra-se
farta documentação sobre o assunto. Em outra <http://swradio.omg.org/workshop/ref/Grid.htm>),
uma página hospedada no sítio do OMG (Object Management
Group), há uma rica coleção de atalhos (links)
para sítios exclusivamente dedicados ao tema.
Mas afinal, o que é exatamente grid computing? Segundo
o Dr. Buyya, Grid é um tipo de sistema paralelo e distribuído
que permite o compartilhamento, seleção e agregação
de recursos autônomos geograficamente distribuídos,
de forma dinâmica e em tempo de execução, em função
da disponibilidade, capacidade, desempenho, custo e necessidades de
qualidade-de-serviço do usuário. Uma
definição tecnicamente irrepreensível mas um tanto
complicada. Simplifiquemo-la, pois: Grid é um jeito de
desviar capacidade de processamento de máquinas onde ela sobra
para máquinas onde ela falta na hora em que ela é necessária.
Assim ficou mais fácil. E se você quiser uma explicação
detalhada, baixe o artigo The Anatomy of the Grid de Foster,
Kesselman e Tuecke em <www.globus.org/research/papers/anatomy.pdf>
e divirta-se.
Embora revolucionária, a idéia não é nova.
Nasceu há cerca de dez anos, quando pesquisadores perceberam
que os cálculos exigidos por seus trabalhos acadêmicos
demandavam caríssimos supercomputadores enquanto a seu redor
havia centenas, talvez milhares de máquinas burocraticamente
sub-utilizadas. Por que não lançar mão de todo
esse poder de processamento? E começaram a buscar formas de fazê-lo
(veja o artigo de Emmanuelle Delsol em <www.01net.com/article/205794_a.html>).
O pioneiro foi o laboratório de Argonne, em Illinois, EUA, que
se dedicou a pesquisar meios para identificar recursos e suas disponibilidades,
formas de acesso a esses recursos, ordenamento de solicitações,
taxas de transferências, em suma, as bases elementares para o
estabelecimento de uma malha de computação. De seus esforços
nasceu o Globus Project (<www.globus.org/>)
que desenvolveu o Globus Tooklit, primeiro software capaz de gerenciar
uma malha de computadores, hoje na versão 3.0. Depois, a ele
se juntaram gigantes do porte da IBM, HP e Sun. E a coisa foi para a
frente.
A computação em malha (grid computing) já
é uma realidade em algumas corporações, universidades
e agências governamentais, particularmente as americanas. Lá,
os ministérios de Defesa e Energia e a NASA foram os pioneiros,
interconectando 21 centros de pesquisas em uma única malha. O
resultado foi a possibilidade de entrar em um conglomerado de mais de
mil processadores compartilhando recursos. Há dois anos, a indústria
de medicamentos Bristol-Myers Squibb testou uma plataforma piloto de
computadores em malha e o First Union National Bank, na Carolina do
Norte, EUA, já está usando computadores em malha para
seu processamento financeiro. E hoje existem empresas como a IBM, Sun
e Platform Computing dedicadas a estabelecer sistemas locais em malha
que exibem uma carteira de centenas de clientes. Mas ainda há
obstáculos a serem vencidos.
Um deles, absolutamente vital, é a necessidade de padronização.
E nem é preciso explicar a razão pela qual ela é
tão importante: basta lembrar que o objetivo é interligar
em nível planetário alguns milhões de máquinas
usando diferentes sistemas operacionais em diferentes redes. Por isso
espera-se que ainda esse ano venha à luz a OGSA, Open Grid Services
Architecture, para pôr ordem no caos. Uma ordem baseada em um
princípio singelo: criar as bases de um ambiente no qual as funções
de um sistema em malha sejam tratadas como web services.
Não sei se você percebeu os desdobramentos disso. Mas certamente
perceberá quando souber que um dos maiores interessados no assunto
é o W3C (World Wide Web Consortium, em <www.w3c.org/>),
a instituição dedicada ao desenvolvimento da Internet.
E porque será que o W3C estaria tão interessado? Simples:
hoje em dia a computação em malha está voltada
para o aumento da produtividade de corporações, otimizando
seus recursos. Mas assim que forem vencidos obstáculos como o
estabelecimento de sólidos critérios de segurança,
as baixas taxas de transferência atuais e o ordenamento de prioridades
de acesso, o amadurecimento dos padrões de grid computing transformará
a atual WWW na GGG, ou Great Global Grid, uma imensa malha global que
se comportará como um descomunal computador.
Ela será uma coisa só, uma supermáquina que transferirá
maciça e instantaneamente capacidade de processamento de onde
ela estiver sobrando para onde ela for necessária e transformará
cada micro ligado a ela na porta de acesso a um supercomputador.
Não é coisa para já. Os mais otimistas falam em
dez anos. Para os pessimistas, é coisa de vinte ou mais. Mas
ninguém duvida que a GGG está prestes a nascer.
É esperar para ver. E se maravilhar. Ou apavorar, dependendo
de seu grau de paranóia...
B.
Piropo