diff --git a/.buildkite/amd/test-amd-ready.yml b/.buildkite/amd/test-amd-ready.yml index 695f47dc1..585f089a2 100644 --- a/.buildkite/amd/test-amd-ready.yml +++ b/.buildkite/amd/test-amd-ready.yml @@ -107,6 +107,11 @@ steps: - export VLLM_LOGGING_LEVEL=DEBUG - export VLLM_WORKER_MULTIPROC_METHOD=spawn - timeout 20m pytest -s -v tests/diffusion/distributed/test_sequence_parallel.py -m core_model + - >- + timeout 20m pytest -s -v + tests/diffusion/models/ltx2/test_ltx2_transformer_ulysses.py + -m 'core_model and rocm and cards_2' + --run-level "core_model" - label: "Diffusion GPU Worker Test" agent_pool: mi300_2 @@ -122,7 +127,13 @@ steps: mirror_hardwares: [amdproduction] grade: Blocking commands: - - timeout 15m pytest -sv tests/diffusion/models/ -m 'core_model and cuda' --run-level "core_model" + # Preserve legacy one-GPU tests without cards_1 while excluding every + # registered multi-GPU marker from this one-GPU job. + - >- + timeout 15m pytest -sv tests/diffusion/models/ + -m 'core_model and cuda and not + (cards_2 or cards_3 or cards_4 or cards_5 or cards_6 or cards_7 or cards_8)' + --run-level "core_model" - label: "Diffusion ยท Wan22 Test" agent_pool: mi300_1 diff --git a/tests/diffusion/models/ltx2/test_ltx2_transformer_ulysses.py b/tests/diffusion/models/ltx2/test_ltx2_transformer_ulysses.py index 9f09b72a7..0e080e015 100644 --- a/tests/diffusion/models/ltx2/test_ltx2_transformer_ulysses.py +++ b/tests/diffusion/models/ltx2/test_ltx2_transformer_ulysses.py @@ -156,10 +156,14 @@ def _run_transformer_parity(rank: int, world_size: int, master_port: int) -> Non @pytest.mark.full_model -@hardware_test(res={"cuda": "L4"}, num_cards=2) +@hardware_test(res={"cuda": "L4", "rocm": "MI325"}, num_cards=2) def test_ltx_ulysses_transformer_matches_sp1(unused_tcp_port) -> None: """Exercise real plan hooks, RoPE/timestep sharding, and attention routing.""" world_size = 2 + device_count = current_omni_platform.device_count() + assert device_count >= world_size, ( + f"LTX Ulysses parity requires {world_size} accelerator devices; only {device_count} are visible" + ) torch.multiprocessing.spawn( _run_transformer_parity, args=(world_size, unused_tcp_port),