Originally you even had to compile the BOINC client yourself:This project aims to have the Raspberry Pi running a BOINC project. Raspberry Pi runs an ARMv6 processor, which makes it difficult to cleanly run BOINC as there is little support for the platform.
And then you had to compile the app(s) you wanted to run, e.g. the sadly-missed Seti@HomeWe’re going to grab BOINC from the SVN repo. We’ll be using version 6.12.34 as there is some heartbeat/timer problems with 7.X version and SETI@home that I still haven’t worked out how to fix. Let’s prepare BOINC:You should now have a functioning BOINC client you can control with boinccmd. I will post back here with an init script you can use. I assume you know how to create a separate boinc user account for running it as a non-root user.Code: Select all
# mkdir /usr/local/src # cd /usr/local/src # svn co http://boinc.berkeley.edu/svn/tags/boinc_core_release_6_12_34 boinc # cd boinc # ./_autosetup # ./configure --disable-server # make # make install # mkdir /var/lib/boinc # /usr/local/bin/boinc --daemon --redirectio --dir /var/lib/boinc
Perhaps the biggest jump in Raspberry Pi performance came when the original 2012 ARMv6 single-core ARM11 CPU equipped Raspberry Pi was followed up by the ARMv7 quad-core Cortex-A7 Raspberry Pi 2 Model B v1.1 (-mind you: there is a later v1.2 with better specs). The optimist will declare that performance was enhanced tenfold, the pessimist will say "ten times shit is still shit". Still almost nobody in BOINC userland took Raspberry crunchers seriously, mainly becauseWe’ll need to compile a version of SETI that will work with our ARM platform. I’ll be using the original source for 6.12 from the Ubuntu launchpad site. Feel free to get it from SETIs SVN repo site (rev 316 I think). I just used this particular version as there seems to be some success with it on UNIX platforms. Let’s prepare SETI:Code: Select all
# cd /usr/local/src # wget https://launchpad.net/ubuntu/+archive/primary/+files/boinc-app-seti_6.12~svn1305.orig.tar.gz # tar xf boinc-app-seti_6.12~svn1305.orig.tar.gz # mv boinc-app-seti-SNAPSHOT seti_boinc # cd seti_boinc # ./_autosetup # ./configure –disable-server # make
- There were much more powerful ARM boards around,
- You couldn't expand the meagre amount of 1GB (DDR2!) RAM,
- SD cards crapped out quite often,
- The Pi's GPU was useless in BOINC.
This all changed with the introduction of the Raspberry Pi 4. It did not jump yet another instruction set generation (no ARMv9), but it a much better CPU (a Cortex-A72), AND it was soon supported with a 64-bit OS. Besides that, there were versions with enough DDR4(!) RAM, up to 8GB. Suddenly you could actually work with a Raspberry Pi, and people were quick to discover that. Pretty soon everybody wanted one, two or more. And that 64-bit OS also worked on the Pi 3's (and even on the Pi 2 Model B v1.2, because of the Cortex-A53 used in that version). People went nuts using Pi's.
And then came COVID-19, and the IC supply came into stand-still, SBC prices soared up till the sky. Supply only recently seems like to have been restored a little bit, though SBC prices continue to be higher than before COVID. So now we know you can actually crunch using ARM the question becomes what ARM device is best suited for our needs. The Pi was never designed to be a big number cruncher in the first place.