diff --git a/python/sglang/srt/managers/scheduler.py b/python/sglang/srt/managers/scheduler.py index 1f4612868..5f3c85b65 100644 --- a/python/sglang/srt/managers/scheduler.py +++ b/python/sglang/srt/managers/scheduler.py @@ -454,6 +454,7 @@ class Scheduler( enable_metrics=self.server_args.enable_metrics, enable_kv_cache_events=bool( self.server_args.kv_events_config + and self.ps.pp_rank == 0 and self.ps.attn_tp_rank == 0 and self.ps.attn_cp_rank == 0 ), diff --git a/python/sglang/srt/managers/scheduler_components/kv_events_publisher.py b/python/sglang/srt/managers/scheduler_components/kv_events_publisher.py index 86e530ab9..e41538eb2 100644 --- a/python/sglang/srt/managers/scheduler_components/kv_events_publisher.py +++ b/python/sglang/srt/managers/scheduler_components/kv_events_publisher.py @@ -59,7 +59,10 @@ class SchedulerKvEventsPublisher: def init_kv_events(self, kv_events_config: Optional[str]): self.enable_kv_cache_events = bool( - kv_events_config and self.ps.attn_tp_rank == 0 and self.ps.attn_cp_rank == 0 + kv_events_config + and self.ps.pp_rank == 0 + and self.ps.attn_tp_rank == 0 + and self.ps.attn_cp_rank == 0 ) if self.enable_kv_cache_events: diff --git a/python/sglang/srt/observability/metrics_collector.py b/python/sglang/srt/observability/metrics_collector.py index f83020ee8..d1a9cca04 100644 --- a/python/sglang/srt/observability/metrics_collector.py +++ b/python/sglang/srt/observability/metrics_collector.py @@ -1044,6 +1044,7 @@ class SchedulerMetricsCollector(_StatLoggerDIMixin): ) enable_kv_cache_events = bool( server_args.kv_events_config + and ps.pp_rank == 0 and ps.attn_tp_rank == 0 and ps.attn_cp_rank == 0 )