[diffusion] CI: deprecate WarmupRunner in CI (#18038)

Co-authored-by: Mick <mickjagger19@icloud.com>
This commit is contained in:
陈一涵
2026-02-02 15:16:08 +08:00
committed by GitHub
parent 522e13b4d2
commit 86117dfe0e
6 changed files with 123 additions and 273 deletions

View File

@@ -186,7 +186,9 @@ class GPUWorker:
# TODO: extract to avoid duplication
if req.perf_dump_path is not None or envs.SGLANG_DIFFUSION_STAGE_LOGGING:
PerformanceLogger.log_request_summary(timings=output_batch.timings)
# Avoid logging warmup perf records that share the same request_id.
if not req.is_warmup:
PerformanceLogger.log_request_summary(timings=output_batch.timings)
except Exception as e:
logger.error(
f"Error executing request {req.request_id}: {e}", exc_info=True

View File

@@ -10,8 +10,6 @@ from openai import OpenAI
from sglang.multimodal_gen.test.server.test_server_utils import (
ServerManager,
WarmupRunner,
download_image_from_url,
get_generate_fn,
)
from sglang.multimodal_gen.test.server.testcase_configs import (
@@ -20,7 +18,6 @@ from sglang.multimodal_gen.test.server.testcase_configs import (
)
from sglang.multimodal_gen.test.test_utils import (
get_dynamic_server_port,
is_image_url,
wait_for_req_perf_record,
)
@@ -68,8 +65,8 @@ def _build_server_extra_args(case: DiffusionTestCase) -> str:
a += f" --ring-degree {server_args.ring_degree}"
if server_args.lora_path:
a += f" --lora-path {server_args.lora_path}"
if server_args.enable_warmup:
a += " --enable-warmup"
if server_args.warmup:
a += " --warmup"
return a
@@ -110,35 +107,6 @@ def _run_case(case: DiffusionTestCase) -> dict:
try:
sp = case.sampling_params
output_size = os.environ.get("SGLANG_TEST_OUTPUT_SIZE", sp.output_size)
w = WarmupRunner(
port=ctx.port,
model=case.server_args.model_path,
prompt=sp.prompt or "A colorful raccoon icon",
output_size=output_size,
output_format=sp.output_format,
)
if case.server_args.warmup > 0:
if sp.image_path and sp.prompt:
image_path_list = sp.image_path
if not isinstance(image_path_list, list):
image_path_list = [image_path_list]
new_image_path_list = []
for p in image_path_list:
if is_image_url(p):
new_image_path_list.append(download_image_from_url(str(p)))
else:
pp = Path(p)
if not pp.exists():
raise FileNotFoundError(str(pp))
new_image_path_list.append(pp)
w.run_edit_warmups(
count=case.server_args.warmup,
edit_prompt=sp.prompt,
image_path=new_image_path_list,
)
else:
w.run_text_warmups(case.server_args.warmup)
client = _openai_client(ctx.port)
gen = get_generate_fn(
model_path=case.server_args.model_path,

View File

@@ -31,11 +31,7 @@
0.6,
0.8,
1.0
],
"warmup_requests": {
"text": 1,
"image_edit": 0
}
]
},
"scenarios": {
"qwen_image_t2i": {
@@ -53,7 +49,7 @@
"DecodingStage": 751.1
},
"denoise_step_ms": {
"0": 1077.77,
"0": 400.06,
"1": 345.13,
"2": 413.8,
"3": 405.49,
@@ -182,8 +178,8 @@
"DecodingStage": 653.03
},
"denoise_step_ms": {
"0": 165.27,
"1": 58.88,
"0": 58.88,
"1": 165.27,
"2": 166.85,
"3": 166.51,
"4": 166.77,
@@ -249,8 +245,8 @@
"DecodingStage": 489.8
},
"denoise_step_ms": {
"0": 511.3,
"1": 132.57,
"0": 68.7,
"1": 511.3,
"2": 541.19,
"3": 518.93,
"4": 541.2,
@@ -470,8 +466,8 @@
"DecodingStage": 381.56
},
"denoise_step_ms": {
"0": 166.27,
"1": 59.6,
"0": 73.27,
"1": 166.6,
"2": 167.31,
"3": 168.7,
"4": 168.83,
@@ -703,56 +699,56 @@
"DecodingStage": 52.24
},
"denoise_step_ms": {
"0": 239.28,
"1": 285.07,
"2": 286.65,
"3": 299.09,
"4": 191.11,
"5": 101.8,
"6": 51.77,
"7": 147.26,
"8": 101.68,
"9": 51.4,
"10": 150.58,
"11": 106.56,
"12": 53.7,
"13": 7.33,
"14": 148.41,
"15": 102.08,
"16": 52.04,
"17": 7.3,
"18": 145.91,
"19": 100.31,
"20": 51.68,
"21": 7.27,
"22": 145.92,
"23": 104.35,
"24": 54.33,
"25": 7.46,
"26": 150.96,
"27": 104.39,
"28": 53.21,
"29": 7.22,
"30": 148.3,
"31": 102.06,
"32": 51.88,
"33": 7.31,
"34": 145.8,
"35": 101.95,
"36": 52.15,
"37": 7.42,
"38": 148.87,
"39": 103.01,
"40": 52.21,
"41": 7.28,
"42": 147.39,
"43": 103.89,
"44": 51.44,
"45": 7.12,
"46": 144.78,
"47": 100.34,
"48": 195.54,
"49": 246.97
"0": 227.68,
"1": 277.41,
"2": 276.7,
"3": 291.52,
"4": 52.8,
"5": 6.58,
"6": 231.58,
"7": 52.55,
"8": 7.69,
"9": 230.59,
"10": 52.58,
"11": 7.14,
"12": 6.95,
"13": 234.71,
"14": 53.28,
"15": 7.09,
"16": 6.63,
"17": 233.93,
"18": 52.71,
"19": 6.64,
"20": 6.5,
"21": 231.37,
"22": 52.28,
"23": 6.61,
"24": 6.48,
"25": 232.86,
"26": 54.92,
"27": 7.51,
"28": 7.19,
"29": 233.51,
"30": 52.97,
"31": 6.72,
"32": 7.02,
"33": 233.14,
"34": 52.47,
"35": 6.66,
"36": 6.52,
"37": 233.84,
"38": 51.49,
"39": 6.87,
"40": 6.74,
"41": 233.75,
"42": 52.65,
"43": 6.62,
"44": 6.55,
"45": 233.45,
"46": 52.33,
"47": 6.55,
"48": 232.58,
"49": 52.84
},
"expected_e2e_ms": 5982.78,
"expected_avg_denoise_ms": 104.84,
@@ -770,7 +766,7 @@
"per_frame_generation": null
},
"denoise_step_ms": {
"0": 879.71,
"0": 240.71,
"1": 248.13,
"2": 246.48,
"3": 247.87,
@@ -837,7 +833,7 @@
"per_frame_generation": null
},
"denoise_step_ms": {
"0": 879.71,
"0": 224.71,
"1": 248.13,
"2": 246.48,
"3": 247.87,
@@ -971,7 +967,7 @@
"per_frame_generation": null
},
"denoise_step_ms": {
"0": 1069.91,
"0": 266.91,
"1": 211.32,
"2": 206.59,
"3": 208.12,
@@ -1237,22 +1233,22 @@
"fastwan2_2_ti2v_5b": {
"stages_ms": {
"InputValidationStage": 300.00,
"TextEncodingStage": 2327.87,
"TextEncodingStage": 843.86,
"ConditioningStage": 0.01,
"TimestepPreparationStage": 58.66,
"LatentPreparationStage": 28.55,
"DmdDenoisingStage": 4438.3,
"DecodingStage": 14177.77,
"DmdDenoisingStage": 499.34,
"DecodingStage": 1924.01,
"per_frame_generation": null
},
"denoise_step_ms": {
"0": 2022.21,
"1": 1263.17,
"2": 1149.59
"0": 164.76,
"1": 165.6,
"2": 165.84
},
"expected_e2e_ms": 21133.36,
"expected_avg_denoise_ms": 1478.32,
"expected_median_denoise_ms": 1263.17
"expected_e2e_ms": 7722.91,
"expected_avg_denoise_ms": 165.42,
"expected_median_denoise_ms": 165.66
},
"fast_hunyuan_video": {
"stages_ms": {
@@ -1266,12 +1262,12 @@
"per_frame_generation": null
},
"denoise_step_ms": {
"0": 2518.62,
"1": 578.59,
"2": 1485.76,
"3": 1490.86,
"4": 1489.93,
"5": 1487.02
"0": 485.99,
"1": 1399.84,
"2": 1399.91,
"3": 1397.79,
"4": 1400.61,
"5": 1402.53
},
"expected_e2e_ms": 16672.15,
"expected_avg_denoise_ms": 1608.46,
@@ -1290,7 +1286,7 @@
"per_frame_generation": null
},
"denoise_step_ms": {
"0": 15659.6,
"0": 1525.6,
"1": 1582.6,
"2": 1597.84,
"3": 1601.34,
@@ -1687,7 +1683,7 @@
"per_frame_generation": null
},
"denoise_step_ms": {
"0": 1964.07,
"0": 233.29,
"1": 265.02,
"2": 257.83,
"3": 260.27,
@@ -1756,7 +1752,7 @@
"per_frame_generation": null
},
"denoise_step_ms": {
"0": 7828.3,
"0": 6680.62,
"1": 3765.8,
"2": 3774.63,
"3": 3772.93,

View File

@@ -8,7 +8,6 @@ If the actual run is significantly better than the baseline, the improved cases
from __future__ import annotations
import os
from pathlib import Path
from typing import Any, Callable
import openai
@@ -25,8 +24,6 @@ from sglang.multimodal_gen.test.server.test_server_utils import (
PerformanceValidator,
ServerContext,
ServerManager,
WarmupRunner,
download_image_from_url,
get_generate_fn,
)
from sglang.multimodal_gen.test.server.testcase_configs import (
@@ -37,7 +34,6 @@ from sglang.multimodal_gen.test.server.testcase_configs import (
)
from sglang.multimodal_gen.test.test_utils import (
get_dynamic_server_port,
is_image_url,
wait_for_req_perf_record,
)
@@ -91,8 +87,8 @@ def diffusion_server(case: DiffusionTestCase) -> ServerContext:
if server_args.lora_path:
extra_args += f" --lora-path {server_args.lora_path}"
if server_args.enable_warmup:
extra_args += f" --enable-warmup"
if server_args.warmup:
extra_args += f" --warmup"
# Build custom environment variables
env_vars = {}
@@ -115,41 +111,6 @@ def diffusion_server(case: DiffusionTestCase) -> ServerContext:
output_size = os.environ.get(
"SGLANG_TEST_OUTPUT_SIZE", sampling_params.output_size
)
warmup = WarmupRunner(
port=ctx.port,
model=server_args.model_path,
prompt=sampling_params.prompt or "A colorful raccoon icon",
output_size=output_size,
output_format=sampling_params.output_format,
)
if server_args.warmup > 0:
if sampling_params.image_path and case.sampling_params.prompt:
# Handle URL or local path
image_path_list = sampling_params.image_path
if not isinstance(image_path_list, list):
image_path_list = [image_path_list]
new_image_path_list = []
for image_path in image_path_list:
if is_image_url(image_path):
new_image_path_list.append(
download_image_from_url(str(image_path))
)
else:
path_obj = Path(image_path)
if not path_obj.exists():
pytest.skip(f"{case.id}: file missing: {image_path}")
new_image_path_list.append(path_obj)
image_path_list = new_image_path_list
warmup.run_edit_warmups(
count=server_args.warmup,
edit_prompt=sampling_params.prompt,
image_path=image_path_list,
)
else:
warmup.run_text_warmups(server_args.warmup)
except Exception as exc:
logger.error("Warm-up failed for %s: %s", case.id, exc)
ctx.cleanup()

View File

@@ -18,7 +18,7 @@ from typing import Any, Callable, Sequence
from urllib.request import urlopen
import pytest
from openai import Client, OpenAI
from openai import Client
from sglang.multimodal_gen.benchmarks.compare_perf import calculate_upper_bound
from sglang.multimodal_gen.runtime.platforms import current_platform
@@ -451,81 +451,6 @@ class ServerManager:
return ""
class WarmupRunner:
"""Handles warmup requests for a server."""
def __init__(
self,
port: int,
model: str,
prompt: str,
output_size: str,
output_format: str = None,
):
self.client = OpenAI(
api_key="sglang-anything",
base_url=f"http://localhost:{port}/v1",
)
self.model = model
self.prompt = prompt
self.output_size = output_size
self.output_format = output_format
def run_text_warmups(self, count: int) -> None:
"""Run text-to-image warmup requests."""
if count <= 0:
return
logger.info("[server-test] Running %s text warm-up(s)", count)
for _ in range(count):
result = self.client.images.generate(
model=self.model,
prompt=self.prompt,
n=1,
size=self.output_size,
response_format="b64_json",
)
validate_image(result.data[0].b64_json)
def run_edit_warmups(
self,
count: int,
edit_prompt: str,
image_path: Path,
) -> None:
"""Run image-edit warmup requests."""
if count <= 0:
return
if not isinstance(image_path, list):
image_path = [image_path]
for image in image_path:
if not image.exists():
logger.warning(
"[server-test] Skipping edit warmup: image missing at %s", image
)
return
logger.info("[server-test] Running %s edit warm-up(s)", count)
for _ in range(count):
images = [open(image, "rb") for image in image_path]
try:
result = self.client.images.edit(
model=self.model,
image=images,
prompt=edit_prompt,
n=1,
size=self.output_size,
response_format="b64_json",
output_format=self.output_format,
)
finally:
for img in images:
img.close()
validate_image(result.data[0].b64_json)
class PerformanceValidator:
"""Validates performance metrics against expectations."""

View File

@@ -98,7 +98,6 @@ class BaselineConfig:
scenarios: dict[str, ScenarioConfig]
step_fractions: Sequence[float]
warmup_defaults: dict[str, int]
tolerances: ToleranceConfig
improvement_threshold: float
@@ -127,7 +126,6 @@ class BaselineConfig:
return cls(
scenarios=scenarios,
step_fractions=tuple(data["sampling"]["step_fractions"]),
warmup_defaults=data["sampling"].get("warmup_requests", {}),
tolerances=tolerances,
improvement_threshold=data.get("improvement_reporting", {}).get(
"threshold", 0.2
@@ -142,7 +140,6 @@ class DiffusionServerArgs:
model_path: str # HF repo or local path
modality: str = "image" # "image" or "video" or "3d"
warmup: int = 1 # number of warmup requests
custom_validator: str | None = None # optional custom validator name
# resources
num_gpus: int = 1
@@ -161,7 +158,7 @@ class DiffusionServerArgs:
None # Second LoRA adapter path for multi-LoRA testing
)
# misc
enable_warmup: bool = False
warmup: bool = False
dit_layerwise_offload: bool = False
dit_offload_prefetch_size: int | float | None = None
@@ -325,6 +322,7 @@ ONE_GPU_CASES_A: list[DiffusionTestCase] = [
DiffusionServerArgs(
model_path="Qwen/Qwen-Image",
modality="image",
warmup=True,
),
T2I_sampling_params,
),
@@ -334,22 +332,21 @@ ONE_GPU_CASES_A: list[DiffusionTestCase] = [
model_path="Qwen/Qwen-Image",
modality="image",
enable_cache_dit=True,
warmup=True,
),
T2I_sampling_params,
),
DiffusionTestCase(
"flux_image_t2i",
DiffusionServerArgs(
model_path="black-forest-labs/FLUX.1-dev",
modality="image",
model_path="black-forest-labs/FLUX.1-dev", modality="image", warmup=True
),
T2I_sampling_params,
),
DiffusionTestCase(
"flux_2_image_t2i",
DiffusionServerArgs(
model_path="black-forest-labs/FLUX.2-dev",
modality="image",
model_path="black-forest-labs/FLUX.2-dev", modality="image", warmup=True
),
T2I_sampling_params,
),
@@ -358,6 +355,7 @@ ONE_GPU_CASES_A: list[DiffusionTestCase] = [
DiffusionServerArgs(
model_path="black-forest-labs/FLUX.2-klein-4B",
modality="image",
warmup=True,
),
T2I_sampling_params,
),
@@ -371,21 +369,21 @@ ONE_GPU_CASES_A: list[DiffusionTestCase] = [
modality="image",
dit_layerwise_offload=True,
dit_offload_prefetch_size=2,
warmup=True,
),
T2I_sampling_params,
),
DiffusionTestCase(
"zimage_image_t2i",
DiffusionServerArgs(
model_path="Tongyi-MAI/Z-Image-Turbo",
modality="image",
model_path="Tongyi-MAI/Z-Image-Turbo", modality="image", warmup=True
),
T2I_sampling_params,
),
DiffusionTestCase(
"zimage_image_t2i_warmup",
DiffusionServerArgs(
model_path="Tongyi-MAI/Z-Image-Turbo", modality="image", enable_warmup=True
model_path="Tongyi-MAI/Z-Image-Turbo", modality="image", warmup=True
),
T2I_sampling_params,
),
@@ -397,6 +395,7 @@ ONE_GPU_CASES_A: list[DiffusionTestCase] = [
modality="image",
lora_path="reverentelusarca/elusarca-anime-style-lora-z-image-turbo",
second_lora_path="tarn59/pixel_art_style_lora_z_image_turbo",
warmup=True,
),
T2I_sampling_params,
),
@@ -404,32 +403,28 @@ ONE_GPU_CASES_A: list[DiffusionTestCase] = [
DiffusionTestCase(
"qwen_image_edit_ti2i",
DiffusionServerArgs(
model_path="Qwen/Qwen-Image-Edit",
modality="image",
model_path="Qwen/Qwen-Image-Edit", modality="image", warmup=True
),
TI2I_sampling_params,
),
DiffusionTestCase(
"qwen_image_edit_2509_ti2i",
DiffusionServerArgs(
model_path="Qwen/Qwen-Image-Edit-2509",
modality="image",
model_path="Qwen/Qwen-Image-Edit-2509", modality="image", warmup=True
),
MULTI_IMAGE_TI2I_sampling_params,
),
DiffusionTestCase(
"qwen_image_edit_2511_ti2i",
DiffusionServerArgs(
model_path="Qwen/Qwen-Image-Edit-2511",
modality="image",
model_path="Qwen/Qwen-Image-Edit-2511", modality="image", warmup=True
),
TI2I_sampling_params,
),
DiffusionTestCase(
"qwen_image_layered_i2i",
DiffusionServerArgs(
model_path="Qwen/Qwen-Image-Layered",
modality="image",
model_path="Qwen/Qwen-Image-Layered", modality="image", warmup=True
),
MULTI_FRAME_I2I_sampling_params,
),
@@ -442,8 +437,8 @@ ONE_GPU_CASES_B: list[DiffusionTestCase] = [
DiffusionServerArgs(
model_path="Wan-AI/Wan2.1-T2V-1.3B-Diffusers",
modality="video",
warmup=0,
custom_validator="video",
warmup=True,
),
DiffusionSamplingParams(
prompt=T2V_PROMPT,
@@ -454,9 +449,9 @@ ONE_GPU_CASES_B: list[DiffusionTestCase] = [
DiffusionServerArgs(
model_path="Wan-AI/Wan2.1-T2V-1.3B-Diffusers",
modality="video",
warmup=0,
custom_validator="video",
text_encoder_cpu_offload=True,
warmup=True,
),
DiffusionSamplingParams(
prompt=T2V_PROMPT,
@@ -468,8 +463,8 @@ ONE_GPU_CASES_B: list[DiffusionTestCase] = [
DiffusionServerArgs(
model_path="Wan-AI/Wan2.1-T2V-1.3B-Diffusers",
modality="video",
warmup=0,
custom_validator="video",
warmup=True,
),
DiffusionSamplingParams(
prompt=T2V_PROMPT,
@@ -484,10 +479,10 @@ ONE_GPU_CASES_B: list[DiffusionTestCase] = [
DiffusionServerArgs(
model_path="Wan-AI/Wan2.1-T2V-1.3B-Diffusers",
modality="video",
warmup=0,
custom_validator="video",
num_gpus=1,
dynamic_lora_path="Cseti/Wan-LoRA-Arcane-Jinx-v1",
warmup=True,
),
DiffusionSamplingParams(
prompt="csetiarcane Nfj1nx with blue hair, a woman walking in a cyberpunk city at night",
@@ -508,8 +503,7 @@ ONE_GPU_CASES_B: list[DiffusionTestCase] = [
DiffusionTestCase(
"flux_2_ti2i",
DiffusionServerArgs(
model_path="black-forest-labs/FLUX.2-dev",
modality="image",
model_path="black-forest-labs/FLUX.2-dev", modality="image", warmup=True
),
TI2I_sampling_params,
),
@@ -518,8 +512,8 @@ ONE_GPU_CASES_B: list[DiffusionTestCase] = [
DiffusionServerArgs(
model_path="FastVideo/FastHunyuan-diffusers",
modality="video",
warmup=0,
custom_validator="video",
warmup=True,
),
DiffusionSamplingParams(
prompt=T2V_PROMPT,
@@ -531,8 +525,8 @@ ONE_GPU_CASES_B: list[DiffusionTestCase] = [
DiffusionServerArgs(
model_path="Wan-AI/Wan2.2-TI2V-5B-Diffusers",
modality="video",
warmup=0,
custom_validator="video",
warmup=True,
),
TI2V_sampling_params,
),
@@ -541,8 +535,8 @@ ONE_GPU_CASES_B: list[DiffusionTestCase] = [
DiffusionServerArgs(
model_path="FastVideo/FastWan2.2-TI2V-5B-FullAttn-Diffusers",
modality="video",
warmup=0,
custom_validator="video",
warmup=True,
),
TI2V_sampling_params,
),
@@ -556,8 +550,8 @@ if not current_platform.is_hip():
DiffusionServerArgs(
model_path="IPostYellow/TurboWan2.1-T2V-1.3B-Diffusers",
modality="video",
warmup=0,
custom_validator="video",
warmup=True,
),
DiffusionSamplingParams(
prompt=T2V_PROMPT,
@@ -571,8 +565,8 @@ TWO_GPU_CASES_A = [
DiffusionServerArgs(
model_path="Wan-AI/Wan2.2-I2V-A14B-Diffusers",
modality="video",
warmup=0,
custom_validator="video",
warmup=True,
),
TI2V_sampling_params,
),
@@ -581,9 +575,9 @@ TWO_GPU_CASES_A = [
DiffusionServerArgs(
model_path="Wan-AI/Wan2.2-T2V-A14B-Diffusers",
modality="video",
warmup=0,
custom_validator="video",
num_gpus=2,
warmup=True,
),
DiffusionSamplingParams(
prompt=T2V_PROMPT,
@@ -595,10 +589,10 @@ TWO_GPU_CASES_A = [
DiffusionServerArgs(
model_path="Wan-AI/Wan2.2-T2V-A14B-Diffusers",
modality="video",
warmup=0,
custom_validator="video",
num_gpus=2,
lora_path="Cseti/wan2.2-14B-Arcane_Jinx-lora-v1",
warmup=True,
),
DiffusionSamplingParams(
prompt="Nfj1nx with blue hair, a woman walking in a cyberpunk city at night",
@@ -608,10 +602,10 @@ TWO_GPU_CASES_A = [
"wan2_1_t2v_14b_2gpu",
DiffusionServerArgs(
model_path="Wan-AI/Wan2.1-T2V-14B-Diffusers",
warmup=0,
modality="video",
num_gpus=2,
custom_validator="video",
warmup=True,
),
DiffusionSamplingParams(
prompt=T2V_PROMPT,
@@ -623,10 +617,10 @@ TWO_GPU_CASES_A = [
DiffusionServerArgs(
model_path="Wan-AI/Wan2.1-T2V-1.3B-Diffusers",
modality="video",
warmup=0,
custom_validator="video",
num_gpus=2,
cfg_parallel=True,
warmup=True,
),
DiffusionSamplingParams(
prompt=T2V_PROMPT,
@@ -642,10 +636,10 @@ if not current_platform.is_hip():
DiffusionServerArgs(
model_path="IPostYellow/TurboWan2.2-I2V-A14B-Diffusers",
modality="video",
warmup=0,
custom_validator="video",
num_gpus=2,
tp_size=2,
warmup=True,
),
TURBOWAN_I2V_sampling_params,
)
@@ -656,10 +650,10 @@ TWO_GPU_CASES_B = [
"wan2_1_i2v_14b_480P_2gpu",
DiffusionServerArgs(
model_path="Wan-AI/Wan2.1-I2V-14B-480P-Diffusers",
warmup=0,
modality="video",
custom_validator="video",
num_gpus=2,
warmup=True,
),
TI2V_sampling_params,
),
@@ -669,10 +663,10 @@ TWO_GPU_CASES_B = [
DiffusionServerArgs(
model_path="Wan-AI/Wan2.1-I2V-14B-720P-Diffusers",
modality="video",
warmup=0,
custom_validator="video",
num_gpus=2,
lora_path="starsfriday/Wan2.1-Divine-Power-LoRA",
warmup=True,
),
TI2V_sampling_params,
),
@@ -681,9 +675,9 @@ TWO_GPU_CASES_B = [
DiffusionServerArgs(
model_path="Wan-AI/Wan2.1-I2V-14B-720P-Diffusers",
modality="video",
warmup=0,
custom_validator="video",
num_gpus=2,
warmup=True,
),
TI2V_sampling_params,
),
@@ -696,6 +690,7 @@ TWO_GPU_CASES_B = [
# test ring attn
ulysses_degree=1,
ring_degree=2,
warmup=True,
),
T2I_sampling_params,
),
@@ -706,6 +701,7 @@ TWO_GPU_CASES_B = [
modality="image",
num_gpus=2,
ulysses_degree=2,
warmup=True,
),
T2I_sampling_params,
),
@@ -715,6 +711,7 @@ TWO_GPU_CASES_B = [
model_path="black-forest-labs/FLUX.1-dev",
modality="image",
num_gpus=2,
warmup=True,
),
T2I_sampling_params,
),
@@ -725,6 +722,7 @@ TWO_GPU_CASES_B = [
modality="image",
num_gpus=2,
tp_size=2,
warmup=True,
),
T2I_sampling_params,
),