(artigo completo)
Você pode fazer sua parte para ajudar a resolver questões globais como controle de doenças e previsão do tempo simplesmente oferecendo os recursos de seu computador para resolver problemas computacionais complexos. O conceito, conhecido como computação voluntária, beneficia universidades e instituições de pesquisa em todo o mundo, que desenvolvem projetos que freqüentemente têm objetivos humanitários, tais como prever e controlar a propagação da malária na África.
Para participar, você deve baixar e instalar um software cliente, que periodicamente baixa tarefas para o seu computador processar utilizando ciclos de CPU ociosos, memória e espaço em disco. Depois que uma tarefa for concluída, seu computador envia os resultados de volta para os computadores coordenadores do projeto para fazer parte da solução completa. Através da utilização de computadores em todo o mundo, os projetos envolvidos ganham poder de computação enorme que de outra forma estariam muito além de seu alcance, e, como resultado, atingem suas metas muito mais rapidamente. Essa forma de computação foi popularizada com os projetos SETI@home e Folding@home, mas muitos outros projetos estão disponíveis no momento, com objetivos variando de encontrar cura para doenças humanas a renderização de animações 3-D. Vamos analisar algumas das opções que estão disponíveis para computação voluntária em Linux. .
BOINC
O Berkeley Open Infrastructure for Network Computing (BOINC) é uma plataforma completa para computação distribuída que inclui tanto software cliente avançado para permitir que usuários participem de computação voluntária, quanto software servidor para organizações que desejam conduzir tais projetos. Você pode até mesmo criar seu próprio projeto de computação voluntária, se tiver um servidor Linux, as habilidades e os recursos humanos para conduzi-lo. Muitos projetos de computação voluntária ao redor do mundo utilizam a plataforma BOINC, incluindo a World Community Grid. A lista de projetos do BOINC e projetos da World Community Grid disponíveis é longa o bastante para satisfazer o desejo de qualquer um realizar alguma coisa útil.
Para executar o cliente BOINC, você precisará no mínimo de um processador Pentium 500MHz, 64MB de RAM e 50MB de espaço em disco. O cliente BOINC está disponível a partir dos repositórios de algumas distribuições Linux, como o Gentoo, Fedora, Debian e Ubuntu. No Debian e no Ubuntu, use o Synaptic para instalar o cliente boinc e o gerenciador de pacotes boinc, ou digite na linha de comando:
$ sudo apt-get install boinc-client boinc-manager
Este comando instala o cliente BOINC como um serviço que é executado em segundo plano. Se o cliente BOINC não está em seu repositório, você pode baixá-lo a partir do website. Siga as instruções nas notas de lançamento para instalá-lo.
Quando instalado no Ubuntu, o gerenciador BOINC pode ser iniciado a partir de Aplicações -> Acessórios -> Gerenciador BOINC. Ao contrário das versões Windows e Mac do cliente BOINC, a versão Linux não vem com a opção de um protetor de tela. Todo o trabalho é feito de forma silenciosa e discreta em segundo plano, esteja seu protetor de tela executando ou não.
Você pode ingressar em um projeto executando o gerenciador BOINC e, em seguida, selecionando Advanced View -> Advanced -> Atach to Project. Digite a URL do projeto no qual pretende ingressar, seu endereço de e-mail e uma senha. Se tudo correr bem, você terá ingressado no projeto. Algumas tarefas iniciais do projeto serão baixadas, e seu cliente BOINC começará o processamento.
Configure o modo como o seu cliente BOINC deve usar os recursos do seu computador acessando a Janela de Preferências no gerenciador BOINC. Aqui você pode limitar as horas em que o cliente é executado, determinar quanto tempo de processador deve usar, fixar limites quanto à quantidade de espaço em disco e memória que o cliente está autorizado a usar e determinar quanto o tráfego de rede deve gerar.
Você pode usar um gerenciador de contas para doar os recursos de seu computador para trabalhar em mais de um projeto ao mesmo tempo. Há dois disponíveis: BOINC Account Manager e GridRepublic. Um gerente de contas é um website que lhe permite gerenciar as preferências de seu cliente BOINC, escolher de quais projetos você participará e ver as estatísticas sobre o trabalho realizado por seus clientes. Você também pode configurar sua conta para ser executada em vários computadores, cada um com um conjunto diferente de preferências sobre como e quando os recursos serão utilizados.
Uma vez criado seu gerenciador de contas, você pode configurar o gerenciador BOINC local no seu computador para se conectar a ele. O cliente BOINC em seu computador então usa as preferências que você configurou para ele no gerenciador de contas para determinar o modo como ele deve ser executado. Isso é muito bom se você instalar o cliente BOINC em computador de trabalho e computador pessoal, pois lhe fornece um lugar central para gerenciar como os recursos de cada computador são usados e ver como você está contribuindo para o avanço do projeto global.
Eu configurei meu cliente BOINC para se iniciar após três minutos de inatividade, de modo a não interferir em nada no meu trabalho normal. Mesmo depois de começar a executar tarefas ainda sou capaz de usar o OpenOffice.org Writer e o GIMP, navegar pela Web e ouvir música sem nenhuma perda notável de desempenho. Quando a demanda de processador e memória atingem um certo limite, o cliente BOINC coloca-se em um estado suspensão até que se detecte três minutos de tempo ocioso. Eu nem sequer notaria que ele está lá, se não fosse pelo meu painel de monitoramento de sistema mostrando um aumento na utilização do processador, enquanto o cliente BOINC está executando.
Folding@Home
O cliente para Linux do Folding@home é uma aplicação de linha de comando somente, não oferecendo interface gráfica ou opções de protetor de tela como acontece com as versões para Windows e Mac. Ele executa apenas um projeto cujo alvo é entender o dobramento de proteínas, o dobramento incorreto e doenças relacionadas. A instalação envolve baixar o binário, dando permissão de execução e executá-lo. O wiki Folding@home oferece instruções excelentes.
Na primeira vez que você executa o cliente, ele pergunta uma série de questões de configuração, incluindo qual a quantidade de memória que ele deve usar e qual a prioridade que ele deve ter ao executar. Então ele baixa a primeira de suas tarefas e começa a processá-la.
O cliente do Folding@home não é tão configurável quanto o cliente BOINC, e na minha máquina, ele roda continuamente, não importando a carga que ponho no meu computador. Ele não vai para um estado de suspensão quando uso aplicações de processamento ou memória intensivos. Entretanto, não notei uma degradação discernível de desempenho enquanto executava tarefas do dia-a-dia como processamento de texto, navegação na internet e ouvir música.
distributed.net
O cliente distributed.net também é uma aplicação de linha de comando no Linux. Ele participa de apenas dois projetos: encontrar regras ótimas de Golomb e quebrar o algoritmo de criptografia RC5-72.
Quando o cliente é executado pela primeira depois da instalação, você é apresentado a uma série de opções do configuração. Aqui você provê o seu endereço de e-mail para identificá-lo dentro do projeto, determina se o cliente deve rodar quando o computador está usando baterias, cria uma lista de aplicações que, ao executar, devem pausar o cliente, configura a prioridade do cliente, determina o número de processadores para usar e configura as opções de rede, dentre outros.
De acordo com o monitor do sistema, o cliente distributed.net usa todos os ciclos de ambos os meus processadores disponíveis. Ele alcança o limite máximo de ambos os processadores e não vai para um estado de suspensão quando começo a usar aplicações. Surpreendentemente, quando o monitor do sistema relata que o cliente usa 95%-100% do processador não noto qualquer degradação no desempenho geral da máquina enquanto uso aplicações do dia-a-dia. Entretanto, o analisador de uso do disco Baobab demora mais tempo que o normal para examinar o meu sistema de arquivos.
Considerações de Segurança
A computação voluntária dá a aplicações externas acesso aos recursos do computador, então você precisa estar ciente de quaisquer implicações na segurança que isto possa envolver. Folding@home assegura aos seus usuários que tomem todas as medidas possíveis para manter a segurança, incluindo o uso de assinaturas digitais de 2048 bits em todos os dados que entram e saem de seu computador. distributed.net , por outro lado, abertamente admite que seu cliente tem sido maliciosamente usado como trojans para infectar computadores. A página do BOINC sobre assuntos de segurança descreve alguns dos possíveis perigos que você deve estar ciente. A companhia tenta discutir cada um desses casos, e usa a sua chave pública de encriptamento para se proteger de vírus. Entretanto, BOINC também admite que “os participantes precisam entender que quando eles se juntam a um projeto BOINC, eles estão confiando a segurança de seus sistemas àquele projeto.” Obviamente, é benéfico para você pesquisar os clientes e projetos que você deseja se juntar antes de participar.
Conclusão
Para mais informações em computação voluntária confira o site GridCafe, que discute outras formas de computação distribuída, incluindo algumas opções comerciais.
Todos os clientes discutidos neste artigo permitem a você participar de computação voluntária no Linux. O cliente Folding@home contribui com trabalho para uma causa nobre: pesquisa para o tratamento de doenças relacionadas a proteínas. Dos clientes listados aqui, é o menos configurável, mas no meu computador, ele causou pouco impacto na minha experiência de computação desktop. O cliente distributed.net é focado na resolução de problemas matemáticos. Eu o configurei para usar ambos os processadores, e ele os usou intensivamente, mas ainda me permitiu usar minhas aplicações do dia-a-dia com pequeno impacto no desempenho. Por facilidade de instalação e uso, não se pode ganhar do cliente do BOINC. Sua disponibilidade em alguns repositórios de software significa que você pode instalá-lo em uma configuração suportada sem grandes problemas. Ele fornece uma interface gráfica para configurar as opções do cliente e permite que usuários o configurem para se adaptar às limitações de recursos da máquina. Finalmente, a quantidade de projetos disponíveis para este cliente torna fácil participar de computação voluntária.
Texto extraído de http://www.linux.com/feature/130467
Tradução: Leandro Marques, Danillo Neves, Humberto Henrique (orientador A. Meireles/Texto Livre)
Veja outros envios de acris
Comentarios
Comentarios estao desabilitados neste artigo.
Comments are closed.