Skip to content

Separate SparkRing subsystems and add GLM-5.3 DCP routes - #150

Closed
FujitsuPolycom wants to merge 23 commits into
codex/pr146-live-validationfrom
codex/glm53-readme-quickstart-consolidation
Closed

Separate SparkRing subsystems and add GLM-5.3 DCP routes#150
FujitsuPolycom wants to merge 23 commits into
codex/pr146-live-validationfrom
codex/glm53-readme-quickstart-consolidation

Conversation

@FujitsuPolycom

@FujitsuPolycom FujitsuPolycom commented Aug 30, 2026

Copy link
Copy Markdown
Owner

Status

Implemented and TP4 smoke-verified. This draft publishes operator contracts for two immutable Linux/ARM64 GB10 images. The bounded smoke covers one four-host TP4/DCP1 C4 workload. It does not establish general throughput, soak behavior, or every model and concurrency shape.

Published artifacts

  • Base runtime: ghcr.io/fujitsupolycom/sparkring-glm53-runtime@sha256:11922064b342de1fc98f0ef85e6648843c8fa7eb3e4f4353c6ad82d6e457dde0
  • SparkCache runtime: ghcr.io/fujitsupolycom/sparkring-glm53-sparkcache@sha256:f012dd915c0fff0be384820c2d72cd015b83b9b33c3f980445dd718a807cd0c5
  • Platform: linux/arm64
  • Entrypoint: vllm serve; the launcher supplies only serving arguments.

The images contain no model checkpoints. The run contract pins the Local Inference Lab GLM-5.3 Flash NVFP4 target and the incoai BF16 DFlash2 draft at proposal depth seven. Inherited MXFP8 plumbing labels are recorded separately and do not identify the mounted draft.

Repository documentation boundary

Generic SparkRing pages now describe cluster topology, transport, collective admission, fallback behavior, runtime composition, and evidence routing without using a model as the subsystem identity. Model names, tensor geometries, checkpoint IDs, launch settings, and measurements remain in profile registries, recipes, quickstarts, runtime artifacts, and evidence records.

Resulting operator surface

  • docs/GLM53_JJ_R7_GB10_TP4_QUICKSTART.md provides one route for the base and SparkCache variants.
  • runtime/glm53-flash-jj-r7-gb10/runtime.env.example exposes common topology, capacity, batching, model, cache, CUDA-graph, and backend settings.
  • launch-rank.sh verifies the immutable image ID and identity-bearing target and draft files before starting a rank.
  • Checkpoints can be downloaded once on rank 0 and copied to the other ranks with rsync.
  • One OCI image can be pulled on rank 0, saved once, and streamed to the other ranks over SSH.
  • Base and SparkCache launches use distinct cache namespaces. Modified settings receive launch-specific container labels and do not inherit the bounded smoke status.
  • Prior GLM-5.3 artifact procedures remain available as explicitly historical records rather than competing quickstarts.

Operator defaults

The launcher defaults to a 524,288-token request limit, 8,192 batched tokens, and a 524,288-token SparkCache publication span. These limits are implemented but unqualified. The bounded C4 smoke used 262,144, 4,096, and a 262,144-token span, so default launches are labeled implemented-unqualified-configuration rather than inheriting the smoke claim.

DCP2 and DCP4 routes

The cache-disabled launcher supports DCP1, DCP2, and DCP4. Automatic mode selects CP interleave 1 with full-CKV gather disabled for DCP1, and CP interleave 4 with B12X full-CKV gather enabled for DCP2/DCP4. At the 524,288-token request limit and 8,192 batched tokens, bounded DCP2 and DCP4 live requests completed with exact semantics.

The immutable published SparkCache image remains restricted to DCP1 because it does not contain SparkCache commit 65895c8. A source-overlay deployment completed exact DCP2 and DCP4 publication, full process restart, and SparkCache CUDA restore. runtime/glm53-flash-jj-r7-gb10/SPARKCACHE_DCP_SOURCE_OVERLAY.md records the boundary. A replacement pullable image remains required before DCP2/DCP4 can be offered through the public-image SparkCache route.

Exact composition

  • SparkRing image builder: ca91fa72a4cf7e1edaad9875a1a99ab4f71c49af
  • Active vLLM Python composition: 331573d20bd47e78327ed8d8b4d2e6d350bbb1ab, tree 927f52a0085bcecfd2ba679e5abebe1a62623daf
  • Local Inference Lab B12X: 6255090a03b12c3f7d552102a02fac0b542fb8c9, tree 0bb58d0dcc10e29e00ff9850c0d719fca1aba5ad
  • Switchless NCCL library SHA-256: 5f1c3f10d5ace66d4ba584415bbfe42b6ac1a0a9116a3b81dcbe50516ad924b3
  • SparkCache source: dcbe040d339f243621163b0c6ed4ce96462403d8
  • SparkCache CUDA placement library SHA-256: d57509052b73853bcc8e3c3f47bb81748d87b9cbd8d908fc20d4c79a09aa400c

The receipt distinguishes active Python source from compiled vLLM extensions retained from lower image layers. It does not claim that the active Python revision rebuilt every native extension.

Bounded TP4 result

The SparkCache image published four exact 16K contexts, restarted all four ranks, and restored all four requests with exact codewords. Every restored request reported a 100% external prefix hit. Client time was 0.561595–1.582937 seconds; worker cache service was approximately 277–394 ms.

This C4 smoke used complete 16K snapshots. It does not independently prove the separate C8 shared-base result recorded by the historical exact artifact.

Validation

python -m pytest ...
2015 passed, 9 skipped

ruff check --select E,F,W --ignore E501 spark_transport runtime scripts performance
All checks passed

JSON contracts, shell syntax, repository-relative links, release-safety checks, and whitespace checks also pass.

Compatibility and limits

  • The SparkCache image keeps cache use disabled until explicitly selected and configured.
  • Cache identities remain bound to exact model content, topology, physical rank, schema, geometry, and speculative policy.
  • MTP with SparkCache, C16 page-delta restore, sustained soak, and live fault injection remain unqualified.
  • The images and source contracts are immutable inputs; changing operator settings creates a different deployment claim.

This pull request remains a draft for human review. It updates the existing PR #150 branch and does not merge or close any pull request.

Plan one four-rank direct-link chain without remote work, verify SHA-256 on every rank, resume bounded partial transfers, and optionally import only the expected image ID. Conflicting final files remain unchanged and interrupted operations retain resumable evidence. This adds no runtime-profile, cache-identity, or serving behavior.
State that C4 and C8 were capacity-limited and remain omitted from the research-only throughput row. The FP8 KV and NVMe capacity descriptions remain unchanged.
Bind the exact local image, source composition, model identities, and serving geometry to a machine-readable artifact. Add guarded per-rank launch and retained-container rollback helpers, plus a public operator quickstart.

Record the post-restart scheduler-inventory warmup requirement and the C8 result: eight exact external restores, one authenticated physical base read per rank, and seven avoided reads. The cache identity namespace is unchanged, and rebuilds do not inherit the local artifact's qualification.

Validation: 44 focused runtime, GLM-5.3 profile, and evidence tests passed; Ruff passed; both shell helpers passed bash -n; git diff --check passed.
Provide one reviewed environment file for site paths and common serving, memory, speculative decoding, kernel, SparkCache, network, and CPU controls. Validate the inputs and JSON-encode structured vLLM arguments before starting Docker. Mark settings that differ from the recorded artifact as user-modified and unqualified while continuing to require the exact qualified image identity.

Compatibility: the no-config invocation and all recorded defaults remain unchanged. Configuration files are optional; image aliases must still resolve to the pinned image ID. The qualified launcher continues to support DFlash only.

Validation: Ruff passed across maintained trees. The CPU-only repository gate passed with 2004 tests and 9 environment-dependent skips. Launcher contract coverage includes Bash syntax, invalid watermarks, safely encoded JSON, artifact-default parity, and modified-setting labels.
Identify Local Inference Lab's Jovian Judgement vLLM work as the primary GLM runtime performance and correctness source, B12X as the Blackwell kernel/backend source, and the exact Hugging Face model artifacts used by each GLM-5.3 recipe. Distinguish the recipes' BF16 Inco DFlash checkpoint from Local Inference Lab's separate MXFP8 checkpoint.

Compatibility: documentation and CPU-only contracts change; image construction, serving profiles, cache identity, launch settings, and qualification scope are unchanged.

Validation: Ruff passed across maintained trees. The complete CPU-only SparkRing gate passed with 2005 tests and 9 environment-dependent skips.
Add immutable base and SparkCache image contracts, exact source/model/native provenance, bounded TP4 C4 evidence, and a single rank launcher driven by one operator environment. The launcher selects either published digest, verifies the local image ID and target/draft identity files, isolates cache namespaces, safely encodes structured arguments, and marks changed serving settings unqualified. The quickstart downloads checkpoints once, fans them over the local fabric, and offers a pull-once OCI archive fanout.

Compatibility: historical artifact records remain available and are explicitly labeled historical. Canonical GLM indexes route to the published JJ r7-compatible images. The SparkCache namespace is jj-r7-gb10-page-tail-cow-v1; older cache roots are not aliased. The images retain lower-layer native extensions and do not claim a source-built native vLLM 331573d artifact.

Validation: JSON and Bash syntax checks passed. Ruff passed across maintained trees. The complete CPU-only repository gate passed with 2015 tests and 9 environment-dependent skips. Ten focused public-image contract tests cover identities, OCI labels, evidence, model hashes, image selection, entrypoint arguments, JSON encoding, configuration status, staleness routing, historical scope, and documentation links.
@FujitsuPolycom FujitsuPolycom changed the title Consolidate GLM-5.3 quickstarts and split-page C8 runtime Publish GLM-5.3 JJ r7-compatible GB10 run contracts Aug 31, 2026
@FujitsuPolycom FujitsuPolycom changed the title Publish GLM-5.3 JJ r7-compatible GB10 run contracts Separate SparkRing subsystems and publish GLM-5.3 run contracts Aug 31, 2026
Resolve GLM CP interleave and B12X full-CKV gather automatically for DCP1, DCP2, and DCP4; keep the immutable public SparkCache image restricted to DCP1; and record bounded source-overlay SparkCache publication and restart-restore evidence. The default request limit remains 524288 tokens with 8192 batched tokens. Validation: launcher contracts 10 passed; related runtime contracts 19 passed; Ruff, Bash, JSON, and diff checks clean.
@FujitsuPolycom FujitsuPolycom changed the title Separate SparkRing subsystems and publish GLM-5.3 run contracts Separate SparkRing subsystems and add GLM-5.3 DCP routes Aug 31, 2026
Compose the exact Jovian Judgement r8 cadence patch over the proven SparkCache vLLM source, retain the verified ARM64 native extensions, B12X, switchless NCCL, and CUDA placement library, and provide one DCP1/DCP2/DCP4 image contract. Operator defaults are 1048576 context, 8192 batched tokens, and 30 GiB KV per rank; full-CKV gather remains capped at 524288 tokens. Validation: 15 focused contracts passed; Ruff, Bash, JSON, compilation, and diff checks clean.
Make complete snapshot publication the default, retain tail-only publication as an explicit option, and override inherited r7 manager-page and vLLM composition labels with the active r8 identities. Validation: 15 image and launcher contracts passed; Ruff, Bash, JSON, and diff checks clean.
Expose an externally configurable prefill schedule interval, default it to eight for the R8 runtime, and retain a 524288-token full-CKV gather ceiling under the 1048576-token model limit. Validation: 15 image and launcher contracts passed; Ruff, Bash, and diff checks clean.
@FujitsuPolycom

Copy link
Copy Markdown
Owner Author

Superseded by draft PR #153, which is based directly on public main and includes the exact R8 ARM64 builder, DCP1/DCP2/DCP4 launcher, topology-aware KV defaults, SparkCache/vLLM-only modes, deep-context evidence, direct-fabric fan-out, and current quickstart. Closing the older stacked draft avoids two competing review surfaces.

@FujitsuPolycom
FujitsuPolycom deleted the codex/glm53-readme-quickstart-consolidation branch August 31, 2026 22:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant