The madness of 'king cores
80-core servers will add-up to nothing without hypervisors
Back to the software problem. What applications are capable of executing across 80 cores in parallel, with, say, two threads per core, meaning 160 parallel threads? Hmm, ones that run on multi-processor supercomputers already - nuclear explosion simulations and genome sequencing and molecular modelling and ... not Oracle databases, nor the quarterly budget run, and definitely not the accounts receivable app.
Unless I'm missing something the vast bulk of existing applications, the stuff we want to run more quickly, are single or single-digit threaded applications. They need 80 cores like a schizophrenic needs more brains to get really, really confused with multiple personalities.
Intel can have any number of Threaded Building Block development efforts to add parallel programming to C++ applications as it likes, but they're not going to boost the speed of the weekly sales order processing run.
What the many-cored chips could do is to radically increase the application bandwidth of the data centre servers they run in. The cars on the data centre motorway, unlike the multi-media applications on PS3 and the like, won't drive any faster - instead you'll have many more lanes so that the overall number of vehicles on the motorway goes up.
That means, to me and my single-cored brain of a 6-year-old, that the two big bennies of a many-cored chip could be radically better multi-media interface experiences - games, immersive stuff - and radically better data centre application bandwidth.
The former needs software written and compiled for many-cored parallel processing. The latter needs hypervisors to take a software app load composed of dozens of single-digit threaded apps and run each of them in a separate VM on its own core. The hypervisor does the spreading of many single-digit threaded apps across the cores because, no matter how clever the compiler, it can't take a single-digit-threaded app and make it run across 80-cores. Compute that does not.
I'm seeing lots of glamorous guff about brilliantly photo-realistic, 3D hyper-fidelity sound, fantastically immersive interface experiences on Larabee and the like but zilch about hypervisors being the main interface for legacy apps to run on many-cored machines. Without that hypervisor ability data centres will get no boost from many-cored servers at all.
Maybe my core's not running too well but that's my logic. What's yours? ®