Repository navigation
feat(models): add memory-admitted f16 CPU cache profiles - #8173
Draft
Lightheartdevs wants to merge 3 commits into
Draft
Lightheartdevs wants to merge 3 commits into
Lightheartdevs wants to merge 3 commits into
Conversation
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.
Summary
Registered native profiles hardcode q4_0 K/V cache, so choosing f16 currently requires editing runtime code and can invalidate memory assumptions. Add an explicit
cacheType: "f16"contract for non-MTP CPU models; omitted or explicit q4_0 retains existing behavior. This is separate from the reasoning-mode fix in #8169 and does not close #8168.The shared resolver projects cache arguments and admits f16 against complete GGUF metadata and fresh RAM before native startup/restart stops a process. Host activation uses the same admission before snapshots or writes and requires the Windows native host launcher; WSL-owned tasks, containers, macOS and GPU offload refuse. Catalog overrides cannot change its admitted zero-layer/f16 projection. The active context must be a supported decimal value (4096–262144); malformed or out-of-range values refuse before launch preparation can fall back to a smaller registered estimate. Valid
CTX_SIZE,MAX_CONTEXT, and registered-default precedence remain aligned with the launcher.Baseline-only authoring and registration bind artifact hashes, context, argv and cache precision without claiming measured fit. Retained legacy memory qualifications and f16+MTP refuse; the dashboard cannot present incompatible measured proof as verified.
AI Assistance
Codex inspected production paths, implemented the change, wrote regression controls, and reviewed source/test receipts. A local model supplied a partial review; useful claims were checked against full source and reproduced before repair. Maintainer review and physical acceptance remain required.
Release Lane
release/2.6.xmainStable hotfix reason: not applicable.
Changed Surface
No dependency versions or reasoning flags change; runtime selection and lifecycle admission are the affected surfaces.
Risk And Validation
git diff --checkrelease/2.6.xCommands/results:
Initial new controls failed 12/13 before implementation. The review regression additionally reproduces CPU admission followed by GPU planning when backend metadata changes between reads; final controls refuse before snapshots. Positive controls preserve the native zero-layer/f16 projection despite conflicting catalog values. An actual Windows resolver/argv control also reproduced
CTX_SIZE=1048576being estimated at 4096 while argv used 1048576. Final controls reject that mismatch before key writes or stop/start, exercise both context boundaries, and preserve q4 compatibility and read-only stop identity.The broader earlier run had 1,284 passes and four installer image-pull fixture failures. All four reproduce on unchanged base; two optional macOS qualifier fixture failures also reproduce there. These are retained limitations, not claimed passes; no baseline or assertion was weakened. Full hosted CI remains required.
Operational Change Check
Notes For Reviewers
Review head
e30d5861aaf0627d4ec51323ad6b7f4dfd844b4b, based on7f5c6c2232c86e2a8ce28d43855a651315aa9f86.F16 support is limited to recognized dense CPU layouts, zero GPU layers, no projector and no MTP. GPU/Metal, hybrid layouts and measured f16 qualification are deferred. Capacity is the smaller of fresh available RAM and the existing CPU selector budget; it is an estimate, not a reservation, and gives no credit for stopping the current model.
No installed model/profile is migrated automatically. Before reverting code on an installation that opted into f16, stop its owned runtime and restore its previously qualified q4 profile/configuration; do not leave a new f16 row to an older reader that ignores it. No live activation, fleet acceptance or universal quality improvement is claimed here.