Zing® ReadyNow! and Compile Stashing
Feature Preview

The Zing® ReadyNow! feature is designed to improve warmup and startup characteristics of applications running on the Zing JVM.

Key Terms

  • Warmup time: time between the moment when the first transaction is served by an application and the first transaction that is served at a reasonable speed. Reasonable is usually defined as meeting service-level agreement (SLA) requirements or within certain limits around the best transaction time seen in previous runs.
  • Startup time: time between the invocation of an application and the moment when the first transaction is handled by the application.

Recommended Sequence of Runs

Zing ReadyNow! learns from previous executions and improves warmup and startup time incrementally at every new invocation. For an optimal result it is recommended to use the following sequence of runs:

  1. First Run, also known as Cold Run

    Use the following command-line option:

    -XX:ProfileLogOut=MyApp.prof

    The Zing virtual machine collects the profile information at the First Run.

  2. Second Run, also known as Warm Run

    Use the -XX:ProfileLogOut=MyApp.prof command-line option and add the following new one:

    -XX:ProfileLogIn=MyApp.prof

    This instructs the virtual machine to use the collected profile information. At this point you are expected to see a warmup improvement while you may see some degradation in startup.

  3. Third Run, also known as Hot Run

    Use the flags from the Warm Run again:

    -XX:ProfileLogOut=MyApp.prof
    -XX:ProfileLogIn=MyApp.prof

    By this time the Zing virtual machine is expected to have populated Zing compile stashing with methods precompiled at Cold and Warm Runs and to start seeing the benefit of such caching. At this run you are expected to see the same warmup improvements as at Warm Run and some startup improvements as compared to Warm Run improvements depending on your application.

Keep using the same flags during all subsequent runs to see some incremental startup and CPU utilization improvements.

If you experience any issues with compile stashing, you can turn the feature off using the following command-line option:

-XX:-FalconUseCompileStashing

Note: Our software distributions are signed by an OpenPGP key when appropriate. To verify your download, see Product Signing Keys (OpenPGP) for details.

If you encounter any issues, review the Zing Troubleshooting Guide or visit the Zing Community Forum.

Are you an Open Source developer? Send an email to our Zing Open Source program. Qualified program participants receive one-year Zing renewable keys.

What’s New?

See Also:


© Azul Systems, Inc. 2018 All rights reserved.