diff --git a/python/sglang/multimodal_gen/test/server/configs/cache_dit_scm_config.yaml b/python/sglang/multimodal_gen/test/server/configs/cache_dit_scm_config.yaml new file mode 100644 index 000000000..3f2361539 --- /dev/null +++ b/python/sglang/multimodal_gen/test/server/configs/cache_dit_scm_config.yaml @@ -0,0 +1,13 @@ +cache_config: + max_warmup_steps: 2 + warmup_interval: 2 + max_cached_steps: -1 + max_continuous_cached_steps: 2 + Fn_compute_blocks: 1 + Bn_compute_blocks: 0 + residual_diff_threshold: 0.12 + enable_taylorseer: true + taylorseer_order: 1 + num_inference_steps: 8 + steps_computation_mask: "medium" + steps_computation_policy: dynamic diff --git a/python/sglang/multimodal_gen/test/server/gpu_cases.py b/python/sglang/multimodal_gen/test/server/gpu_cases.py index 9407625a5..2f5c000c3 100644 --- a/python/sglang/multimodal_gen/test/server/gpu_cases.py +++ b/python/sglang/multimodal_gen/test/server/gpu_cases.py @@ -1,3 +1,6 @@ +from dataclasses import replace +from pathlib import Path + from sglang.multimodal_gen.runtime.platforms import current_platform from sglang.multimodal_gen.test.server.testcase_configs import ( MODELOPT_FLUX1_FP8_TRANSFORMER, @@ -49,6 +52,8 @@ from sglang.multimodal_gen.test.test_utils import ( DEFAULT_WAN_2_2_TI2V_5B_MODEL_NAME_FOR_TEST, ) +_CACHE_DIT_CONFIG_DIR = Path(__file__).parent / "configs" + # All test cases with clean default values # To test different models, simply add more DiffusionCase entries ONE_GPU_CASES: list[DiffusionTestCase] = [ @@ -68,6 +73,28 @@ ONE_GPU_CASES: list[DiffusionTestCase] = [ ), T2I_sampling_params, ), + DiffusionTestCase( + "qwen_image_t2i_cache_dit_scm_config_diffusers_1gpu", + DiffusionServerArgs( + model_path=DEFAULT_QWEN_IMAGE_MODEL_NAME_FOR_TEST, + extras=[ + "--backend", + "diffusers", + "--cache-dit-config", + str(_CACHE_DIT_CONFIG_DIR / "cache_dit_scm_config.yaml"), + ], + ), + replace( + T2I_sampling_params, + output_size="512x512", + extras={"num_inference_steps": 8, "seed": 0}, + ), + run_perf_check=False, + run_consistency_check=False, + run_component_accuracy_check=False, + run_models_api_check=False, + run_t2v_input_reference_check=False, + ), DiffusionTestCase( "flux_image_t2i", DiffusionServerArgs(model_path=DEFAULT_FLUX_1_DEV_MODEL_NAME_FOR_TEST), @@ -521,6 +548,26 @@ TWO_GPU_CASES = [ ), T2V_sampling_params, ), + DiffusionTestCase( + "wan2_1_t2v_1_3b_cache_dit_sp_only_2gpu", + DiffusionServerArgs( + model_path=DEFAULT_WAN_2_1_T2V_1_3B_MODEL_NAME_FOR_TEST, + ulysses_degree=2, + enable_cache_dit=True, + env_vars={"SGLANG_CACHE_DIT_WARMUP": "2"}, + ), + replace( + T2V_sampling_params, + output_size="832x480", + num_frames=5, + extras={"num_inference_steps": 8, "seed": 0}, + ), + run_perf_check=False, + run_consistency_check=False, + run_component_accuracy_check=False, + run_models_api_check=False, + run_t2v_input_reference_check=False, + ), DiffusionTestCase( "fsdp-inference", DiffusionServerArgs(