Wat is All-reduce?

Communicatie waarbij de waarden van alle GPU's elementsgewijs worden opgeteld en het resultaat aan alle GPU's wordt gedistribueerd. Gebruikt voor het middelen van gradiënten bij dataparallelle training.

Japanse benaming: オールリデュース

“All-reduce” komt voor in 2 oefenvragen uit 1 onderwerpen, bijv. AI-hardware en softwarestack.

Vakgebied: AI-hardware en softwarestack

Nu oefenen: vragen over All-reduce

Welke uitspraak over de werking van de all-reduce-communicatie bij gedistribueerde training is juist?

  1. ADe data van één GPU worden gewist om geheugen vrij te maken
  2. BDe waarden (zoals gradiënten) van alle GPU's worden opgeteld en de som wordt aan alle GPU's uitgedeeld
  3. CDe voeding van alle GPU's wordt gelijktijdig uitgeschakeld
Antwoord en toelichting tonen

Antwoord: B. De waarden (zoals gradiënten) van alle GPU's worden opgeteld en de som wordt aan alle GPU's uitgedeeld

All-reduce is een communicatievorm waarbij de tensoren van gelijke vorm van elke GPU elementgewijs worden opgeteld (reduce) en alle GPU's het resultaat ontvangen. Bij ring-all-reduce, waarbij GPU's in een ring worden verbonden en de data in kleine stukken worden verdeeld en aan de buur doorgegeven, blijft de communicatiehoeveelheid per GPU vrijwel constant ook als het aantal GPU's toeneemt. Bij training met dataparallellisme wordt deze communicatie gebruikt voor het middelen van de gradiënten in elke stap.

“All-reduce” in de toelichting

Vragen met “All-reduce” (2)

  1. Welke uitspraak over de werking van de all-reduce-communicatie bij gedistribueerde training is juist?
  2. Welke uitspraak over dataparallellisme bij training met meerdere GPU's is juist?

Verwante termen

GPU Dataparallellisme AI-compiler Attention Backpropagatie Batchgrootte FlashAttention Gestructureerde sparsity Gradient checkpointing Inferentie (inference)

Naar de woordenlijst