Heim > Technologie-Peripheriegeräte > KI > Optimierte parallelistische Strategien, die von Deepseek veröffentlicht wurden

Optimierte parallelistische Strategien, die von Deepseek veröffentlicht wurden

Lisa Kudrow
Freigeben: 2025-03-03 18:34:10
Original
253 Leute haben es durchsucht

Im Rahmen von #OpenSourceWeek Day 4 führt Deepseek 2 neue Tools ein, um das Deep -Lernen schneller und effizienter zu gestalten: Dualpipe und EPLB. Diese Tools verbessern die Art und Weise, wie Computer Berechnungen und Kommunikation während des Trainings umgehen und den Prozess reibungsloser und schneller machen. In der sich schnell verändernden Welt des tiefen Lernens ist es wichtig, Wege zu finden, um Modelle besser zu trainieren und weniger Ressourcen zu verwenden. Dualpipe und EPLB sind große Schritte bei der Lösung dieser Herausforderungen. In diesem Artikel wird erläutert, wie diese Tools funktionieren und wie sie einen Unterschied im tiefen Lernen bewirken können.

? Tag 4 von #OpenSourceWeek: optimierte Parallelitätsstrategien

✅ Dualpipe-Eine bidirektionale Pipeline Parallelismus-Algorithmus zur Überlappung der Berechnungskommunikation im V3/R1-Training.
? https://t.co/gbtxsvwlt4

✅ EPLB-Ein Experten-Parallel-Last-Balancer für v3/r1.
Diese Veröffentlichung markiert Tag 4 unserer Open -Source -Week -Feierlichkeiten nach den erfolgreichen Starts von FlashML am Tag 1, Deepep am 2. Tag und Deepgemm am Tag 3.

Inhaltsverzeichnis

Pipeline Parallelismus

    Dualpipe: Bidirectional Pipeline Parallelism
  • Schlüsselmerkmale
    • technische Details
    technische Details
    • Fachpparallel. Details
    • Hierarchischer Lastausgleich
    • Global Lastausgleich
  • Profilierungsdaten: Analyse der Überlappung der Berechnungskommunikation
    • Schlüsselmerkmale
    • Trainingsprofile-Profil-Daten

; Anweisungen Schlussfolgerung Pipeline Parallelism verstehen Die Parallelität Pipeline ist ein Ansatz, der die gleichzeitige Verarbeitung verschiedener Segmente der Trainingssequenz eines Modells erleichtert. Durch die Verteilung des Modells und die Behandlung mehrerer Eingaben gleichzeitig kann die Pipeline -Parallelität die Trainingszeit deutlich abkürzen. Traditionelle Pipeline -Methoden sind jedoch anfällig für Ineffizienzen, einschließlich Leerlaufintervalle oder „Blasen“, die die Leistung beeinträchtigen. Innovationen wie Dualpipe werden eingeführt, um diese Ineffizienzen zu verbessern und die Gesamteffizienz zu erhöhen. Innerhalb des tiefen Lernens charakterisiert der Ausdruck „Blasen in einer Pipeline“ Intervalle der Inaktivität auf GPUs während des Paralleltrainings von Pipeline, wobei ein Segment der Pipeline ins Stocken gerät, und anhängig von Daten aus einem vorgespiegelten Segment. Dies erzeugt eine „Lücke“ oder eine „Blase“ im Rechenverlauf und gipfelt in ineffizientem GPU -Ressourcenmanagement.

Dualpipe: Bidirektionale Pipeline Parallelität

Dualpipe ist ein ausgeklügelter bidirektionaler Pipeline-Parallelismus-Algorithmus, der die Überlappung zwischen Vorwärts- und Rückwärtsberechnungsphasen maximieren soll. Dieser Ansatz ist besonders vorteilhaft bei der Reduzierung von Pipeline -Blasen, was die Trainingseffizienz erheblich beeinträchtigen kann.

Schlüsselfunktionen

  • Vollständige Überlappung: Erreicht eine vollständige Überlappung der Vorwärts- und Rückwärtsphasen und stellt sicher, dass die Ressourcen effektiv genutzt werden.
  • reduzierte Pipeline -Blasen: minimiert die Leerlaufzeit während des Trainings und führt zu einer verbesserten Ressourcenauslastung und schnelleren Trainingszeiten.

technische Details

Die Leistung des Algorithmus kann anhand eines Planungsbeispiels mit 8 PP-Rängen und 20 Mikrobeflächen veranschaulicht werden. Die Mikro-Stapel in umgekehrter Richtung sind für die in der Vorwärtsrichtung symmetrisch und vereinfachen die Abbildung.

Method Bubble Parameter Activation
1F1B (PP-1)(? ?) PP
ZB1P (PP-1)(? ?-2?) PP
DualPipe (PP/2-1)(?&? ?-3?) PP 1
Methode Blase Parameter Aktivierung 1f1b (pp-1) (?) 1 × pp Zb1p (pp-1) (?? -2?) 1 × pp DualPipe (pp/2-1) (? &? -3?) 2 × pp 1

wo:

  • ?: Ausführungszeit eines Vorwärtsbechers
  • ?: Ausführungszeit eines vollständigen Rückwärtsbechs
  • ?: Ausführungszeit eines „Rückwärts für Gewichte“ -Kunsch
  • ?

Optimierte parallelistische Strategien, die von Deepseek veröffentlicht wurden

Beispiel für die DualPipe-Planungskonfiguration für 8 PP (Pipeline Parallelism) und 20 Mikrostapel mit Schwerpunkt auf zwei Richtungen. Die in der umgekehrten Richtung verarbeiteten Mikro-Stapel spiegeln diejenigen in Vorwärtsrichtung wider und ermöglichen es uns, ihre Batch-Kennungen auszulassen, um die Abbildung zu vereinfachen. Zwei Zellen, die eine gemeinsame schwarze Rand haben, sind an überlappenden Berechnungs- und Kommunikationsaufgaben beteiligt.

Weitere Informationen finden Sie unter DualPipe Github -Repository

EPLB: Experten-paralleler Lastbalancer

EPLB oder Expert-Parallel-Ladungsbalancer optimiert das Lastausgleich im V3/R1-Training. Es verteilt die Workloads effizient über mehrere Verarbeitungseinheiten hinweg und steigert die Gesamtleistung.

Schlüsselfunktionen
  • Expertenparallelität: Verwendet Expertenmodelle, um die Belastung effektiv auszugleichen, und stellt sicher, dass jede Verarbeitungseinheit zum vollen Potenzial genutzt wird.
  • Dynamisches Lastausgleich: Passen Sie sich während des Trainings an unterschiedliche Workloads an und ermöglichen es Echtzeit-Anpassungen, um eine optimale Leistung aufrechtzuerhalten.

Technische Details

EPLB (Effiziente Pipeline -Lastverteilung) zielt auf die vernünftige Zuordnung von Aufgaben zu zugänglichen Ressourcen ab, um die Leerlaufintervalle zu verringern und den Durchsatz zu verbessern. Diese Methodik ist in Kontexten von erhöhter Bedeutung, in denen unterschiedliche Modelle oder Aufgaben unterschiedliche Rechenleistung erfordern.

Der Lastausgleichsalgorithmus verwendet zwei unterschiedliche Richtlinien, die auf unterschiedliche Umstände zugeschnitten sind:

Hierarchische Lastausgleich

Die hierarchische Lastausgleichspolitik aktiviert, wenn die Anzahl der Serverknoten gleichmäßig in die Anzahl der Expertengruppen unterteilt wird. Diese Strategie nutzt die gruppenbegrenzte Expertenrouting, indem sie anfänglich Expertengruppen auf Knoten organisiert, die die ausgewogene Lastverteilung fördert. Anschließend erfolgt die Expertenreplikation innerhalb jedes Knotens, um das Lastgleichgewicht aufrechtzuerhalten. Letztendlich werden diese replizierten Experten dem einzelnen GPUs zugeordnet, wodurch das Lastbilanz über verschiedene GPUs hinweg erreicht wird. Die hierarchische Lastausgleichsrichtlinie eignet sich besonders für die Vorausfüllung bei der Bearbeitung kleinerer Experten-Parallel-Größen.

Global Lastausgleich

Umgekehrt wird die globale Lastausgleichsrichtlinie implementiert, wenn die Anzahl der Serverknoten nicht die Expertengruppen teilt. Dieser Ansatz beinhaltet die globale Replikation von Experten unabhängig von ihrer Gruppierung innerhalb von Expertengruppen. Nach der Replikation sind die Experten gleichmäßig an einzelne GPUs verteilt, um sicherzustellen, dass das Lastbilanz über den GPUs beibehalten wird. Die globale Lastausgleichspolitik gilt in der Dekodierungsphase bei der Behandlung größerer Experten-Parallel-Größen.

Beispielcode:

import torch

import eplb

weight = torch.tensor([[ 90, 132,  40,  61, 104, 165,  39,   4,  73,  56, 183,  86],

                       [ 20, 107, 104,  64,  19, 197, 187, 157, 172,  86,  16,  27]])

num_replicas = 16

num_groups = 4

num_nodes = 2

num_gpus = 8

phy2log, log2phy, logcnt = eplb.rebalance_experts(weight, num_replicas, num_groups, num_nodes, num_gpus)

print(phy2log)
Nach dem Login kopieren

Ausgabe:

tensor([[ 5,  6,  5,  7,  8,  4,  3,  4, 10,  9, 10,  2,  0,  1, 11,  1],

         [ 7, 10,  6,  8,  6, 11,  8,  9,  2,  4,  5,  1,  5,  0,  3,  1]])
Nach dem Login kopieren

Optimierte parallelistische Strategien, die von Deepseek veröffentlicht wurden

Die visuelle Darstellung zeigt eine doppelte Konfiguration der Mischung von Experten (MOE), wobei jede Stufe 12 spezialisierte Experten umfasst. Um die Robustheit des Modells zu steigern und Backup -Mechanismen zu schaffen, führen wir in jeder Stufe zusätzliche 4 Experten ein. Diese Modifikation führt zu einer kumulativen insgesamt 16 Experten pro Stufe, die als Backups dient. Das System repliziert und verteilt diese Experten über 2 Rechenknoten, wobei jeder Knoten 4 GPUs enthält. Es wendet die hierarchische Lastausgleichspolitik an und zeigt die strategische Replikation und Zuweisung von Experten gemäß dem Plan.

für detaillierte Implementierungsanweisungen finden Sie im EPLB -Github -Repository.

Datenprofildaten: Analyse der Überlappung der Berechnungskommunikation

Um die Überlappung der Berechnungskommunikation in V3/R1 effektiv zu analysieren, liefern die Profilerierungsdaten wesentliche Erkenntnisse. Die Engpässe der Leistung und die Optimierung des Trainingsprozesses können anhand dieser Daten verstanden werden.

Schlüsselfunktionen

  • umfassende Analyse: Dieser Ansatz bietet eine umfassende Bewertung der Berechnungs- und Kommunikationsphasen und erleichtert ein tiefes Verständnis der Systemleistungsmetriken.
  • Performance -Erkenntnisse: Es wird die Möglichkeiten zur Verbesserung der Trainingseffizienz festgelegt und Entwickler mit kritischen Informationen ausstatten, um die Optimierungsbemühungen zu leiten.

TRAINING -Profiling -Daten

Optimierte parallelistische Strategien, die von Deepseek veröffentlicht wurden

Das Trainingsprofildaten zeigt die Strategie für die Überlappung einzelner Vorwärts- und Rückwärtsbrocken innerhalb von Dualpipe. Jeder Chunk enthält 4 Schichten Mischung von Experten (MOE). Die parallele Konfiguration entspricht den Einstellungen, die in Deepseek-V3-Vorbau verwendet werden, speziell unter Verwendung von EP64 (Epoch 64) und TP1 (Temporal Polsterding mit 1 Token) Konfigurationen mit einer Sequenzlänge von 4K. Um die Dinge einfach zu halten, schließen wir die PP -Kommunikation (Pipeline Parallelism) während der Profilierung aus.

Weitere Informationen und den Zugriff auf die Profilerierungsdaten finden Sie im Profiling Data Github -Repository.

reale Anwendungen

Die praktische Anwendung von Dualpipe und EPLB hat ermutigende Ergebnisse in verschiedenen Bereichen wie Verarbeitung natürlicher Sprache, Computer Vision und Verstärkungslernen gezeigt. Durch die Verfeinerung des Schulungsprozesses ermöglichen diese Methoden eine beschleunigte Modellkonvergenz und eine erhöhte Präzision, was sich sowohl für Forscher als auch für Praktiker als unverzichtbare Instrumente erweist.

zukünftige Anweisungen

Wenn das Gebiet des Deep Learning fortschreitet, wird die Nachfrage nach effizienteren Trainingsmethoden wahrscheinlich eskalieren. Zukünftige Untersuchungen können sich auf die Verstärkung der Wirksamkeit von Dualpipe und EPLB konzentrieren, möglicherweise durch Untersuchung von Hybridmodellen, die die Vorteile von beiden zusammenzunehmen. Darüber hinaus könnte die Integration dieser Strategien mit modernen Technologien, einschließlich Quantencomputer, neuartige Pfade für die Optimierung ebnen.

Schlussfolgerung

Die Fortschritte in Parallelitätsstrategien über Dualpipe- und EPLB -Strategien markieren erhebliche Fortschritte bei der Verfeinerung von Schulungsverfahren für tiefgreifende Lernen. Durch die Nutzung dieser Algorithmen können sowohl Forscher als auch Praktiker überlegene Ressourcennutzung und beschleunigte Schulungsdauern erreichen, was in effizientere Modellerstellung gipfelt. Die Assimilation von Profiling -Daten erhöht die Fähigkeit, diese Prozesse zu kalibrieren, und garantiert, dass Deep Learning's Trajektorie des schnellen Fortschritts bestehen bleibt.

Das obige ist der detaillierte Inhalt vonOptimierte parallelistische Strategien, die von Deepseek veröffentlicht wurden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage