mirror of
https://github.com/Niko1221/Strata.git
synced 2026-11-07 14:21:06 -10:00
verify: the side-projection q8_1 interleave copies need two or more columns (STRATA_SIDE_MIXER=2 on a 1-column window threw on Q2_0 packs: the queries' branch and the GDN gate branch)
This commit is contained in:
1 parent
c8265fce0e
commit
477ac13cbe
1 file changed
+2
-2
+2
-2
@@ -1319,7 +1319,7 @@ bool Verifier::record_window(int T, cudaStream_t cs, std::string& err) {
|
||||
// output), and qkv is recorded before the branch's launch, so its grid is dispatched first and the
|
||||
// conv / recurrence that wait for it start sooner (z is read only after the recurrence)
|
||||
const bool g_il = g_mmvq_il() && strata::kernels::native_mmvq_il_supported(wg->native_type, n, (int) ZV);
|
||||
if (g_il && !il_ready) {
|
||||
if (g_il && !il_ready && n >= 2) {
|
||||
strata::kernels::native_q8_1_interleave(xq_, xil_, (int) N, n, cs);
|
||||
il_ready = true;
|
||||
}
|
||||
@@ -1597,7 +1597,7 @@ bool Verifier::record_window(int T, cudaStream_t cs, std::string& err) {
|
||||
if (cudaEventRecord(mjoin_, side_) != cudaSuccess) { err = "verify: the indexer's branch could not join"; return false; }
|
||||
}
|
||||
if (side_proj) { // the queries beside the keys and values (fork b063c13)
|
||||
if (q_il && !il_ready) { // the copy before the fork (mm(wk) / mm(wv) on cs reuse it)
|
||||
if (q_il && !il_ready && n >= 2) { // the copy before the fork (mm(wk) / mm(wv) on cs reuse it)
|
||||
strata::kernels::native_q8_1_interleave(xq_, xil_, (int) N, n, cs);
|
||||
il_ready = true;
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user