This is a small web page to accompany a set of projects on github that all aim at somehow augmenting
We use this site to communicate the extra mile (kilometer for us) that users (or project administrators) may have to go to reproduce our work or to integrate that new development in their routine setup. Developments you may be interested to follow-up are:
Einstein@Home is a very fine project for BOINC, accompanying its development for 15+ years. It is all about finding pairs of pulsars and gravitational waves.
These 64bit binaries for ARM exist, for both BRP and FGRP, have in the past been sent out on request per email and are likely to move here - give this new site a few days/weeks to settle. Eventually, in an ideal world, the project maintainers would rebuild or just adopt and redistribute them, though. It is yet a bit unclear if, in the longer term, by offering these binaries separately, we may be doing a disservice to the community. We will give exact instructions here how to reproduce what we came up with and then also place the binaries - please don't just run arbitrary binaries from web sites since this may pose security risks - to your computer and to the scientific mission of the project.
In the mean time consider to run the WorldCommunityGrid (www.worldcommunitygrid.org), Rosetta@Home http://boinc.bakerlab.org/rosetta/) or TN-GRID (http://gene.disi.unitn.it/test/) that already support the ARM 64bit platform.
In April 2020 we prepared a boinc package for the OpenWrt operating system which lives at https://github.com/openwrt/packages/tree/master/net/boinc. The accompanying pull request was #11768. That "net/boinc" package is auto-built for the 21.02 release of OpenWrt and later.
Developments for are still ongoing. In particular there is a a nice web-interface via which routers can be configured that still needs to be brought forward.
OpenWrt we anticipate to bring new impulses for the BOINC community:
opkg install boinc
If the above is problematic, e.g. because of reboots, or if no binary is offered for your platform for your earlier-than-21.02 install of OpenWrt then create your own image as described on the OpenWrt documentation.
Well, yes. Small routers are typically stressed for place on their flash "drive". And if there are no spare 2MB for the boinc application then the device cannot be used for BOINC. The special demands in terms of disk space and compute alike however come from the applications that BOINC first downloads from the project's server and the scientific data that the application works on. This may exceed Gigabytes and few OpenWrt devices, if any, provide that. The trick is an external drive, like an USB stick or (for some advanced devices) a SATA device, that either substitutes the current overlay device or shall be mounted at /opt/boinc. All communication between BOINC and the scientific app is performed on files within /opt/boinc. This way, the device's internal drive is protected from frequent writes.
To elucidate the technical details of the previous paragraph a bit more, hardcore OpenWrt users (or just anyone running one of their routers without any extras) will have the typical setup:
Traditional users of Linux are confused about this all. And especially if your device is already booting from an SD card for instance, there is little motivation to fiddle around much with an external drive. But of course you can at any point. So, for those already booting from an external drive, you may want to go for one of the "combined" images (see https://downloads.openwrt.org/snapshots/targets/x86/64/) that do not have the overlay. You may still need to adjust partitions to have enough write space, which is all regular Linux and you will manage.
The boinc package is available as a snapshot (and in the upcoming releases) on https://downloads.openwrt.org/snapshots/packages/<yourtarget>/packages/boinc_7.16.5-1_<yourtarget>.ipk, e.g. for
Run it. We have partnered up with TN-GRID (who just also started a Covid-19 related extensions) that needs only about 65MB of RAM to compute. If your device is running on an ARM device then this project will distribute a scientific app to you. If you are using another device with that amount of spare RAM available then please create an issue requesting a scientific app for it.
Run it also on regular Linux/MacOS/Windows machines. Most Linux distros have a package for the client, otherwise refer to https://boinc.berkeley.edu to download a client. Rosetta@Home, TN-GRID, World Community Grid and GPUGRID are all addressing questions in molecular biology that should be worthwhile to support these days. Also consider Folding@Home, that is independent from BOINC but is also doing good stuff.
Spread the word!
cd /opt/boinc boinccmd --project_attach PROJECTURL ACCOUNTKEY
We cross-built the app for a series of platforms and offer respective packages in the apps directory. This is a 70MB package and your router by chance does not like that since this may exceed the typically scarse flash storage on the device.
If the tests are fine then continue below, otherwise please create an issue.
These projects distribute their scientific applications as statically linked binaries, i.e. the libc does not matter. Instead of presenting your computer with the platform that it really is, i.e. one with the musl C library, you may then override that default spec with the name your platform would have with a regular Linux and the GNU C library. Hereto, if running a 32bit ARM machine, in the BOINC data directory (/opt/boinc) create the file cc_config.xml as follows:
<cc_config> <options> <alt_platform>arm-unknown-linux-gnueabihf</alt_platform> </options> </cc_config>For other platforms, please inspect https://boinc.berkeley.edu/trac/wiki/BoincPlatforms for the preferred string to get the platform identified. For the example given, the platforms reported to the project are stated in a grep for 'platform' in the file client_state.xml:
<platform_name>arm-openwrt-linux-muslgnueabi</platform_name> <alt_platform>arm-zynq-router-openwrt-muslgnueabi</alt_platform> <alt_platform>arm-unknown-linux-gnueabihf</alt_platform>