From 16d11c2a10e76739a8715ee8b2cffd83320924a8 Mon Sep 17 00:00:00 2001 From: Yuxuan Zhang <2448370773@qq.com> Date: Fri, 17 Apr 2026 09:52:13 +0800 Subject: [PATCH] Fix for the low-probability garbled output issue in the GLM-5 series models. (#22811) --- python/sglang/srt/mem_cache/memory_pool.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/python/sglang/srt/mem_cache/memory_pool.py b/python/sglang/srt/mem_cache/memory_pool.py index c385ec053..41e817d50 100644 --- a/python/sglang/srt/mem_cache/memory_pool.py +++ b/python/sglang/srt/mem_cache/memory_pool.py @@ -1887,6 +1887,8 @@ class NSATokenToKVPool(MLATokenToKVPool): seq_len: int, page_indices: torch.Tensor, ): + if self.layer_transfer_counter is not None: + self.layer_transfer_counter.wait_until(layer_id - self.start_layer) buf = self.index_k_with_scale_buffer[layer_id - self.start_layer] return index_buf_accessor.GetK.execute( self, buf, seq_len=seq_len, page_indices=page_indices @@ -1898,6 +1900,8 @@ class NSATokenToKVPool(MLATokenToKVPool): seq_len: int, page_indices: torch.Tensor, ): + if self.layer_transfer_counter is not None: + self.layer_transfer_counter.wait_until(layer_id - self.start_layer) buf = self.index_k_with_scale_buffer[layer_id - self.start_layer] return index_buf_accessor.GetS.execute( self, buf, seq_len=seq_len, page_indices=page_indices @@ -1922,6 +1926,8 @@ class NSATokenToKVPool(MLATokenToKVPool): k_fp8: (seq_len, index_head_dim), uint8 k_scale: (seq_len, 4), uint8 """ + if self.layer_transfer_counter is not None: + self.layer_transfer_counter.wait_until(layer_id - self.start_layer) buf = self.index_k_with_scale_buffer[layer_id - self.start_layer] return index_buf_accessor.GetKAndS.execute( self,