Research bounded flat-page object prefetch - #43
Closed
FujitsuPolycom wants to merge 10 commits into
Closed
Conversation
Flat page-snapshot v2 restore reads and authenticates at most two later macro objects concurrently, then updates the complete snapshot digest and submits CUDA spans in manifest order. The existing IO-worker setting can reduce the path to one worker; two placement-owned arenas cap larger values. Cache identity and persisted schemas are unchanged. GPU-free overlap, ordering, corruption, one-worker fallback, and full repository suites pass.
Owner
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Research implementation
Status: research-only.
SparkCache commit
df1202686788995f174e410538e35c2978ebb526contains a bounded flat-page reader forsparkcache-page-snapshot-manifest/v2. It authenticates the root metadata and ordered contiguous object descriptors before placement, authenticates the first object before parsing its snapshot header, and reads later objects into request-private host buffers with at most four concurrent reads and 256 MiB of retained payload per batch. Objects are copied and submitted in manifest order only after every read in the batch authenticates.The direct version 2 path preserves the authenticated
snapshot_sha256field but does not recompute that digest over the concatenated byte stream after every object has matched its authenticated SHA-256 descriptor. GPU-free tests cover malformed roots, descriptor order and range drift, object corruption, submission ordering, one-worker behavior, four-reader concurrency, memory bounds, failed-batch cleanup, and timing decomposition.Serving result
The exact ARM64 image
sha256:df4e09a32cdbf1c0e69cc7c4c9e95d890d6c7a1e3eaac84f969912a16fd27dd3, built from SparkCacheeabe7fd0c878db7384ef87fe80a1e96b9bedcf67, restored the existing 131,072-token contextb4161571df103395e2abae10372a90f35468561ec6c42bf4a7b7f0d0dfda5873at TP4/DCP1. Every rank structurally verified 813,068,464 bytes in 13 objects. All-rank ranges were:The restored response was
spark; the deterministic oracle requiredred. A one-token-changed prompt with the same length recomputedredin 55.141 seconds. Structural validation therefore did not establish semantic correctness. This implementation must not be used as a qualified restore path.The immutable record is
evidence/glm53-flash-dflash7-bf16/flat-v2-four-reader-semantic-rejection-eabe7fd.json. Its GPU-free validation test prevents the receipt from being interpreted as qualification.Compatibility and deployment status
Cache identity, digest salts, 256-token logical geometry, persisted schemas,
snapshot_sha256, CUDA placement ABI, and namespace values are unchanged. Existing version 2 manifests remain structurally readable. Python restore and non-flat restore paths are unchanged.The candidate image is rejected for deployment. The qualified single-reader artifact remains
sha256:35b58a7bf414059c65b8f74e4e4b17ee6a81b7008e1bffbc9bd298b5e08c739eat SparkCache sourcea1511d26a1fe2b17b24561bc52e376bf7f54b06a. No OCI image or package is published by this PR.Source identity
a1511d26a1fe2b17b24561bc52e376bf7f54b06aeabe7fd0c878db7384ef87fe80a1e96b9bedcf67d88a65ea265a6f212367baa8c4a4970079d6b08ad9a7800ce201b0671676fc8d71423947c7b24e4797758db727c06e0e684495fedf1202686788995f174e410538e35c2978ebb526Validation
git diff --check: passedThe PR remains draft. It does not merge, publish, close, delete, or operate a serving deployment.