Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement initial RAM class persistence feature #20387

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Commits on Nov 1, 2024

  1. Implement initial RAM class persistence feature

    With the motivation of reducing startup time, this patch implements
    initial support for a mechanism to persist RAM classes to disk during
    a training run and load the persisted snapshot on subsequent
    identical production runs.
    
    Towards this goal, this patch:
    - Identifies an -Xsnapshot= command-line option that enables the
      snapshotting functionality and takes a string parameter that
      specifies a file path where the snapshot image is/will be.
    - Adds SnapshotFileFormat.h file that specifies the format of the
      snapshot image that is persisted to disk. It describes the J9JavaVM
      members that are supported, namely immortal J9ClassLoader objects
      and the J9Class objects that they load.
    - Adds the VMSnapshotImpl files that specify and implement the
      snapshotting API and include suballocators wherein the data to include
      within a snapshot is allocated.
    - Ensures correct allocation/initialization of the immortal J9ClassLoaders
      and memory segments snapshotting and restoring.
    - Enables taking a snapshot on VM shutdown, and restoring during startup.
    
    Co-authored-by: Tobi Ajila <[email protected]>
    Co-authored-by: Babneet Singh <[email protected]>
    Co-authored-by: Nathan Henderson <[email protected]>
    Signed-off-by: Nathan Henderson <[email protected]>
    4 people committed Nov 1, 2024
    Configuration menu
    Copy the full SHA
    85a3135 View commit details
    Browse the repository at this point in the history