You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+25Lines changed: 25 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -619,6 +619,31 @@ To generate images, run the following command:
619
619
620
620
In our Wan2.2 I2V benchmarks at 40 inference steps, 81 frames, and `720x1280` resolution, Ulysses improved inference time by roughly `~10%` compared with flash attention, with about `~20s` lower latency on the v6e-8 and v7x-8 TPU setup.
621
621
622
+
#### Chunked Ulysses Attention (Overlapping Communication and Compute)
623
+
624
+
If you observe a major `all-to-all` communication bottleneck (especially when communication overhead is more pronounced compared to attention computation), you can enable **Chunked Ulysses Attention**.
625
+
626
+
By setting `ulysses_attention_chunks` greater than 1, MaxDiffusion splits the Ulysses all-to-all communication and attention computation into head-group passes (chunks). This allows XLA to overlap the all-to-all communication of one chunk with the head-parallel local attention compute of another chunk, significantly mitigating the communication bottleneck.
627
+
628
+
This chunking technique is supported and works for both plain Ulysses attention (`attention="ulysses"`) and hybrid Ulysses+Ring 2D attention/context parallelism (`attention="ulysses_ring"`).
629
+
630
+
To enable chunked Ulysses attention, set the corresponding override (e.g. `ulysses_attention_chunks=2` or `ulysses_attention_chunks=5`) in your config YAML or command line:
631
+
632
+
```bash
633
+
python src/maxdiffusion/generate_wan.py \
634
+
src/maxdiffusion/configs/base_wan_i2v_27b.yml \
635
+
attention="ulysses" \
636
+
ici_context_parallelism=4 \
637
+
ulysses_attention_chunks=2 \
638
+
...
639
+
```
640
+
641
+
> [!IMPORTANT]
642
+
> For communication-compute overlap to be effective on TPUs, you must enable the following XLA flags before running:
Wan 2.x pipelines support several caching strategies to accelerate inference by skipping redundant transformer forward passes. These are **mutually exclusive** — enable only one at a time.
0 commit comments