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

[GR-58622] Compact binary encoding for ObjectCopier. #9959

Closed
wants to merge 13 commits into from

Conversation

graalvmbot
Copy link
Collaborator

@graalvmbot graalvmbot commented Oct 24, 2024

A binary encoding for ObjectCopier that uses string deduplication and frequency encoding together with variable-length integers. This brings down the output size for layer-snapshot-graphs-libjavabaselayer by ~75%, and common compression algorithms reduce it by another 60-80%, resulting in a total reduction by 90%-95% compared to the current string encoding. Part of that is achieved by omitting the count, names and types of object fields and names of enum constants, and instead including 16-bit fingerprints to detect when types are different between decoding and encoding.

@oracle-contributor-agreement oracle-contributor-agreement bot added the OCA Verified All contributors have signed the Oracle Contributor Agreement. label Oct 24, 2024
@graalvmbot graalvmbot closed this Nov 1, 2024
@graalvmbot graalvmbot deleted the ph/GR-58622 branch November 1, 2024 00:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
OCA Verified All contributors have signed the Oracle Contributor Agreement.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants