acdir-llada-math500 / lmdeploy /tests /pytorch /engine /test_engine_checker.py
NYCU-MLLab's picture
Upload folder using huggingface_hub
4a28d4d verified
Raw
History Blame Contribute Delete
1.4 kB
# Copyright (c) OpenMMLab. All rights reserved.
import pytest
from lmdeploy.messages import PytorchEngineConfig
from lmdeploy.pytorch.disagg.config import EngineRole
from lmdeploy.pytorch.engine.engine_checker import EngineChecker
def _build_checker(engine_config: PytorchEngineConfig):
checker = object.__new__(EngineChecker)
checker.engine_config = engine_config
def log_and_raise(*args, **kwargs):
raise RuntimeError(kwargs.get('message'))
checker.log_and_exit = log_and_raise
return checker
def test_engine_checker_rejects_split_kernel_blocks_for_pd_migration():
engine_config = PytorchEngineConfig(max_batch_size=1,
role=EngineRole.Prefill,
block_size=64,
kernel_block_size=32)
checker = _build_checker(engine_config)
with pytest.raises(RuntimeError, match='PD migration does not support block_size != kernel_block_size'):
checker.check()
def test_engine_checker_allows_split_kernel_blocks_for_hybrid_engine():
engine_config = PytorchEngineConfig(max_batch_size=1,
role=EngineRole.Hybrid,
block_size=64,
kernel_block_size=32)
checker = _build_checker(engine_config)
checker.check()