Como já dito no último post, a função dos clusters é aumentar a capacidade de processamento através da divisão de tarefas entre vários processadores. Isso pode dar a impressão de que clusters em geral são muito caros, viáveis apenas a grandes centros de pesquisa e empresas. Desde a criação dos clusters Beowulf, isso deixou de ser verdade, como é possível perceber a seguir.
O que é:
Criado em 1994, no CESDIS (Center of Excellence in Space
Data and Information Sciences), uma contratante da NASA, por Don Becker e
Thomas Sterling, o primeiro cluster Beowulf foi construído com 16 processadores Intel DX4, conectados por ethernet
de 10MBit/s. Seu nome é uma referência ao
poema épico inglês Beowulf, em que o protagonista teria a força de trinta
homens.
Pelos processadores usados no primeiro Beowulf – Intel DX4,
também conhecido como i486, uma linha comercial comum na época – é possível
perceber que o custo é relativamente baixo em relação à performance. Graças a
esse custo-benefício, esse tipo de cluster é frequentemente usado em
laboratórios de universidades, para a pesquisa científica.
Neste tipo de cluster, um computador mestre, denominado front-end, controla os
demais, chamados de back-end, geralmente através de redes Ethernet. Frequentemente é usada alguma
variação de Linux, como o MOSIX, por questões de preço, independência e
estabilidade, enquanto a
comunicação entre os nós é feita por bibliotecas como a PVM (Parallel Virtual
Machine) ou a MPI (Message Passing Interface).
Vantagens e desvantagens:
Graças à simples possibilidade de acrescentar novos componentes,
os sistemas Beowulf são escaláveis, isto é, podem acompanhar a evolução das
necessidades do usuário.
Além disso, a manutenção é relativamente simples, já que, no evento da falha
de um dos nós, a solução é simplesmente substituir o nó, e o sistema utilizado
é open source – permitindo a livre adaptação de suas características. Isso, junto a um custo muito baixo, por fazer uso de um sistema gratuito e de
componentes baratos e de fácil obtenção, torna o Beowulf um tipo de cluster bastante acessível.
Por outro lado, apresenta latência superior e largura de banda inferior a outras arquiteturas, exigindo algoritmos que sejam tolerantes a isto. Como este problema existe porque o hardware de rede usado geralmente não foi criado com este intuito em específico, existe a possibilidade de atenuá-lo usando outras opções mais focadas a esse uso, mas isso implica em custos mais altos.
Entre os próximos posts, falaremos sobre outros tipos de cluster.
Referências:
"About Beowulf", pelo Pickett Group da UC Davis - http://yclept.ucdavis.edu/Beowulf/aboutbeowulf.html
"Clusters Beowulf", por Hugo Emanuel Gonçalves Teixeira, Maria João Almeida de Sá Barros e Paulo Jorge Marques Coelho - http://www.cesarkallas.net/arquivos/apostilas/redes/beowulf_clusters.pdf
"Uma Abordagem para Alta Demanda de Processamento Utilizando Cluster de Beowulf", por Líliam Barroso Leal e Francisco Xavier de Vasconcelos Filho - http://www.pop-pi.rnp.br/system/uploads/article/archive/1/Lilian_ClusterdeBeowulf_2011.pdf
"Cluster: conceito e características", por Info Wester - http://www.infowester.com/cluster.php
O legal é que mesmo sendo utilizado a tanto tempo ele não tem o conceito de ultrapassado!
ResponderExcluirEste comentário foi removido pelo autor.
ResponderExcluir