La Plataforma Mundial BOINC

BOINC 

Berkeley Open Infrastructure for Network Computing


La Infraestructura Abierta de Berkeley para la Computación en Red (en inglés Berkeley Open Infrastructure for Network Computing), o BOINC por sus siglas en inglés, es una infraestructura para la computación distribuida, desarrollada originalmente para el proyecto SETI@home, pero que actualmente se utiliza para diversos campos como física, medicina, climatología, biología, química, etc.

La intención de esta plataforma es obtener una capacidad de computación enorme utilizando computadores personales alrededor del mundo. Los proyectos en los que trabaja este software tienen un denominador común, y es que requieren una gran capacidad de cálculo.

BOINC ha sido desarrollado por un equipo ubicado en Space Sciences Laboratory en la Universidad de California en Berkeley, liderado por David P. Anderson, que también lidera SETI@home. Como una plataforma "quasi-supercomputador", BOINC tiene alrededor de 527 880 computadores activos (hosts) alrededor del mundo procesando en promedio 5,549 petaFLOPS (11 de marzo de 2011), que supera el poder de cómputo del supercomputador más rápido existente (el Tianhe-I de China, con un ritmo de procesamiento de 2,566 petaFLOPS) BOINC es financiado por la National Science Foundation (NSF) a través de las becas SCI/0221529, SCI/0438443 y SCI/0721124.

La plataforma puede correr bajo varios sistemas operativos, incluyendo Microsoft Windows y varios sistemas Unix-like incluyendo Mac OS X, Linux y FreeBSD. BOINC es software libre y disponible bajo la licencia GNU LGPL.






HISTORIA

BOINC fue originalmente desarrollado para administrar el proyecto SETI@home.

El cliente de SETI original era un programa diseñado exclusivamente para SETI@home. Como uno de los primeros proyectos de computación distribuida, nunca fue diseñado con niveles altos de seguridad. Algunos miembros intentaban engañar al proyecto para ganar más "créditos", mientras otros simplemente enviaban resultados totalmente falsos. BOINC fue diseñado, en parte, para combatir esta brecha en la seguridad.

El proyecto BOINC empezó en febrero del 2002 y su primera versión fue publicada el 10 de abril de 2002. El primer proyecto basado en BOINC fue Predictor@home, lanzado el 9 de junio de 2004.







DISEÑO Y ESTRUCTURA

BOINC está diseñado para ser una plataforma libre para cualquiera que quiera crear un proyecto de computación distribuida.

En esencia, BOINC es un software que puede utilizar los ciclos que no se ocupan de la CPU o GPU de un computador para hacer cómputos científicos - lo que un individuo no ocupa de su computador, BOINC lo utiliza. A finales del 2008, el sitio web oficial de BOINC anunció que NVIDIA (un fabricante importante de GPUs) había desarrollado un sistema llamado CUDA que ocupa las GPUs para el cómputo científico. Con la ayuda de NVIDIA, algunos proyectos basados en BOINC (como SETI@home, MilkyWay@home) ahora tienen aplicaciones que corren en las GPUs de NVIDIA ocupando CUDA. En octubre del 2009, BOINC agregó soporte para la familia de GPUs ATI/AMD. Estas aplicaciones corren desde 2x a 10x más rápido que las aplicaciones que corren solamente en la CPU.

BOINC consiste en un servidor y un cliente que se comunican para distribuir, procesar, y retornar unidades de trabajo (mejor conocidas en inglés como workunits).







INTERFAZ DE USUARIO

BOINC puede ser controlado a distancia mediante llamadas a procedimiento remoto (RPC), desde la línea de comandos, o desde el administrador de cuenta de BOINC.

El Mánager de BOINC actualmente cuenta con 2 modos de "vista": La Vista Avanzada (Advanced View) y la GUI Simplificada (Simplified GUI). La Vista Grid fue borrada desde la versión 6.6.x por ser redundante.

La apariencia de la GUI Simplificada puede ser personalizable mediante skins y cada usuario puede hacer su propio diseño.


ADMINISTRADORES DE CUENTAS

Un administrador de cuenta de BOINC es una aplicación que administra múltiples cuentas de proyectos BOINC a través de múltiples computadores y sistemas operativos.

Los administradores de cuenta (Account managers en Inglés) han sido diseñados para los que son nuevos en BOINC o tienen varios computadores trabajando para varias cuentas. El concepto de administrador de cuentas fue ideado y desarrollado por GridRepublic junto con BOINC. Entre los administradores actuales se encuentran:

BAM! (BOINC Account Manager) (El primero que hubo, publicado el 30 de mayo de 2006)

GridRepublic (Sigue la idea de mantener todo simple y ordenado)

Dazzler (Account Manager Opensource, pensado para gestionar recursos propios)







SISTEMA DE CREDITOS

El sistema de créditos está diseñado para evitar las trampas en la validación de resultados para la posterior entrega de créditos falsos. Existen varias razones por la que es necesario un sistema fiable de créditos:

El sistema de créditos sirve para asegurarse que los resultados obtenidos son tanto científicamente como estadísticamente válidos.
Los proyectos de computación distribuida son casi enteramente un esfuerzo voluntario. Por esta razón los proyectos son dependientes de un conjunto mezclado de variables complejas de nuevos usuarios, usuarios veteranos, y usuarios retirados.


SOFTWARE

El software requerido para donar tiempo de proceso (prestar la unidad de procesamiento), debe ser descargado desde la página oficial de BOINC, donde se puede elegir la plataforma de la descarga y el tipo de arquitectura que posea el hardware. También se puede disponer del código fuente del software cliente, para modificarlo a gusto del usuario.

Una vez descargado el software, el usuario debe suscribirse a un proyecto según sea su interés, tan sólo registrando su correo electrónico y una contraseña para acceder a sus estadísticas. Al hacerlo, se abrirá una ventana en el navegador y se podrá inscribir a un grupo de usuarios o personalizar la cuenta en el proyecto, para determinar el tiempo de funcionamiento o el espacio de disco duro que dispone el proyecto en el equipo del usuario.







PROYECTOS QUE USAN BOINC

Los Proyectos que usan BOINC son independientes. BOINC no controla ni endosa ningún proyecto.

Proyectos activos

Economía
Bitcoin — Criptomoneda libre, no dependiente de ningún gobierno, empresa o entidad. En 2012 la red de computación distribuida más potente del mundo. Con una capitalización de miles de millones de dólares.

Biología
Malaria Control — para buscar el modelo estocástico de la epidemia y la historia de Plasmodium falciparum malaria.
GPUGRID.net — realiza simulaciones de biología molecular a átomo-entero, diseñado para GPUs con CUDA.
POEM@home — modela proteínas ocupando el dogma de Anfinsen.
Rosetta@home — orientado hacia la investigación básica sobre la mejora de la precisión y robustez de los métodos de la proteómica.
Folding@home* — simula el plegamiento proteico usando dinámica molecular. *Nota: Hasta el momento no ocupa BOINC como plataforma.

Ciencias de la tierra
Climateprediction.net — intentar predecir el clima del Siglo XXI.

Criptografía
Enigma@Home — pretende decodificar tres mensajes que la máquina Enigma codificó en 1942.

Física y Astronomía
Einstein@home — usa la información del LIGO y GEO 600 para buscar ondas gravitacionales.
Leiden Classical — grid de dinámica clásica para cualquier científico o estudiante de ciencias de la Leiden University.
LHC@home — apoyo a los científicos del CERN para la simulación de partículas en el Large Hadron Collider.
Milkyway@home — búsqueda en el potencial gravitatorio de la vía láctea usando datos de Sloan Digital Sky Survey.
SETI@home — búsqueda de inteligencia extraterrestre (SETI).
Astropulse — búsqueda de agujeros negros, pulsares, y SETI.
Spinhenge@Home — modelos de espin en las partículas elementales usando los principios de la mecánica cuántica.

Matemáticas
PrimeGrid — búsqueda de Primos titánicos.
SZTAKI Desktop Grid — búsqueda de sistemas de números binarios generalizados.

Proyectos multi-aplicación
Ibercivis
World Community Grid — avanzar en el conocimiento de las enfermedades humanas.







Proyectos en desarrollo

Estos proyectos se consideran estar en su fase alfa o beta.

Arte
BURP — desarrollo de un sistema público para crear animaciones en 3D.
RenderFarm@Home — distribución pública para renderizar.

Física y Astronomía
Cosmology@Home — busca el modelo que mejor describe nuestro universo y encuentra el módelo cosmológico que mejor se ajusta con los datos actuales.
Orbit@home — monitoriza el peligro de impacto que tienen los objetos cerca de la tierra. (aún no está abierto).
LHC@home Alpha — test alfa oficial de LHC@Home.
Pirates@home — actualmente se usa para testear software para el posible proyecto: Interactions in Understanding the Universe.
SETI@home beta — es el espacio donde se prueban los proyectos de SETI@home que van a ser públicos. Actualmente se usa para testear Astropulse.
PlanetQuest — encuentra cuerpos celestes sin descubrir en nuestra galaxia.

Biología
Artificial Intelligence (BOINC) — ingeniería inversa para estudiar el cerebro.
DENIS@home — Simulación de modelos de electrofisiología cardiaca para el estudio del comportamiento eléctrico del corazón.
Hydrogen@Home — busca el método más eficiente de producir biohidrógeno.
PS3GRID — simulaciones de biología molecular optimizado para los procesadores Cell en la PlayStation 3.
RALPH@home — la versión alfa de Rosetta@home.
Bio4All — herramientas para anotaciones en la investigación genética.
The Lattice Project — estudia una variedad de problemas en biología.
Superlink@Technion — busca genes responsables de enfermedades genéticas.

Criptografía
SHA-1 Collision Search — búsqueda de colisiones en las funciones hash SHA-1.
Zebra RSA Bruteforce — estudia el cifrado RSA.

Juegos
Chess960@Home — aplica el análisis computacional al Ajedrez aleatorio de Fischer para poder desarrollar alguna teoría sobre esta variante de ajedrez.
Project Sudoku — búsqueda de la configuración más básica para resolver un sudoku con solución única.

Internet
Project Neuron — graba, observa y analiza la actividad de BOINC con la intención de crear una métrica.
Storage@home — es una infraestructura de almacenamiento distribuido para solucionar el problema de hacer copias de seguridad y compartir los petabytes de información.

Matemáticas
BEinGRID — experimentos de negocios con redes grid.
WEP-M+2 — investiga la factorización de los números primos de Mersenne.
Yoyo@home — búsqueda la regla de Golomb óptima usando el motor de distributed.net.






Proyectos terminados / No activos

AQUA@home — ocupa Quantum Monte Carlo para predecir el rendimiento de computadores cuánticos superconductores adiabáticos.
3x+1@Home
ABC@Home — intenta resolver el problema de la conjetura abc.
APS@Home
Artificial Intelligence System
BBC Climate Change Experiment — (parte de Climateprediction.net)
BRaTS@Home
Cell Computing
Cels@Home
DepSpid — construye una base de datos que contenga la dependencia entre las webs individuales y los grupos de webs, creando una estadística de la World Wide Web.
Docking@Home — modela el acoplamiento proteína-ligando usando el programa CHARMM.
DynaPing
Eternity2.net - búsqueda de una solución al rompecabezas Eternity II.
FreeHal@Home— pretende mejorar la inteligencia artificial para hacer las conversaciones con máquinas mas humanas
Genetic Life
HashClash@home — expande resultados teóricos y experimentales de colisiones generadas por las funciones hash MD5 and SHA-1.
Nano-Hive@Home — simula sistemas de nanotecnología a gran escala.
NQueens@home
Predictor@home — predicción de la estructura de proteínas a partir de secuencias de estas.
Proteins@home — deduce la estructura del ADN dada una proteína.
QMC@Home — estudia la estructura y la reactividad de las móleculas usando los algoritmos Quantum Monte Carlo.
Ramsey@Home
Rectilinear Crossing Number — búsqueda de el crossing number más bajo para un determinado vector de puntos en una gráfica.
Reversi
Riesel Sieve — intenta resolver el problema de Riesel.
RND@home - calcula la configuración más eficiente de los transmisores de radio, tratándolo con el problema de optimización NP-hard.
SciLINC — indexa una librería digital con las especies de plantas.
SHA-1 Collision Search Graz
SIMAP — hace uso de una base de datos de proteínas para detectar similitudes en sus secuencias.
Sudoku project
TANPAKU — predice estructuras proteicas partiendo de la secuencia de un aminoácido.
XtremLab — mide los recursos libres en un PC que su para un sistema de computacción distribuida a gran escala. Los resultados se usaran para mejorar sistema como puede ser el BOINC.
ZIVIS — proyecto de la ciudad de Zaragoza junto con BIFI y CIEMAT para el estudio de la Fusión Nuclear como fuente de energía.
µFluids@Home — simula fluidos de dos fases en microgravedad, y otros problemas de microfluidos.