Ir al contenido

Berkeley Open Infrastructure for Network Computing

De Wikipedia, la enciclopedia libre
Esta es una versión antigua de esta página, editada a las 08:32 1 abr 2020 por Masdampipa (discusión · contribs.). La dirección URL es un enlace permanente a esta versión, que puede ser diferente de la versión actual.
BOINC

BOINC Manager 7.0.65 x86
Información general
Tipo de programa middleware
Autor
Desarrollador Universidad de California, Berkeley
Lanzamiento inicial 10 de abril de 2002
Licencia LGPL
Información técnica
Programado en C++
Plataformas admitidas multiplataforma
Interfaz gráfica predeterminada wxWidgets
Versiones
Última versión estable 8.0.224 de mayo de 2024
Enlaces

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 nuclear, climatología, etc. La intención de este proyecto 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 (Artículo en inglés), que también lidera SETI@home. Como una plataforma "cuasi-supercomputador", BOINC tiene, al 9 de junio de 2018, alrededor de 311.742 participantes activos con 834.343 computadoras (hosts) alrededor del mundo, que procesan un promedio de 26,43 PetaFLOPS,[1]​ lo que lo ubicaría como el quinto sistema más potente del mundo comparado con las supercomputadoras de la lista TOP 500. El Libro Guinness de los récords clasifica a BOINC como la red de computadoras más grande del mundo.[2]

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.[3]

El proyecto BOINC empezó en febrero de 2002 y su primera versión fue publicada el 10 de abril de 2002. El primer proyecto basado en BOINC fue Predictor@home (Artículo en inglés), lanzado el 9 de junio de 2004.

BOINC fue financiado por la agencia gubernamental National Science Foundation a través de becas desde 2002 hasta 2015.[4][5][6]​ Actualmente no cuenta con financiamiento externo y depende de voluntarios.[7]

Diseño y estructura

BOINC corriendo Climateprediction.net y Rosetta@home.

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

Vista de BOINC ocupando la apariencia "GUI Simplificada".

BOINC puede ser controlado a distancia mediante llamadas a procedimiento remoto (RPC), desde la línea de comandos, o desde el administrador de cuentas 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:

Sistema de créditos

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 son independientes. BOINC no controla ni endosa ningún proyecto.

Referencias

  1. «BOINC». Boinc.berkeley.edu. Consultado el 9 de junio de 2018. 
  2. «Largest computing grid». Guinness World Records. Consultado el 4 de enero de 2016. 
  3. Anderson, David P. «Public Computing: Reconnecting People to Science». Archivado desde el original el 15 de mayo de 2007. Consultado el 13 de junio de 2007. 
  4. «NSF Award Search: Award#0221529 - Research and Infrastructure Development for Public-Resource Scientific Computing». www.nsf.gov. Consultado el 30 de enero de 2017. 
  5. «NSF Award Search: Award#0438443 - SCI: NMI Development for Public-Resource Computing and Storage». www.nsf.gov. Consultado el 30 de enero de 2017. 
  6. «NSF Award Search: Award#0721124 - SDCI NMI Improvement: Middleware for Volunteer Computing». www.nsf.gov. Consultado el 30 de enero de 2017. 
  7. «New governance model». boinc.berkeley.edu (en inglés). Consultado el 30 de enero de 2017. 

Enlaces externos