More Java cores than you know what to do with

After publishing a skeptical and rather petulant piece about Azul last October, El Reg decided to give Azul’s CMO, Shahin Khan, his own soapbox this week. He certainly waxed lyrical “If you could count CPUs the same way that you count memory, some problems would simply become uninteresting and others would transform in a qualitative way. And completely new possibilities would emerge. […] No need to plan capacity for each individual application. Let all of your users share a huge compute pool and plan capacity across many applications.”

Well, maybe. Remember that Azul is planning to ship up to 1,200 cores in a single rack, but these core will be specialized Java™ engines. Now I’d love to see Java take over the world and remove the need for any other kind of operating environment, but for the next few years, while we’re waiting for this brave new world, systems like Azul’s are going to have to coexist with mundane Solaris and Linux boxes. In other words, it’s a co-processor, an “applications accelerator”. And ever since the days of “intelligent Ethernet cards” (anyone remember the 3C505?) I’ve observed that such co-processors are doomed to be overtaken by general-purpose processors. The only obvious exception is in the area of graphics. Not only are the specialized processors not that much faster than their general-purpose brethren; the cost and complexity of the software needed to manage the co-processor usually eats up all of the savings. In the case of the 3C505, I remember that the host driver to manage the on-board TCP/IP stack was roughly as complex as a TCP/IP stack!

Don’t get me wrong – I think that multiple core are absolutely the way to go. Various companies – Sun, IBM, even Intel – are realizing that the best way forward is to simplify their pipelines to reduce the size and complexity of their cores so that they can stuff more cores on a chip. Designing around Java byte-codes rather than RISC ops doesn’t save all that much.

Will Azul prove me wrong? I’m not holding my breath….