Azul Systems has added a solution to the warm-up problem associated with Java applications to its Zing Java virtual machine and there is more to come as the Java specialist turns its attention to improving Java libraries, making Hadoop more efficient and optimising Zing for cloud deployments.
The company’s solution to the Java warm-up problem, which is caused by the time taken for a Java virtual machine to compile an application to run on a server and then recompile parts of the app to optimise performance, is called ReadyNow!. It is included free of charge in the latest version of Zing, version 5.9, and has been available in the market for about a month.
Having solved the problems of garbage collection and application hiccups related to Java virtual machines with Zing, Azul responded to market concern about how long it takes for Java apps to get to their peak performance level with ReadyNow!
Scott Sellers, Azul systems president and CEO, says: “Warm-up can take minutes or even tens of minutes. This can be disastrous in high performance, low latency trading environments as most money is made at market open and close. Firms want their apps to be at peak performance as the market opens and closes, so we have developed techniques in ReadyNow! that allow apps to be compiled to a point that is closer to full optimisation at start time than was previously possible.”
ReadyNow! avoids the use of synthetic trade data that can warm up Java applications, but can also cause operational risk if synthetic trades are accidentally executed in the market, and has instead implemented techniques in the compilation and recompilation process that reduce warm-up time. These include minimising the number of deoptimisation occurrences before recompilation, allowing users to prioritise particular code and how it should be compiled, and injecting learnt information from previous compilations into live compilations.
Sellers, explains: “ReadyNow! technology includes capabilities for different types of apps, but they all serve the purpose of minimising the effects of Java application warm-up. Instead of starting an app at 50% performance and building up incrementally to 100%, ReadyNow! can start at 90% or 95% and then build up.”
Azul expects any organisation requiring consistency in trade execution to be interested in ReadyNow! and suggests high frequency traders, exchanges, market makers and trading desks in investment banks are among those that need their Java applications performing as well as possible at runtime. As the solution is designed for any Java app, risk platforms that must be as fast as trading platforms could also use ReadyNow!.
Looking forward, Azul is working to improve specialised Java libraries by using new constructs and language for specific sectors including financial services. It is also considering how to make deployments of the Java Big Data solution Hadoop more efficient and is working to optimise Zing for architecture deployed in the cloud.