There is a class of problems known in
HPC circles as
embarasingly parallel
. Such problems have two important
characteristics.
This simplest form of parallel processing, known as a task farm, is only capable of tackling a subset of HPC problems. However it is a useful subset and it is a technique very suited to geographically dispersed, hetrogenous computer systems with poor network connectivity, such as you could create using home users PCs connected over the Internet.
The idea is very simple. All those CPU cycles which are normally wasted drawing bézier curves, star fields or nests of pipework are, instead, used to work on some more useful endevour. You download a program which fetches blocks of work from a central server. This work is then processed while your computer is otherwise idle and the results returned to the server. A work block is generally sent to a number of different users so the results can be verified for acuracy.
I first came across this idea, before I had any formal learning in HPC, when I discovered distributed.net. They were attempting to prove that any encryption algorithm is voulnerable if you throw enough processing power at it. To this end they were utilising a volunteer task farm to attack a message encrypted with the RC5 algorithm. I downloaded a client a participated in that project to its completion.
The RC5 project only required integer arithmetic so my floating point-less RiscPC handled it no problem. However that is unusual. Most projects for which you would use HPC techniques require extensive floating point capabilities. So it wasn't until I got an x86 machine with hardware a floating point unit that I was able to join the original SET@home project.
I participated in that until it was superceded by the new version which is where we are now.
Not a use for idle CPU time itself but a framework to enable it. It may
not surprise you to find out that the Berkeley Open Infrastructure for
Network Computing
was developed at the University of California,
Berkeley by the people who produced the original SETI@home client.
Using the experience gained from the SETI project the developed BOINC as a way to support a multitude of similar projects. All of the projects outlined below use BOINC as a basis.
This project utilises the Met Office's Unified Model
which is used
by them to produce daily forcasts. Of course the resolution is much lower
in this project so that there is a reasonable chance of completing the
45 years of simulated time in 1 year of real time on a PC.
The aim of the project is to get an idea of the most likely outcome of increased green house gasses on the world climate some 50 years in the future. Clearly such a simluation will not be able to tell you that at 1430 on 6th of February, 2060, it will rain. However if the simulation is run enough times with slightly different starting conditions and forcing characteristics it is possible to say that it is most likely that the average temperature will be x.
Because of the length of time to complete one work unit, around a year, getting involved in this project is a serious undertaking.
This project is somewhat like SET@home in that it is searching the output
of telescopes for patterns. The telescopes, in this case, are
LIGO and
GEO600. These instruments attempt
to observe gravitational waves using laser interferometery. The patterns
being sought are those of pulsars
which are spinning neutron stars.
The Large Hadron Collider
or LHC is the latest experiment to be
constructed at CERN. As
part of the design process LHC@home was used to study the stability of
particles orbiting the LHC's giant ring. This is important information as
an unstable orbit in the real experiment could lead to physical damage
and costly repairs.
Although LHC is shortly to be turned on for the first time the odd work unit still pops up for processing. Presumably as the designers check out a new idea.
Quantum Chemistry is chemistry the hard way. To work out what will happen
in a reaction quantum chemistry takes us right back to the physics of that
reaction. The outcome of a reaction is calculated from the interaction of
atoms on the quantum level. This sort of thing is so hard that you can only
do it for the simlest of reactions. As such simple reactions are generally
not very interesting various techniques are used to bring the computations
required into the realms of posibility. One such method is known as
Quantum Monte Carlo
or QMC.
The aim of this project is to refine the QMC technique utilising a distributed compute farm to get the processing horsepower required.
Most people are have at least a passing familiarity with the Search for Extra-Terestrial Intelligence or SETI. Although such an endevour attracks more than its fair share of wide eyed, frothing, paranoid delusional X-Files fans (apologies to any wide eyed, frothing, paranoid delusional X-Files fans - rest assured, I am out to discredit you) it is actually a serious scientific endeavour.
Believing
in extraterestrial life is not a pre-requisit to getting
involved. A number of interesting new natural phenomena have already been
discovered as a side effect of SETI work.
The project uses data produced by the Arecibo radio telescope (Yes, the big one built into a mountain which was used as a location for a James Bond film) as it sweeps the sky. This generates a huge quantity of data which would require massively powerful computers to process. To gain access to such a computer the project harnesses the computers of volunteers to do the work during the users down time.