Skip to content

RAM Snapshotting #72

Description

@markovejnovic

Hyper currently doesn't have a mechanism to support RAM snapshotting. Almost all other competitors do, indeed, have RAM snapshotting support. We currently do support snapshotting the filesystem, and use a relatively clever system for that, and I would hope to design an equally clever system for RAM snapshotting.

There is work left to figure out how exactly to design this feature.

  • A naive memcpy of the RAM state of the VM might end up resulting in huge RAM snapshots that cost a huge amount of money.
  • A memcpy coupled with a lz4 pass introduces some other problems:
    • The lz4 pass increases the time to usable snapshot.
    • The lz4 pass means that resuming VMs from the given state of RAM involves a decompression step. Since lz4 approaches memory bandwidth speeds, this may not end up being such a big issue, but I can imagine that heavily overloaded nodes will struggle with finding CPU bandwidth regardless.

It is of note that I am under a non-legally-binding non-disclosure agreement with https://freestyle.sh/ and have a surface-level understanding of their implementation of their, admittedly, very clever system. Out of respect, I wish to avoid landing on the same architecture/implementation that Freestyle has and will actively work towards protecting their IP.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    design-proposedThe design for this ticket is in the idea stagefeatureAdding a new feature to the product

    Fields

    Target date

    Jul 22, 2026

    Projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions