Skip to content

Computing with BOINC

David Anderson edited this page Mar 20, 2026 · 53 revisions

BOINC is a platform for 'volunteer computing', in which consumer devices (desktops, laptops, tablets, smartphones) are used for high-throughput scientific computing. The goal of BOINC is to provide computational scientists with lots of computing power at a little or no cost.

  • See an overview of BOINC.
  • The BOINC world consists of independent 'projects' (like LHC@home and Einstein@home). Volunteers can donate computing power to one or more projects, and can use 'account managers' to simplify this. Details.

If you have questions, contact us. To contact admins of existing BOINC projects, post to the BOINC projects email list.

Use BOINC Central

The easiest way to compute with BOINC is to use BOINC Central, a project at UC Berkeley. It uses a Docker-based system called BUDA. To use BOINC Central, you just need to:

  • Register with BOINC Central.
  • Package your application (Linux-based, Intel or ARM) using Docker.
  • Manage your apps and submit jobs through a simple web interface.

... or create your own BOINC project

Alternatively, you can create and operate your own BOINC project. This can potentially give you more computing power than BOINC Central. It also gives you control over apps and job submission; you don't have to use BUDA.

However, it requires that you buy or rent server hardware, and that you have various technical skills (Linux sysadmin, MySQL, network management). You may also need to attract and retain volunteers.

A BOINC project can serve more than one researcher. There are various organizational options. For example, a project could serve as a virtual campus computing center.

Once your project is running, learn about:

Use BUDA if possible

We recommend that you use BUDA to package applications and do job processing. BUDA makes things simple both for project admins and for users (job submitters). It eliminates the need to build Windows and Mac executables, and it lets users add new applications without help from admins.

BUDA is a complete job-processing system, including job submission and input/output file handling.

... or build your own applications and job-processing systems

BUDA has limitations, and it can only use volunteer computers that have Docker installed.

BOINC provides other ways to package applications and process jobs. These are more powerful but also more complex; most of them involve programming (in C++, Python, and/or PHP).

Attracting volunteers

Once your project is working and fully tested, you'll need to get volunteers. Here are some steps:

Clone this wiki locally