Distributed Computing

In the 90’s, like most people I was heavily into the X-Files, ‘the truth is out there’ as it were and doing my part I got into the SETI @home movement. I installed, maintained and ran the SETI @home software on a dozen or more computers I had access to. Back then the thought of what distributed computing could achieve was appealing to me – SETI @home is still running too btw – but it’s come along way in the last 20 years.

Distributed computing basically takes a large piece of data and breaks it into small chunks that, rather than being processed in a short amount of time on an expensive super computer at a university in one big chunk, is handed off to a lot of standard PCs to process in longer periods of time. The PCs perform the work in what’s usually ‘down time’ when they’re not being used, they’re consuming power, so why not use it to do something?

Smartphones are in reality the next form of computing and they’re everywhere, in fact a lot more so than desktop PCs right now. Obviously with that much potential computing power around there’s going to be some spare CPU cycles floating round. Smartphones run on slightly different computing infrastructure, with ARM processors, but there’s still down time especially when you’re charging them overnight.

There’s a few options around if you want to make a difference in the world – and with distributed computing you can make a difference. So, what’s on offer?


BOINC

The Berkeley Open Infrastructure for Network Computing (BOINC) platform is an open source piece of software originally developed to power my gateway to distributed computing, SETI @home. It does in fact power a number of offerings on our list, including the HTC developed Power To Give app. But Berkley University who developed BOINC has actually put out their own Android app called, well BOINC.

BOINC powers a number of projects within the app itself, which you have a choice of donating your spare CPU cycles to including, but not limited to:

It’s a matter of pick your poison as it were. You’ll have to sign up to a project once you actually decide you want to support it. You can join more than one if you so desire so check out the list of available projects in the app when you first open it.

Interestingly to me anyway, SETI @home is also still available in the app. Berkley spokesperson David Anderson has said that newer devices running Android 6.0+ have been reporting issues so it’s a bit hit and miss. There’s limited resources that the team at Berkley can throw at the app for SETI @home app, so it’s likely to remain a little broken for now at least – though David says they do hope to fix it soon. Berkley would however welcome any programmers willing to donate time to the project to update it if you’re free to do so.

The BOINC app is fairly old, though it did get an update in April this year which added updated localisations as well as upgrades to OpenSSL 1.0.2g and LibCurl 7.48.0. The design as you can see has some Material Design elements with a slide out Nav Drawer to assuage your design sensibilities, it’s fairly rudimentary – but it works. The layout is fairly straight forward as well so it’s an easy app to navigate, but once it’s setup there’s little left for you to do except let it work.

BOINC is designed to not use cellular data, so you won’t get pinged for excess usage from your mobile carrier – but it does require data to download new modules to process and upload results so it uses Wi-Fi so if you have limited data on your home broadband plan you may want to watch that, but it doesn’t use massive amounts so don’t stress too much.

BOINC also shouldn’t interrupt your phone (or tablet usage) in that it only activates when your device is plugged into power and charged, so it won’t run your battery down.

At the moment BOINC uses the CPU primarily, but the Berkley team is excited about the possibilities offered by more powerful GPUs appearing on the market says David, particularly those being developed by Nvidia with their Tegra series, which could accelerate science apps. David says that the use of more powerful GPUs could ‘move phones into the performance tier of low-end laptops’.

BOINC is free to use, and can be downloaded from Google Play.

[pb-app-box pname=’edu.berkeley.boinc’ name=’BOINC’ theme=’discover’ lang=’en’]


HTC – Power to Give

In 2014, during their Mobile World Congress presentation, HTC announced their entry to the distributed computing world on Android, HTC – Power to Give.

HTC Power to Give was initially only available to HTC branded phones, though this has expanded somewhat since to include almost every Android device I’ve registered on Google Play – though some older models are exempt. There are some minimum specs:

  1. Android 4.4 KitKat or better
  2. 1.5 GHz dual-core processor, 1 GHz quad-core processor or better
  3. 1 GB of RAM or better

At launch, HTC estimated that a mere 1 million HTC One handsets would have the power to provide one PetaFLOP of computing power – or to put it more simply, the equivalent to one supercomputer. HTC has seemingly hit that goal, or at least partially, with Google Play reporting that the app has seen between 1,000,000 – 5,000,000 installs over the last 2 and a bit years. That’s a fair chunk of power.

HTC’s Power to Give app actually uses Berkley University’s BOINC technology as the underlying platform, so it has the same parameters – you need to have the device on charging with a default requirement for at least 90% battery before it starts. You can lower the battery requirement as you wish, but better safe than sorry. You also need to be connected to Wi-Fi to use it, though a recent update gave you the option to use mobile data if you’re into that sort of thing.

As a BOINC client, you’re essentially doing the same thing as running the BOINC app from Berkley – though the same update that added mobile data also added support for devices running Android 6.0+. There’s a little bit nicer front end for joining up with many of the same projects are available to join, though unlike BOINC they’re divided up into:

  • Biology and Medicine
  • Mathematics, Computing and Games
  • Multiple Applications; and
  • Physical Sciences

You will have to register to join just the HTC Power to Give app, then each of the above projects to participate, but it’s a fairly easy process.

As Power to Give is a BOINC based application, if you’re running Berkley’s BOINC app, or vice-versa, you’ll be prompted to close it with an error :

So, BOINC and Power to Give are basically hand in hand. It’s a bit nicer to look at on the HTC version, so basically it’s down to you which one you prefer really. If you want to try out HTC Power to Give you can grab it, if your Android devices meets the requirements for free, from Google Play right now.

[pb-app-box pname=’com.htc.ptg’ name=’HTC Power To Give’ theme=’discover’ lang=’en’]


Sony Folding@Home

Moving away from the BOINC platform, we next look at Sony and their Folding@Home initiative that they launched on Android early last year. Originally run as a distributed computing model utilising the cell processing architecture of PS3 gaming consoles from 2007 to 2012, the decision was then made to port it to Android.

Folding@Home is a joint venture between Sony and Stanford University. Rather than a platform Folding@Home has a specific aim which is researching disease. The folding part comes from simulating protein folding and drug design as well as other types of molecular design. Folding@Home currently works on solving a number of diseases including Alzheimer’s, Huntington’s disease, various Cancers, Osteogenesis imperfecta and ‘Viruses’.

Folding@Home from Sony was originally designed for Sony phones, with Sony launching and testing the app on Xperia Z, as well as Xperia T3, T2, Ultra, M2 Aqua and C3 phones. They quickly expanded to any device running Android 4.4 an above, expanding potential for the app.

Potential is, Sony said at launch, to generate up to 2 PetaFLOPS of computing power with only 100,000 phones – twice that of HTC’s effort with a tenth of the devices – but that was based on older processors. You can see that with advances in technology, so to does the potential for distributed computing on mobile advance as well. The original projection is a year and a half old now, imagine the potential for Folding@Home on todays Snapdragon 820 processors.

Currently, the stats for the Sony Folding@Home puts the app at a slightly less impressive, relative to the HTC app, install base of between 100,000 – 500,000 hits. It’s not bad though considering they only needed 100,000 devices to achieve 2 PetaFLOPS.

Like the previous distributed computing apps, Sony’s Folding@Home app requires a Wi-Fi connection, but this app also requires you to be fully charged as well as a power connection to work. A trio of icons which change colour from orange (not ready) to green (ready to go) shows your current status.

There’s no real setup here, sign in, accept the terms and conditions, connect to Wi-Fi and power and let it do its thing.

One component I LOVE about the Sony Folding@Home is the gamification. Sony has actually built support for Google Play Games into the app, with Achievements you can earn as you contribute more and more time to the project. There’s even a leaderboard of your social (Google+) circles, as well as an all time view. All you have to do is sign in to Google Play Games and you’re ready to compete.

Sony’s Folding@Home app is, again, available for free from Google Play to install for a good number of devices running Android 4.4 and up, so if this fits what you want to donate some CPU cycles to, hit Google Play and install it now.

[pb-app-box pname=’com.sonymobile.androidapp.gridcomputing’ name=’Folding@Home’ theme=’discover’ lang=’en’]


Vodafone Dreamlab

Last but not least, Vodafone Australia weighed into the distributed computing app race last year with Dreamlab. The app and research is a joint venture between the Vodafone Foundation Australia, based on cancer research by the Garvan Institute of Medical Research.

The Dreamlab app requires you to have a fully charged and powered phone to work, basically it starts working automatically when your battery tops off. You also need a source of data. Dreamlab lets you specify a mobile data limit ranging from no mobile data per month to 500MB, with Wi-Fi also giving you the option to use nothing, all the way up to unlimited Wi-Fi data.

As an initiative of Vodafone, there’s a bonus for Vodafone customers in that they can use mobile data without it counting towards your monthly limit.

Like all the other applications you will have to sign up to use Dreamlab, it’s a fairly simple process, you’ll need an email address etc. and then you pick which cancer research you want to fight from a selection of four: Breast, Ovarian, Pancreatic or Prostate cancer. Once you’ve set your data limits, you’re ready to go.

At launch, Vodafone advises that with just 1,000 phones, the Garvan Institute will be able to process research data 30 times faster than without the distributed computing network.​ According to Google Play, the app has been installed between 50,000 – 100,000 times, which is decent.

There’s been some decent stats racked up since the launch of DreamLab, with the Vodafone Foundation advising that 28.3% of data crunched in half the time it would have taken Garvan without DreamLab, that’s massive savings of data for a not-for-profit.

Dreamlab is available in a lot of places, with 63,000 downloads in various countries since it launched. The Vodafone Foundation are looking to expand it to more countries however, as well as looking to add new research projects.

The app is good, but lacks certain features, gamification being one, but I have given feedback to Vodafone on this as a feature I’d love to see in future versions. Something similar to Sony’s leader board with Google Play Games is a genius solution from Sony, so maybe in the future we’ll get this.

I`m currently invested in Dreamlab as my distributed computing app of choice, battling Ovarian Cancer currently in which I have donated, on the current install, 23 days, 6 hours and 16 minutes worth of runtime. I say on this current install because there’s no historical data once you install the app on a new device – another issue I’d like Vodafone to address, I have a fleet of devices I’d run this on full time if I could.

If you want to get join the fight against cancer with DreamLab, head over to Google Play and install the app now.

[pb-app-box pname=’au.com.vodafone.dreamlabapp’ name=’DreamLab’ theme=’discover’ lang=’en’]


Android is singularly suited for distributed computing apps, with several available. iOS has very few options for distributed computing apps of this nature with a search showing up only one real contender – Wildesense Tigers – which actually requires your input, describing what tigers are doing in photos before having the data crunched on the server side.

Be it cancer research, finding extra terrestrial life or modelling maths, computer games or physics, there’s an option out there for you.

I`m personally invested in Ovarian Cancer research, and there will be personal reasons you target your area of need perhaps a mother, father, brother, sister or any loved one could be saved with your donation of spare CPU cycles. This is where distributed computing could possibly help. If you haven’t got money to donate, the unused processing cycles on your phone will help, even if just a little bit.

It’s not much, but it may be enough. Go and check out the options today.