BOINC

From ArchWiki
Revision as of 21:51, 18 May 2010 by Joetotale (Talk | contribs) (BOINC via the GUI)

Jump to: navigation, search

Template:I18n links start Template:I18n entry Template:I18n links end

What is BOINC

BOINC website: "Use the idle time on your computer (Windows, Mac, or Linux) to cure diseases, study global warming, discover pulsars, and do many other types of scientific research. It's safe, secure, and easy."

Wikipedia: "The Berkeley Open Infrastructure for Network Computing (BOINC) is a non-commercial middleware system for volunteer and grid computing. It was originally developed to support the SETI@home project before it became useful as a platform for other distributed applications in areas as diverse as mathematics, medicine, molecular biology, climatology, and astrophysics. The intent of BOINC is to make it possible for researchers to tap into the enormous processing power of personal computers around the world."

Install BOINC

Overview

BOINC is installed as a daemon and for security reasons will be run under the newly created boinc user. We will add ourself to the boinc group and create a link to the password file so that we can manage it via the GUI.

Instructions

Install BOINC via pacman:

# pacman -S boinc


BOINC runs as a daemon, to run at start up add it to the daemons section in /etc/rc.conf:

DAEMONS=(... boinc ...)


Add your user to the boinc group. You will need to log out and in again for it to take effect.

# gpasswd -a username boinc


If you want, you can easily check if you are now part of the boinc group by using the groups command:

$ groups


Start the BOINC daemon:

# /etc/rc.d/boinc start


Check if BOINC is running:

$ ps aux | grep boinc

Using BOINC

BOINC via the GUI

By default, a password is created in /var/lib/boinc/gui_rpc_auth.cfg for connecting to the daemon. To simplify connection of the GUI to the daemon, cd to your home directory, create a link to the file, and change permissions to allow read access to boinc group members.

$ cd
$ ln -s /var/lib/boinc/gui_rpc_auth.cfg gui_rpc_auth.cfg
# chmod 640 gui_rpc_auth.cfg

If you prefer a different password, or none at all, you can edit /var/lib/boinc/gui_rpc_auth.cfg.

If you don't like the idea of having this file in your home directory, there is an alternative approach. Boinc Manager will also look for a readable gui_rpc_auth.cfg file in the current working directory. If you make the file readable by the boinc group and ensure that the manager is run with /var/lib/boinc as the working directory, you should find that the client connects to the daemon automatically, as desired. This can usually be achieved via the menu editor in your desktop environment of choice.

To start the GUI, use the boincmgr command

$ boincmgr

BOINC should now take you through the process of attaching to a project. NB, some projects will let you create an account remotely via the GUI while some may require you to first create an account via their website. You can attach to multiple projects if you have the resources (disk space, time, CPU power). Do this via menu option Tools / Attach to project.

If BOINC didn't ask you to connect to a project, then make sure you are connected to the daemon. Go to menu option Advanced / Select computer, choose your machine's name and enter the password. (To avoid this, make sure the above steps regarding gui_rpc_auth.cfg have been done.)

.desktop file sample

The following is a sample of .desktop file. In order to use this sample, you have to put a password file or the symlink in your home directory (see above).

  • file name: boincmgr.desktop
  • path: ${XDG_DATA_HOME}/applications/ (default: ~/.local/share/applications/) or /usr/share/applications/
[Desktop Entry]
Type=Application
Name=BOINC Manager
GenericName=BOINC client manager
Comment=Configure and monitor a BOINC client
Icon=/usr/share/boinc/boincmgr.48x48.png
Exec=boincmgr
Terminal=false
Categories=System;Monitor;GTK;

"BOINC Manager" menu item appears under [System] menu.

Log files

NB, BOINC places log files in /var/lib/boinc/

/var/lib/boinc/stderrdae.txt
/var/lib/boinc/stdoutdae.txt

Considerations when choosing a project

Projects have different minimum hardware requirements (CPU, disk space), and different times to taken to run each work unit. If you don't finish a work unit before the deadline it will sent out to someone else, but it is better to look around to see what projects suit your machine and your uptime patterns to avoid this happening.

Also, if it is important to you, check if the project makes the data and results publicly available.

Running on Arch64

Some projects provide only 32bit applications and some of them require 32bit libraries to run WUs or show graphics.

To run WUs (e.g. Climateprediction)
lib32-glibc, lib32-glib2
To show graphics (e.g. Several projects of WCG, Climateprediction)
lib32-pango, lib32-xdamage, lib32-libxi, lib32-libgl and lib32-libxmu

Links