From 7042cc96b0a8a154ea165c652d4f63e5be9c291e Mon Sep 17 00:00:00 2001 From: Mark McLoughlin Date: Sat, 10 May 2025 02:23:07 +0100 Subject: [PATCH] [V1][Spec Decoding] Log accumulated metrics after system goes idle (#17913) Signed-off-by: Mark McLoughlin --- vllm/v1/metrics/loggers.py | 4 +--- vllm/v1/spec_decode/metrics.py | 2 ++ 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/vllm/v1/metrics/loggers.py b/vllm/v1/metrics/loggers.py index 9109bdcf42f27..7455f1813cd76 100644 --- a/vllm/v1/metrics/loggers.py +++ b/vllm/v1/metrics/loggers.py @@ -128,9 +128,7 @@ class LoggingStatLogger(StatLoggerBase): scheduler_stats.gpu_cache_usage * 100, self.prefix_caching_metrics.hit_rate * 100, ) - - if scheduler_stats.spec_decoding_stats is not None: - self.spec_decoding_logging.log(log_fn=log_fn) + self.spec_decoding_logging.log(log_fn=log_fn) def log_engine_initialized(self): logger.info( diff --git a/vllm/v1/spec_decode/metrics.py b/vllm/v1/spec_decode/metrics.py index eb550a6c46976..f71a59908ef39 100644 --- a/vllm/v1/spec_decode/metrics.py +++ b/vllm/v1/spec_decode/metrics.py @@ -67,6 +67,8 @@ class SpecDecodingLogging: spec_decoding_stats.num_accepted_tokens_per_pos) def log(self, log_fn=logger.info): + if not self.num_drafts: + return num_drafts = np.sum(self.num_drafts) num_draft_tokens = np.sum(self.num_draft_tokens) num_accepted_tokens = np.sum(self.num_accepted_tokens)