PipeDiT: Accelerating Diffusion Transformers in Video Generation with Task Pipelining and Model Decoupling
Wang, Wang, Shi
Video generation has been advancing rapidly, and diffusion transformer (DiT) based models have demonstrated remark- able capabilities. However, their practical deployment is of- ten hindered by slow inference speeds and high memory con- sumption. In this paper, we propose a novel pipelining frame- work named PipeDiT to accelerate video generation, which is equipped with three main innovations. First, we design a pipelining algorithm (PipeSP) for sequence parallelism (SP) to enable the computation of latent generation and commu- nication among multiple GPUs to be pipelined, thus reduc- ing inference latency. Second, we propose DeDiVAE to de- couple the diffusion module and the variational autoencoder (VAE) module into two GPU groups, whose executions can also be pipelined to reduce memory consumption and infer- ence latency. Third, to better utilize the GPU resources in the VAE group, we propose an attention co-processing (Aco) method to further reduce the overall video generation latency. We integrate our PipeDiT into both OpenSoraPlan and Hun- yuanVideo, two state-of-the-art open-source video generation frameworks, and conduct extensive experiments on two 8- GPU systems. Experimental results show that, under many common resolution and timestep configurations, our PipeDiT achieves 1.06x to 4.02x speedups over OpenSoraPlan and HunyuanVideo.
academic
PipeDiT: Beschleunigung von Diffusions-Transformatoren in der Videogenerierung durch Task-Pipelining und Modell-Entkopplung
Die Videogenerierungstechnologie entwickelt sich schnell, und auf Diffusions-Transformatoren (DiT) basierende Modelle zeigen außergewöhnliche Fähigkeiten. Bei der praktischen Bereitstellung stehen sie jedoch vor Herausforderungen wie langsamer Inferenzgeschwindigkeit und hohem Speicherverbrauch. Dieses Paper präsentiert das PipeDiT-Framework, das die Videogenerierung durch drei Innovationen beschleunigt: (1) Der PipeSP-Algorithmus ermöglicht die Pipelinisierung von Berechnung und Kommunikation in der Sequenzparallelisierung; (2) Die DeDiVAE-Methode entkoppelt das Diffusionsmodul und den VAE-Decoder auf verschiedene GPU-Gruppen; (3) Die Aco-Aufmerksamkeits-Kooperationsmethode optimiert die GPU-Auslastung. Experimente auf den Open-Source-Frameworks OpenSoraPlan und HunyuanVideo zeigen, dass PipeDiT eine Beschleunigung von 1,06× bis 4,02× erreicht.
Praktische Anforderungen: Videogenerierungsdienste müssen mehrere gleichzeitige Anfragen verarbeiten; die Inferenzeffizienz beeinflusst direkt die Benutzererfahrung und Servicekosten
Hardwarebeschränkungen: Experimente zeigen, dass OpenSoraPlan unter der 48-GB-GPU-Speicherbeschränkung keine Videos mit einer Auflösung über 1024×576×97 generieren kann; HunyuanVideo ist auf 256×128×33 beschränkt
DistriFusion und PipeFusion sind für Bildgenerierung konzipiert und nicht für die langen Sequenzen der Videogenerierung geeignet
Optimierungsmethoden für Videogenerierung:
Teacache und ähnliche Methoden: Reduzieren die Berechnung durch Wiederverwendung von Zeitschritt-Merkmalen, können aber die Generierungsqualität beeinträchtigen
Sequenzparallelisierungsmethoden (SP):
Ulysses: Ermöglicht Parallelisierung durch Aufteilung von Aufmerksamkeitsköpfen, weist aber serielle Ausführung von Berechnung und Kommunikation sowie unzureichende GPU-Ressourcennutzung auf
Ring-Attention: Unterstützt höhere Parallelisierungsgrade, aber mit großem Kommunikationsaufwand
USP: Kombiniert beide, führt aber zusätzliche Kommunikationskosten ein
Offloading-Strategien:
Reduzieren den Speicherverbrauch durch CPU-GPU-Datenübertragung, führen aber erhebliche Transferkosten ein und sind ineffizient
PipeSP-Algorithmus: Präsentiert eine pipelinisierte Sequenzparallelisierungsmethode, die durch Partitionierung in der Aufmerksamkeitskopf-Dimension und sofortige Auslösung von All-to-All-Kommunikation die Überlagerung von Berechnung und Kommunikation erreicht und die GPU-Auslastung verbessert
DeDiVAE-Modul-Entkopplung: Weist das Diffusionsmodul und den VAE-Decoder verschiedenen GPU-Gruppen zu und ermöglicht so Modul-Level-Pipeline-Parallelisierung, die den Spitzenspeicherverbrauch erheblich reduziert (bis zu 53,3% für OpenSoraPlan)
Aco-Aufmerksamkeits-Kooperationsmethode: Zerlegt DiT-Blöcke feinkörnig in lineare Projektionen und Aufmerksamkeitsberechnungen, sodass die Decoder-GPU-Gruppe während Leerlaufzeiten an Aufmerksamkeitsberechnungen teilnehmen kann und die Gesamteffizienz weiter verbessert wird
Systemimplementierung und Validierung: Implementiert auf OpenSoraPlan (2B Parameter) und HunyuanVideo (13B Parameter) mit umfangreichen Experimenten auf zwei 8-GPU-Systemen, die die Wirksamkeit und Skalierbarkeit der Methode nachweisen
Alle Aufmerksamkeitskopf-Berechnungen werden abgeschlossen, bevor eine einzelne All-to-All-Kommunikation ausgeführt wird
GPUs sind während des Wartens auf Kommunikation untätig
PipeSP-Design (Algorithmus 1):
Für jeden Aufmerksamkeitskopf j ∈ [0, h-1]:
1. Berechne attention(Q[:,j,:,:], K[:,j,:,:], V[:,j,:,:])
2. Registriere CUDA-Ereignis zur Markierung der Berechnungsvollendung
3. Warte auf Ereignisvollendung und löse sofort All-to-All-Kommunikation aus
4. Sammle Ergebnisse
Nachbearbeitungsausrichtung (zur Lösung von Ergebnisversatzproblemen):
Durch view(-1, h, n, D) → permute(0, 2, 1, 3) → view(-1, nh, D) Sequenztransformation
Ordnet verschachtelte Tensoren dem von Ulysses erwarteten head-contiguous-Layout zu
Mathematische Korrektheit:
Definiere Reshape-Abbildung φ_{h,n} und Permutationsoperation π, die zusammengesetzte Abbildung Ψ = φ^{-1}{h,n} ∘ π ∘ φ{h,n} erfüllt:
Denoise-Gruppe: N_denoise GPUs, speichert das Diffusions-Backbone-Netzwerk
Decoder-Gruppe: N_decode = N - N_denoise GPUs, speichert den VAE-Decoder
Optimale GPU-Zuweisung:
Basierend auf der Ausgleichsbedingung erster Ordnung, um die Ausführungszeiten beider Gruppen gleich zu machen und die Überlagerung zu maximieren:
Kommunikations-Berechnungs-Überlagerung: PipeSP erreicht durch feinkörnige Head-Level-Pipelining erstmals effektive Kommunikationsversteckung in Ulysses
Modul-Level-Entkopplung: DeDiVAE durchbricht das traditionelle Co-Location-Design und erreicht durch GPU-Gruppentrennung doppelte Optimierung von Speicher und Berechnung
Dynamische Ressourcenplanung: Aco nutzt untätige GPU-Ressourcen dynamisch basierend auf der Arbeitslast und vermeidet Effizienzeinbußen durch traditionelle statische Zuweisung
Mathematische Strenge: Bietet einen formalen Korrektheitsbeweis für die PipeSP-Transformation und stellt sicher, dass die Optimierung die Berechnungsergebnisse nicht verändert
800×592×129: Baseline 39,8GB → DeDiVAE 18,6GB (Reduktion um 53,3%)
480×352×129: Baseline 26,5GB → DeDiVAE 18,0GB (Reduktion um 32,1%)
HunyuanVideo:
Alle Konfigurationen: Baseline OOM
Offloading: 29,37-33,01GB (Reduktion um 31,2-38,8%)
DeDiVAE: 41,44-42,12GB (Reduktion um 12,2-13,7%)
Hinweis: Der höhere DeDiVAE-Speicher bei HunyuanVideo ist darauf zurückzuführen, dass der große Text-Encoder mit dem VAE-Decoder co-located ist, was die Flexibilität der Methode demonstriert.
HunyuanVideo (Kong et al. 2024): Großskaliges Videogenerierungs-Modell
Gesamtbewertung: Dies ist ein hochqualitatives Systemoptimierungs-Paper, das innovative Lösungen für praktische Engpässe bei der DiT-Inferenz in der Videogenerierung bietet. Die drei technischen Innovationen ergänzen sich gegenseitig und bilden ein vollständiges Optimierungs-Framework. Das Experimentdesign ist umfassend und die Ergebnisse überzeugend. Die Hauptschwächen liegen in der Hardware-Abhängigkeit und teilweise unzureichender Analysentiefe. Für Videogenerierungs-Service-Provider und Systemoptimierungs-Forscher hat das Paper wichtigen Referenzwert. Es wird empfohlen, dass die Autoren den Code open-sourcen und die Langzeitstabilität in produktiven Umgebungen validieren.