viernes, 27 de agosto de 2010

Azul Zing


Me hago eco del último newsletter en, que la verdad parecía que esto iba a perder interés y ha entrado un nuevo jugador en el match de las JVM sobre arquitecturas x64... Azul Systems, que da el salto por fin y ha portado su Zing VM (anteriormente sólo disponible para su arquitectura sobre procesadores Azul Vega).

"Until now, if you wanted to eliminate all but the tiniest GC pauses (e.g. everything over 1 millisecond), you had to either program in a very non-object oriented way (almost eliminating object creation and destruction); or program in a specialized way to the Java Realtime System, or sometimes you would be lucky and the Oracle) JRockit Real Time or IBM WebSphere Real-time would work well on your app and keep the GC pauses right down there.

But now Azul are providing a mainstream option that specifically targets keeping GC pauses tiny for the majority of Java applications, giving us all a new option with their new Zing product and the Managed Runtime Initiative. This is great news since with Oracle owning both JRockit and HotSpot, competitive
pressures on JVM evolution were hugely reduced. And what competition Azul are providing: with GC pauses typically under 1 millisecond even for 100GBs heaps, and even the occasional longer GC pause still only into the 10-20 millisecond range! (Gil Tene, Azul's CTO, says as far as they can tell these longer GC pauses are caused by the OS context switching during a GC pause, and not because the GC pause actually takes any longer).


Previously, Azul was a very niche competitor - you had to buy their hardware if you wanted their low pause Java runtime, and typically that was only going to fly if you needed very large scaled JVMs. For the smaller low latency application that desperately wanted low pause GCs, Azul didn't even feature on the evaluation list. But now Azul has ported their runtime to run on Intel and AMD processors, suddenly this is an option for many more applications. And Azul haven't stopped there, they've also created the Managed Runtime Initiative (MRI) to provide a free JVM option with those incredibly low GC pauses. To enable this, they've contributed kernel changes to linux and implemented a Java Runtime based on openjdk - it's all available from the MRI site; and although currently it's only an alpha release, Azul are intending to stabilize the combination to a fully supported release.

This is not only serious new competition for Oracle's JVM, but realistically targets two of the four top JVM performance challenges (GC pause times and very large heaps; the other two are higher visibility into production runtimes; and transparently utilising multiple cores). Java long ago reached production maturity capable of handling almost anything thrown at it but, every time I think Java might be slowing down, yet another brilliant change happens in the Java space to make it yet better again. Amazing that after 15 years on the leading edge, it just carries on staying right there."

Recomiendo leer la newsletter íntegra Y SUSCRIBIRSE A LA MISMA, yo llevo ya unos añicos... :-)