Translation(s): none


Berkeley Open Infrastructure for Network Computing

http://boinc.berkeley.edu/logo/www_logo.gif

BOINC comes as an official part of Debian and with it of Ubuntu, Mint and many others. Just install the boinc package. Then start the boincmgr application to join the project of your liking.

The remainder of this page helps the maintainers of these packages to better organise themselves. It may serve the curiosity of the one or other casual visitor and possibly attracts more helping hands. Ignore it at first.

http://setiathome.berkeley.edu/images/seti_logo.png

BOINC, under your control, downloads and runs external applications. Debian supports many more platforms than any scientific group. And with Debian, you have confidence to see a direct correspondence between the source Debian distributes and the application one runs. For SETI, we have hence packaged also their scientific application as boinc-app-seti. Desire for more such redistributions? Contact us.

http://packages.debian.org/Pics/openlogo-50.png

BOINC 7.0.27 is in testing, the upcoming Wheezy distribution. It seems like boinc-app-seti (currently only in unstable), just like the later BOINC packages, will eventually be shipped via backports.debian.org, not with the initial release. Ubuntu also provides backports to earlier versions.

This page accompanies an Alioth project of the same name on the creation of respective Debian package for BOINC. A detailed introduction to BOINC itself is available on the wiki pages of en.wikipedia.org. In short, BOINC provides an infrastructure for distributed computing that asks for volunteers world-wide to offer their compute power for a good cause. There is no central organisation but every contributor decides by h(im|er)self what project to support. Everything of this infrastructure is Open Source, for the contributors and the scientists with computational demands alike. Hence, everybody can do something beneficial to the world at large, just by running an unnotified application in the background.

/Development

/Projects

/Server

/Troubleshooting

BOINC/Development

BOINC/Projects

BOINC/Server

BOINC/Troubleshooting

developing the BOINC Debian packages

projects that support Debian architectures -- 'everyone with exotic platforms please help to maintain'

running your own BOINC server project on Debian (experimental)

problem solving and FAQs

Benefits of Debian for BOINC

There are to major criticisms of the BOINC project:

The motivation to create packages for this worthwhile cause requires no further explanation, maybe except for the following hint: Debian is special for its support of many different architectures, which is only sustainable because of an automated compilation of novel packages. Thus, the provision of BOINC on Debian significantly contributes to the acceptance of the project in all these non-mainstream architectures.

Some users of Debian install the package popularity-contest. It sends anonymous statistics on package usage to a dedicated site. Follow http://qa.debian.org/popcon.php?package=boinc for an overview on the installation rates of boinc-associated packages in Debian. You will find the boinc packages to have a much steeper curve than most regular packages, i.e., these are installed more frequently than the number of Debian users grows. And, we are competing nicely with high-flying packages like the statistics environment R. The latest numbers are retrievable also in the shell:

wget -O - http://popcon.ubuntu.com/by_vote.gz 2> /dev/null | gunzip | egrep 'boinc'
wget -O - http://popcon.debian.org/by_vote.gz 2> /dev/null | gunzip | egrep 'boinc'

Another peculiarity of Debian is the option to create dedicated chroot environments, which may be essential for security-sensitive administrators. Debian's debootstrap tool creates such easily, also in subdirectories of other Linux distributions. Together with the dynamic package management, this renders Debian a prime candidate for the creation of virtual hosts arbitrary Linux distributions or - maybe more interestingly - on Windows machines running Xen, coLinux, VirtualBox or VMware.

Furthermore, the frequently distributed LiveCDs of Debian may bring functional BOINC installations to the masses.

Technical overview

From the user's perspective, BOINC has three parts:

  1. The external web server, run by the scientists, that manages the data flow. After the user's registration to a particular project this server is of interest only for power users who are interested to communicate with other users or the general progress of the individual project.
  2. The BOINC core client that is commonly controlled by the BOINC Manager (boincmgr) and the only program that is actually started by the user.

  3. The project-specific application (e.g. setiathome) that is started by the BOINC core client.

The speed of the processor is measured by the BOINC core client. One gets the more credits, the faster the BOINC core client says the individual machine is. Hence, it makes perfect sense to have a very much optimized binary of the BOINC core client, if one is interested in the stats. However, the project-specific application, which does the real work, does not profit from an optimization of the merely communicating BOINC client. It is the application's code where the real interest is in. Hence, the ultimate goal is to have locally optimized Debian packages for the scientific applications, too. These however are mostly distributed as binaries only, though there are exceptions, like SETI@Home, Milkyway@Home, Eistein@Home and others. We are providing also a package for SETI and Milkyway.

Installation

Installation of binary packages

The BOINC packages are part of the Debian main archive since DebianEtch (see: boinc-client, boinc-dev, boinc-manager). To install BOINC on your computer update your package index files and install the boinc-client package:

sudo apt-get update
sudo apt-get install boinc-client

The boinc-client starts at a reboot, or explicitly with

sudo /etc/init.d/boinc-client start

To manage scientific applications run on boinc by GUI, install the boinc-manager package in addition:

sudo apt-get install boinc-manager

Finally, attach a new project to your BOINC core client. For GUI installation, run boincmgr; for CLI installation, run boinccmd.

NVidia CUDA

For support of GPU offloading on NVidia cards, feel invited to install the package boinc-nvidia-cuda. It ensures to have the required extra dependencies for CUDA programs installed, i.e. nvidia-glx and libcuda1 packages. More (too many?) details on NVidia are collected on the page NvidiaGraphicsDrivers of this wiki.

It should all be performed by the postinst scripts of the package. Anyway, if there are problems, verify the boinc user to be a member of the video group. If a card is detected but the apps don't work, also try installing the 32bit variants of support libraries like libcuda1-ia32 and lib32cudart4 packages, if these are available to you.

AMD Stream / OpenCL

This Wiki has a dedicated page on ATI/AMD Stream/OpenCL intallation instructions. We prepared a package boinc-amd-opencl but are currently not shipping it since the AMD packages had issues. This, as a meta package, drags in the dependencies but otherwise has no extra functionality on its own. On amd64, it also installs the 32bit libraries, but other than for NVidia, it uses the multiarch principle.

See also

Contact

Please contact the Debian maintainers of the BOINC packages and the community of Debian BOINC developers via the pkg-boinc-devel mailing list.


Page Copyright

License

GPLv2

Authors

Debian maintainers of the BOINC packages

see DebianWiki/LicencingTerms for info about wiki content copyright.


CategoryPermalink