frank-small: seam follows the f16 K + q8_0 V contract from 1862dc3
1862dc3 repriced the Ornith rung (nine full-attn layers: f16/f16 = dead
boot) and flipped CACHE_TYPE_V to q8_0, but its note that the seam was
'retargeted in 8f53df7' covered only the payload paths — the KV test
still asserted the 2026-10-03 unquantized-both-halves contract and held
the suite red. Test now pins the shipped contract: K=f16, V=q8_0,
flash-attn on.
This commit is contained in:
@@ -118,14 +118,17 @@ argv_value() {
|
||||
[ $((ctx / par)) -le 262144 ]
|
||||
}
|
||||
|
||||
@test "the KV contract is unquantized both halves, flash-attn on" {
|
||||
@test "the KV contract is f16 K + q8_0 V, flash-attn on" {
|
||||
serve_argv
|
||||
[ "$status" -eq 0 ]
|
||||
[ "$(argv_value --cache-type-k)" = "f16" ]
|
||||
# Frank, 2026-10-03: the values are unquantized too. The flag pair is what
|
||||
# makes this observable — a build without the FA path silently falls back,
|
||||
# so both must appear in the argv the supervisor runs.
|
||||
[ "$(argv_value --cache-type-v)" = "f16" ]
|
||||
# Frank, 2026-10-05 (1862dc3): the Ornith payload has NINE full-attention
|
||||
# layers (18 KiB/token/half) and +1,900 MiB of weights vs MiMo Q6_K, so
|
||||
# f16/f16 lands ~379 MiB free — a dead boot; q8_0 V keeps 2 x 200,704
|
||||
# AND the 2-3 GiB floor. The flag pair is what makes this observable — a
|
||||
# build without the FA path silently falls back, so both must appear in
|
||||
# the argv the supervisor runs.
|
||||
[ "$(argv_value --cache-type-v)" = "q8_0" ]
|
||||
[ "$(argv_value --flash-attn)" = "on" ]
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user