Repository navigation
Conversation
Fit both CPU and GPU scheduling reservations into one placement bundle and report the shared device offset. Expose an explicit actor-only resident recipe and retain complete CPU validation receipts. Signed-off-by: 0z5a <dezhen.lu@student.uni-tuebingen.de>
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.
The native backend rejected colocation, and its rollout worker requested the entire 1-CPU/1-GPU placement bundle. Removing the guard alone would leave the learner's additional 0.4 CPU/GPU reservation unplaceable and retain the wrong rollout device offset.
This adds an explicit resident GRPO/RLTT profile: one learner and one rollout engine share a bundle, with rollout requesting 0.5 CPU/GPU and reporting offset zero. The recipe disables both offload paths. Model state remains resident in separate workers; Ray fractions do not partition GPU memory. Dedicated placement, training math, publication barriers and held-out evaluation remain unchanged.
Stacked on #13. Author/committer and DCO: 0z5a.
Validation
580 distinct CPU tests pass; six CUDA tests skip and three known missing-Triton factory tests are deselected. This includes the existing numerical/update/recovery contracts, actual argument resolution, captured deployment/learner resource options, and family/algorithm/resume recipe cases. The initial one-case fixture failure is retained; the fixture omitted a field normally resolved by common validation. Ruff, formatting and source diff checks pass.
Actual shared-device Ray/CUDA startup, capacity, complete training and fresh-worker recovery remain unqualified. A compatible existing environment and full resource handoff are required for those runs. Critic, offload, multi-rank learner, release-train and recovery are outside this initial resident profile; bare
--colocatestill selects offload defaults and is rejected.Report:
docs/native_colocation_results.md. Tested source hashes and raw receipts are retained inbenchmarks/results/native-colocation-cpu/.