BOINC Manager 7.6.22 running on macOS | |
| Developer(s) | University of California, Berkeley |
|---|---|
| Initial release | 10 April 2002; 19 years ago |
| Stable release | |
| Repository | |
| Written in | C++ (client/server) PHP (project CMS) Java/Kotlin (Android client) |
| Operating system | Windows macOS Linux Android |
| Type | Grid computing and volunteer computing |
| License | LGPL-3.0-or-later[1] Project licensing varies |
| Website | boinc |
The Berkeley Open Infrastructure for Network Computing (BOINC, pronounced – rhymes with "oink"[2]) is an open-source middleware system for volunteer computing and grid computing.[3] Originally developed to support the SETI@home project, it became generalized as a platform for other distributed applications in areas as diverse as mathematics, linguistics, medicine, molecular biology, climatology, environmental science, and astrophysics, among others.[4] BOINC aims to enable researchers to tap into the enormous processing resources of many personal computers around the world.
BOINC development originated with a team based at the Space Sciences Laboratory (SSL) at the University of California, Berkeley and led by David Anderson, who also leads SETI@home. As a high-performance distributed computing platform, BOINC brings together about 64,125 active participants and 234,550 active computers (hosts) worldwide processing on average 20.164 PetaFLOPS as of 16 November 2021[5] (it would be the 21st largest processing capability in the world compared with an individual supercomputer Supercomputer TOP500 list).[6] The National Science Foundation (NSF) funds BOINC through awards SCI/0221529,[7] SCI/0438443[8] and SCI/0721124.[9] Guinness World Records ranks BOINC as the largest computing grid in the world.[10]
BOINC code runs on various operating systems, including Microsoft Windows, macOS, Android,[11] Linux and FreeBSD.[12] BOINC is free software released under the terms of the GNU Lesser General Public License (LGPL).
BOINC was originally developed to manage the SETI@home project.
The original SETI client was a non-BOINC software exclusively for SETI@home. It was one of the first volunteer grid computing projects, and not designed with a high level of security. As a result, some participants in the project attempted to cheat the project to gain "credits," while some others submitted entirely falsified work. BOINC was designed, in part, to combat these security breaches.[13]
The BOINC project started in February 2002, and the first version was released on April 10, 2002. The first BOINC-based project was Predictor@home launched on June 9, 2004. In 2009, AQUA@home deployed multi-threaded CPU applications for the first time,[14] followed by the first OpenCL application in 2010.
As of 16 November 2021, there are 32 projects on the official list.[15] There are however, BOINC projects that not included on the official list. Each year, an international BOINC Workshop is hosted to increase collaboration among project admins. In 2021, the workshop was hosted virtually.[16]
While not affiliated with BOINC officially, there have been several outside projects to reward BOINC users for their participation including Charity Engine (sweepstakes based on processing power with prizes funded by private entities who purchase computational time of CE users), Bitcoin Utopia (defunct) and Gridcoin (blockchain which mints coins based on processing power).
The BOINC Manager working on the SETI@home project (v 7.6.22)
In essence, BOINC is software that can use the unused CPU and GPU cycles on a computer to do scientific computing — what one individual does not utilise of their computer, BOINC uses. In late 2008, BOINC's official website announced that Nvidia had developed a system called CUDA that uses GPUs for scientific computing. With NVIDIA's assistance, some BOINC-based projects (e.g., SETI@home, MilkyWay@home) now have applications that run on NVIDIA GPUs using CUDA. Beginning in October 2009, BOINC added support for the ATI/AMD family of GPUs also. These applications run from 2 to 10 times faster than the former CPU-only versions. In 7.x preview versions, GPU support (via OpenCL) was added for computers using Mac OS X with AMD Radeon graphic cards, with the current BOINC client supporting OpenCL on Windows, Linux, and Mac OS X. GPU support is also provided for Intel GPUs.[17]
BOINC consists of a server system and client software that communicate with each other to distribute and process work units and return the results.
BOINC can be controlled remotely by remote procedure calls (RPC), from the command line, and from a BOINC Account Manager.
BOINC Manager currently has two "views": the Advanced View and the Simplified GUI. The Grid View was removed in the 6.6.x clients as it was redundant.
The appearance (skin) of the Simplified GUI is user-customizable, in that users can create their own designs.
A BOINC app also exists for Android, allowing every person owning an Android device – smartphone, tablet and/or Kindle – to share their unused computing power. The user is allowed to select the research projects they want to support, if it is in the app's available project list.
By default, the application will allow computing only when the device is connected to a WiFi network, is being charged, and the battery has a charge of at least 90%.[18] Some of these settings can be changed to users needs. Not all BOINC projects are available[19] and some of the projects are not compatible with all versions of Android operating system or availability of work is intermittent. Currently available projects[20] are Asteroids@home, Einstein@home, LHC@home, Moo! Wrapper, Rosetta@home, SETI@home, Universe@Home, World Community Grid and Yoyo@home. As of September 2021, the most recent version of the mobile application can only be downloaded from the BOINC website or the F-Droid repository as the official Google Play store does not allow downloading and running executables not signed by the app developer and each BOINC project has their own executable files.
A BOINC Account Manager is an application that manages multiple BOINC project accounts across multiple computers (CPUs) and operating systems. Account managers were designed for people who are new to BOINC or have several computers participating in several projects. The account manager concept was conceived and developed jointly by GridRepublic and BOINC. Current and past account managers include:
The BOINC Credit System is designed to avoid cheating by validating results before granting credit.
There are 32 active projects listed in the BOINC official website:[15]