In some ways there are disadvantages over the distance between each processor. But then these machines aren't built for the kind of applications we use everyday (by we, i mean us mere mortals who just use computers to run "simple" programs to amuse ourselves)
To give a very very simple example, imagine doing you 2 times tables, 1x2=2, 2x2=4 etc. now if you had 1 processor doing this and 1 sum takes 1 second and you wanted to go to 10x2 it would take 10 seconds plus say 2 second overhead to sort the results, thats 12 seconds altogether. Now how long would it take 10 processors? 1 second. Looking at the example then yes, but then again you allow some overhead for bringing all of these sums together into a list you could say add 2 extra seconds to that, so it would say take 3 seconds to complete. Now compare that to 12 seconds for one processor. What do you see?
That was a very very simple example! But you'll have to forgive me about that, as i'm no expert, but i do understand roughly how it goes together.
If you think along these lines and instead of doing that simple sum it is doing something like the folding
project (probably a bad example) you can see how time is being saved. After all that is mainly what having multiple processors is all about, time.
Amongst other things having a set up like the Blue Gene's. If a node fails it can be isolated from the rest until a suitable time to fix it.
To anyone else reading this, who does actually know what there talking about. Please tell me if i'm just talking rubbish or not?