Files
vllm-omni/examples/online_serving/text_to_video/run_server_ltx2.sh
T

76 lines
2.7 KiB
Bash
Raw Normal View History

#!/bin/bash
# SPDX-License-Identifier: Apache-2.0
# SPDX-FileCopyrightText: Copyright contributors to the vLLM project
#
# LTX-2 online serving startup script with optimization presets.
#
# Usage:
# bash run_server_ltx2.sh # baseline (1 GPU, eager)
# bash run_server_ltx2.sh ulysses4 # 4-GPU Ulysses SP
# bash run_server_ltx2.sh cache-dit # 1 GPU + Cache-DiT
# bash run_server_ltx2.sh best-combo # 4-GPU Ulysses SP + Cache-DiT
#
# Online serving benchmarks on H800 (480×768, 41 frames, 20 steps):
# baseline : 10.3s inference (1.00×)
# compile : ~10.3s warm (~1.00×) first request +6s warmup
# ulysses4 : ~10.3s (~1.00×) no gain at 41 frames
# cache-dit : 7.4s avg (~1.4×) lossy, variable per request
# best-combo : 4.7s avg (~2.2×) 4-GPU ulysses + cache-dit
set -euo pipefail
MODEL="${MODEL:-Lightricks/LTX-2}"
PORT="${PORT:-8098}"
PRESET="${1:-baseline}"
EXTRA_ARGS=()
case "$PRESET" in
baseline)
echo "=== LTX-2 Preset: baseline (1 GPU, enforce-eager) ==="
EXTRA_ARGS+=(--enforce-eager)
;;
ulysses2)
echo "=== LTX-2 Preset: 2-GPU Ulysses SP (lossless) ==="
EXTRA_ARGS+=(--enforce-eager --usp 2)
;;
ulysses4)
echo "=== LTX-2 Preset: 4-GPU Ulysses SP (lossless) ==="
EXTRA_ARGS+=(--enforce-eager --usp 4)
;;
cache-dit)
echo "=== LTX-2 Preset: Cache-DiT (1 GPU, lossy) ==="
EXTRA_ARGS+=(--enforce-eager --cache-backend cache_dit)
;;
best-combo)
echo "=== LTX-2 Preset: 4-GPU Ulysses SP + Cache-DiT (best combo) ==="
EXTRA_ARGS+=(--enforce-eager --usp 4 --cache-backend cache_dit)
;;
compile)
echo "=== LTX-2 Preset: torch.compile (1 GPU, lossless) ==="
# torch.compile is the default (no --enforce-eager)
;;
*)
echo "Usage: $0 {baseline|ulysses2|ulysses4|cache-dit|best-combo|compile}"
echo ""
echo "Presets:"
echo " baseline - 1 GPU, eager execution (reference)"
echo " ulysses2 - 2-GPU Ulysses SP (lossless)"
echo " ulysses4 - 4-GPU Ulysses SP (lossless)"
echo " cache-dit - 1 GPU + Cache-DiT (lossy, ~1.4× speedup)"
echo " best-combo - 4-GPU Ulysses SP + Cache-DiT (~2.2× speedup)"
echo " compile - 1 GPU + torch.compile (slower first request)"
echo ""
echo "Environment variables:"
echo " MODEL - Model path (default: Lightricks/LTX-2)"
echo " PORT - Server port (default: 8098)"
exit 1
;;
esac
echo "Model: $MODEL"
echo "Port: $PORT"
vllm serve "$MODEL" --omni \
--port "$PORT" \
"${EXTRA_ARGS[@]}"