Commit 0fd2072
committed
test(v4-path-c): lock in GDN+KDA Path C real-kernel parity (unblocked by ffi-NULL fix)
The ffi-NULL fix (tilelang 168877b0) unblocked GDN Path C with NO prim completion needed -- the
scaffold's recurrence math was already correct (structural twin of the working KDA Path C kernel).
Both GDN + KDA Path C now DISPATCH the real @T.prim_func Metal kernel and MATCH the FLA-naive
reference (rel_err 1.9e-7..4.8e-7, allclose True across production shapes, L2-normalized q/k).
Tests (test-only, no production code changed):
- +test_kda_path_c_real_kernel_parity_with_path_a (the KDA analog the suite lacked).
- Fixed stale test_gdn_dispatch_each_path_runs[path_e]: it fed a sign-unconstrained gate (g>0
possible), physically invalid for GDN (decay=exp(g)<=1); Path E correctly RAISED per RULE #1.
Changed to a valid non-positive gate (pre-existing failure on origin, not introduced here).
The 2 masking tests (test_path_c_forced_returns_valid_output GDN+KDA) now pass via REAL Path C
(spy-confirmed, not Path A). Full GDN+KDA suite 109 passed/2 skip. RULE #1 verified: runtime crash
in Path C raises "Refusing to silently fall back to Path A" even with allow_fallback=True.1 parent ce90574 commit 0fd2072
2 files changed
Lines changed: 41 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
| 12 | + | |
12 | 13 | | |
13 | 14 | | |
14 | 15 | | |
| |||
196 | 197 | | |
197 | 198 | | |
198 | 199 | | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
199 | 231 | | |
200 | 232 | | |
201 | 233 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
136 | 136 | | |
137 | 137 | | |
138 | 138 | | |
139 | | - | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
140 | 146 | | |
141 | 147 | | |
142 | 148 | | |
143 | | - | |
144 | | - | |
| 149 | + | |
| 150 | + | |
145 | 151 | | |
146 | 152 | | |
147 | 153 | | |
| |||
0 commit comments