A high-throughput and memory-efficient inference and serving engine for LLMs
Mirrored from https://github.com/tduncan-lum/Nvidia-Optimization-Stack---VLLM.git
Synced Nov 2, 11:00 UTC
[CI][ROCm] Don't skip MoRI-IO Connector tests (#43703)
Signed-off-by: simondanielsson <simon.danielsson99@hotmail.com>
Simon Danielsson committed
May 29, 2026 at 11:06 UTC
b7fb747d8dea8f93af1473fd707759b537a0255e
1 file changed
+4
-16
tests/v1/kv_connector/unit/test_moriio_connector.py
+4
-16
@@ -1,7 +1,6 @@
1
# SPDX-License-Identifier: Apache-2.0
2
# SPDX-FileCopyrightText: Copyright contributors to the vLLM project
3
import importlib.util
4
-import subprocess
4
import uuid
5
from unittest.mock import MagicMock, patch
6
@@ -48,18 +47,6 @@ def _make_test_kv_cache_config() -> KVCacheConfig:
47
aiter_available = importlib.util.find_spec("aiter") is not None
48
mori_available = importlib.util.find_spec("mori") is not None
49
51
-
52
-def _rdma_available() -> bool:
53
- """Check if RDMA devices are available."""
54
- try:
55
- result = subprocess.run(["ibv_devinfo"], capture_output=True, text=True)
56
- return "No IB devices found" not in result.stderr
57
- except FileNotFoundError:
58
- return False
59
-
60
-
61
-rdma_available = _rdma_available()
62
-
50
pytestmark = pytest.mark.skipif(
51
not (current_platform.is_rocm() and mori_available),
52
reason="MoRIIOs are only available on ROCm with aiter package installed",
@@ -224,11 +211,14 @@ def create_vllm_config(
211
cache_dtype="auto",
212
enable_prefix_caching=True,
213
)
214
+ # These tests exercise connector setup, not real RDMA transfer (MoRI wrapper is
215
+ # mocked), so we can use any backend without affecting test validity. Use xGMI to
216
+ # avoid requiring RNICs in CI.
217
kv_transfer_config = KVTransferConfig(
218
kv_connector="MoRIIOConnector",
219
kv_role=role,
220
enable_permute_local_kv=enable_permute_local_kv,
231
- kv_connector_extra_config={"read_mode": read_mode},
221
+ kv_connector_extra_config={"read_mode": read_mode, "backend": "xgmi"},
222
)
223
return VllmConfig(
224
scheduler_config=scheduler_config,
@@ -417,7 +407,6 @@ def test_read_mode_loads_remote_block_ids():
407
@pytest.mark.skipif(
408
not aiter_available, reason="Requires aiter package for ROCm FlashAttention backend"
409
)
420
-@pytest.mark.skipif(not rdma_available, reason="No RDMA devices available")
410
def test_register_kv_caches(mock_parallel_groups):
411
"""Test that MoRIIOConnector.register_kv_caches correctly registers kv caches."""
412
ROLE = "kv_consumer"
@@ -517,7 +506,6 @@ def test_register_kv_caches(mock_parallel_groups):
506
@pytest.mark.skipif(
507
not aiter_available, reason="Requires aiter package for ROCm FlashAttention backend"
508
)
520
-@pytest.mark.skipif(not rdma_available, reason="No RDMA devices available")
509
def test_moriio_handshake_returns_metadata(mock_parallel_groups):
510
"""MoRIIO handshake socket returns valid agent metadata over ZMQ."""
511