Skip to content

Commit 3a922c1

Browse files
authored
[Bugfix][Core] Fix and refactor logging stats (vllm-project#4336)
1 parent c47ba4a commit 3a922c1

File tree

2 files changed

+16
-10
lines changed

2 files changed

+16
-10
lines changed

vllm/engine/async_llm_engine.py

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,15 @@
88
from transformers import PreTrainedTokenizer
99

1010
from vllm.config import DecodingConfig, ModelConfig
11+
from vllm.core.scheduler import SchedulerOutputs
1112
from vllm.engine.arg_utils import AsyncEngineArgs
1213
from vllm.engine.llm_engine import LLMEngine
1314
from vllm.executor.ray_utils import initialize_ray_cluster, ray
1415
from vllm.logger import init_logger
1516
from vllm.lora.request import LoRARequest
1617
from vllm.outputs import RequestOutput
1718
from vllm.sampling_params import SamplingParams
18-
from vllm.sequence import MultiModalData
19+
from vllm.sequence import MultiModalData, SamplerOutput
1920
from vllm.usage.usage_lib import UsageContext
2021

2122
logger = init_logger(__name__)
@@ -224,8 +225,7 @@ async def step_async(self) -> List[RequestOutput]:
224225
scheduler_outputs.ignored_seq_groups, seq_group_metadata_list)
225226

226227
# Log stats.
227-
if self.log_stats:
228-
self.stat_logger.log(self._get_stats(scheduler_outputs))
228+
self.do_log_stats(scheduler_outputs, output)
229229

230230
return request_outputs
231231

@@ -707,9 +707,13 @@ async def get_decoding_config(self) -> DecodingConfig:
707707
else:
708708
return self.engine.get_decoding_config()
709709

710-
async def do_log_stats(self) -> None:
710+
async def do_log_stats(
711+
self,
712+
scheduler_outputs: Optional[SchedulerOutputs] = None,
713+
model_output: Optional[List[SamplerOutput]] = None) -> None:
711714
if self.engine_use_ray:
712-
await self.engine.do_log_stats.remote() # type: ignore
715+
await self.engine.do_log_stats.remote( # type: ignore
716+
scheduler_outputs, model_output)
713717
else:
714718
self.engine.do_log_stats()
715719

vllm/engine/llm_engine.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -597,16 +597,18 @@ def step(self) -> List[RequestOutput]:
597597
scheduler_outputs.ignored_seq_groups, seq_group_metadata_list)
598598

599599
# Log stats.
600-
if self.log_stats:
601-
self.stat_logger.log(
602-
self._get_stats(scheduler_outputs, model_output=output))
600+
self.do_log_stats(scheduler_outputs, output)
603601

604602
return request_outputs
605603

606-
def do_log_stats(self) -> None:
604+
def do_log_stats(
605+
self,
606+
scheduler_outputs: Optional[SchedulerOutputs] = None,
607+
model_output: Optional[List[SamplerOutput]] = None) -> None:
607608
"""Forced log when no requests active."""
608609
if self.log_stats:
609-
self.stat_logger.log(self._get_stats(scheduler_outputs=None))
610+
self.stat_logger.log(
611+
self._get_stats(scheduler_outputs, model_output))
610612

611613
def _get_stats(
612614
self,

0 commit comments

Comments
 (0)