[diffusion] chore: remove ltx2 snapshot mode (#28533)

This commit is contained in:
Mick
2026-06-18 10:20:21 +08:00
committed by GitHub
parent 9888b7b42b
commit 05b3fd0f44
12 changed files with 162 additions and 518 deletions
@@ -61,10 +61,11 @@ For two-stage pipelines, `--ltx2-two-stage-device-mode` controls transformer res
| Mode | When to use it |
| --- | --- |
| `snapshot` | Recommended default. Balances latency and VRAM. |
| `resident` | Best latency on high-VRAM GPUs because both DiTs can stay resident. |
| `original` | Closest to the original two-stage switching semantics. |
`snapshot` is kept only as a deprecated compatibility alias for `original` and may be removed after two release cycles; use `original` or `resident` in new configs.
Other deployment flags:
- `--lora-path`: Preload a community LoRA adapter.
@@ -81,13 +82,13 @@ For latency-oriented LTX serving, prefer CFG parallel over sequence parallelism.
| Target | Recommended server flags | Notes |
| --- | --- | --- |
| LTX-2.3, 1 high-VRAM GPU | `--ltx2-two-stage-device-mode resident` | Fastest two-stage setup when both DiTs fit. |
| LTX-2.3, 1 standard GPU | `--ltx2-two-stage-device-mode snapshot` | Lower VRAM than `resident`; use this when H100-class memory is tight. |
| LTX-2.3, 1 standard GPU | `--ltx2-two-stage-device-mode original` | Lower VRAM than `resident`; use this when H100-class memory is tight. |
| LTX-2, 2 GPUs | `--num-gpus 2 --enable-cfg-parallel` | Fastest verified 2-GPU setup; keep `--dit-layerwise-offload` disabled unless memory is tight. |
| LTX-2.3, 2 GPUs | `--num-gpus 2 --enable-cfg-parallel --ltx2-two-stage-device-mode resident` | Fastest common 2-GPU setup. |
| LTX-2.3, 4 GPUs | `--num-gpus 4 --tp-size 2 --enable-cfg-parallel --ltx2-two-stage-device-mode resident` | Fastest common 4-GPU layout: TP2 inside each CFG branch. |
| Official comparison | `--ltx2-two-stage-device-mode original` | Use this only when matching the original LTX-2.3 stage-switch semantics matters. |
Use `--enable-cfg-parallel` for degree-2 CFG parallel. Use `--cfg-parallel-size` only when you explicitly need a different CFG branch count. If `resident` exceeds available VRAM, keep the same parallelism preset and switch only the device mode to `snapshot`.
Use `--enable-cfg-parallel` for degree-2 CFG parallel. Use `--cfg-parallel-size` only when you explicitly need a different CFG branch count. If `resident` exceeds available VRAM, keep the same parallelism preset and switch only the device mode to `original`.
On high-VRAM GPUs, add `--text-encoder-cpu-offload false` if text encoding latency matters and you have enough memory.
@@ -586,11 +586,11 @@ Optimization columns are abbreviated to keep the matrix readable:
- LTX-2 and LTX-2.3 support both T2V and TI2V (`--image-path`) on one-stage and two-stage pipelines (including HQ).
- The spatial upsampler and distilled LoRA are auto-resolved from the model snapshot by default, and can still be overridden with `--spatial-upsampler-path` and `--distilled-lora-path`.
- For LTX models, the `Resolutions` column uses output video `width×height` semantics, matching `sglang generate --width ... --height ...`.
4. LTX-2 / LTX-2.3 two-stage also supports `--ltx2-two-stage-device-mode {original,snapshot,resident}`:
- `snapshot` is the default and recommended mode.
- `resident` usually provides the best latency/throughput but uses much more VRAM.
4. LTX-2 / LTX-2.3 two-stage also supports `--ltx2-two-stage-device-mode {original,resident}`:
- `original` keeps official two-stage semantics without the premerged stage-2 transformer path.
- Example (one prior run): `original` `154.67s`, `snapshot` `114.05s`, `resident` `75.71s`; peak VRAM trend is `original < snapshot < resident`.
- `resident` usually provides the best latency/throughput but uses much more VRAM.
- Default is auto: `resident` on H200/high-memory CUDA GPUs, otherwise `original`.
- Deprecated compatibility: `snapshot` is accepted as an alias for `original` and may be removed after two release cycles.
5. Cosmos3 ships in two sizes — `nvidia/Cosmos3-Nano` (8B) and
`nvidia/Cosmos3-Super` (32B). Both share the same pipeline; the only
difference is transformer depth and width, picked up from
@@ -7,7 +7,7 @@ export const LTXDeployment = () => {
{ id: 'h200', label: '1x H200', subtitle: 'resident', default: true },
{ id: 'h200-2gpu', label: '2 GPUs', subtitle: 'CFG parallel', default: false },
{ id: 'h200-4gpu', label: '4 GPUs', subtitle: 'TP2 + CFG', default: false },
{ id: 'standard', label: 'Standard CUDA', subtitle: 'Snapshot mode', default: false },
{ id: 'standard', label: 'Standard CUDA', subtitle: 'Original mode', default: false },
{ id: 'official', label: 'Official Match', subtitle: 'Original switching', default: false },
],
},
@@ -121,7 +121,7 @@ export const LTXDeployment = () => {
if (values.hardware === 'official') {
return 'original';
}
return 'snapshot';
return 'original';
};
const getParallelFlags = () => {