Repository navigation
parity tool: a new-kernel mismatch must fail the run; dispatch comment fallback was stale - #64
Merged
Merged
Conversation
The gate/up row and IQ4_NL down comparisons printed their distance from ggml's vec_dot without affecting the exit code, so a kernel that silently diverged still reported 0 failures. Gate both at 1e-5 (measured 3e-8 and 1e-7, so 100x headroom). Verified: 0 failures at 1e-5, and with the threshold dropped to 1e-9 the gate fires on every layer. Also corrects the comment above the gate/up dispatch: STRATA_NO_IQ512 drops an AVX-512 CPU to the AVX-2 kernel, not to ggml; ggml's vec_dot needs both switches set.
pipeob0
force-pushed
the
gh/avx2-followups
branch
from
September 28, 2026 16:34
9c61262 to
a3545f5
Compare
Owner
MistVVK
pushed a commit
to MistVVK/XeStrata
that referenced
this pull request
Oct 3, 2026
…tch as a failure, not just print
Hugua700
pushed a commit
to Hugua700/Strata
that referenced
this pull request
Oct 6, 2026
…tch as a failure, not just print
anon761
pushed a commit
to anon761/Strata-upstream
that referenced
this pull request
Oct 6, 2026
…tch as a failure, not just print
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 two follow-ups you listed in your #43 merge note. Both are yours to shape; nothing here changes a kernel.
1. The comment above the gate/up dispatch described a fallback that no longer exists. It said
STRATA_NO_IQ512 / STRATA_NO_IQ256 fall back to ggml-cpu's single-token vec_dot. Since #43,STRATA_NO_IQ512drops an AVX-512 CPU to the AVX-2 kernel,STRATA_NO_IQ256drops the AVX-2 kernel, and ggml'svec_dotis reached only with both set (and on a CPU without AVX-512,STRATA_NO_IQ512changes nothing at all). Comment-only commit.2. The parity tool printed the new kernels' distance from ggml's
vec_dotwithout affecting the exit code. A kernel that silently diverged still reported0 failures, which is the one property of that tool people rely on. Both comparisons (the gate/up rows incheck, and the IQ4_NL down) are now gated at 1e-5 and incrementfailures. Measured headroom: gate/up rows 3.1-3.4e-08, IQ4_NL down ~1e-7, so the gate sits ~100x above the observed spread.Verified on this box (IQ2_XS, IQ2_XXS, IQ3_S, IQ4_NL layers):
native_expert_parity: 0 failures(unchanged, as it should be);Both sites fire, and the run exits non-zero. The threshold is back at 1e-5 in the commit.
Left alone deliberately: the
q2_0down comparison prints ~2.1e-04, which is the pre-existing Q2_0 kernel against ggml and is expected to be that coarse — gating it at 1e-5 would be a false alarm, so it stays print-only.