Wat is Pipelineparallellisme (pipeline parallelism)?

Gedistribueerde methode waarbij de lagen van een model achtereenvolgens over meerdere GPU's worden verdeeld. Door microbatches door te sturen wordt de wachttijd van GPU's (bubble) verminderd.

Japanse benaming: パイプライン並列

“Pipelineparallellisme (pipeline parallelism)” komt voor in 2 oefenvragen uit 1 onderwerpen, bijv. AI-hardware en softwarestack.

Vakgebied: AI-hardware en softwarestack

Nu oefenen: vragen over Pipelineparallellisme (pipeline parallelism)

Waarom wordt bij pipelineparallellisme, waarbij de lagen van het model achtereenvolgens over meerdere GPU's worden verdeeld, de batch in kleine micro-batches verdeeld en doorgestuurd?

  1. AOmdat het aantal berekeningen met micro-batches afneemt
  2. BOm de tijd (bubble) te verminderen die latere GPU's wachten op de verwerking door de vorige GPU, en meerdere GPU's tegelijk te laten werken
  3. COmdat communicatie tussen GPU's met micro-batches niet nodig is
Antwoord en toelichting tonen

Antwoord: B. Om de tijd (bubble) te verminderen die latere GPU's wachten op de verwerking door de vorige GPU, en meerdere GPU's tegelijk te laten werken

Als de hele batch in één keer wordt doorgestuurd, kunnen de tweede en volgende GPU's niets doen en wachten ze op het voorgaande resultaat terwijl de eerste GPU rekent. Bij verdeling in micro-batches kan, terwijl de eerste GPU de tweede micro-batch berekent, de tweede GPU de eerste berekenen, zodat de verwerking overlapt. Aan het begin en einde blijven wachttijden (bubbles) bestaan, zodat het aantal micro-batches voldoende groot wordt gekozen.

“Pipelineparallellisme (pipeline parallelism)” in de toelichting

Vragen met “Pipelineparallellisme (pipeline parallelism)” (2)

  1. Waarom wordt bij pipelineparallellisme, waarbij de lagen van het model achtereenvolgens over meerdere GPU's worden verdeeld, de batch in kleine micro-batches verdeeld en doorgestuurd?
  2. Welke uitspraak over tensorparallellisme, waarbij het matrixproduct van een grote laag die niet in het geheugen van één GPU past over meerdere GPU's wordt verdeeld, is juist?

Verwante termen

GPU Tensorparallellisme Dataparallellisme AI-compiler All-reduce Attention Backpropagatie Batchgrootte FlashAttention Gestructureerde sparsity

Naar de woordenlijst