| 12345678910111213141516171819202122 |
- --- baked-ours/v1/attention/backends/mla/sparse_swa.py 2026-09-10 20:13:20.000000000 +0200
- +++ baked/v1/attention/backends/mla/sparse_swa.py 2026-09-11 10:13:47.000000000 +0200
- @@ -121,6 +121,9 @@
- alignment=576 if uses_fp8_ds_mla_layout else 512,
- model_version="deepseek_v4",
- kv_quant_mode=get_kv_quant_mode(self.cache_config.cache_dtype),
- + # DCP: the 128-token window is tiny; every rank keeps all of it
- + # (no sharding), so SWA needs no cross-rank combine.
- + dcp_replicated=True,
- )
-
- def forward(self): ...
- @@ -411,6 +414,9 @@
- reorder_batch_threshold: int | None = None
- _cudagraph_support: ClassVar[AttentionCGSupport] = AttentionCGSupport.UNIFORM_BATCH
- supports_draft_decode_metadata_update = True
- + # DSpark's non-causal multi-token decode only touches the replicated SWA
- + # caches (no cross-rank combine), so it is supported under DCP.
- + supports_non_causal_multi_token_dcp: ClassVar[bool] = True
-
- def __init__(self, *args, **kwargs):
- super().__init__(*args, **kwargs)
|