AI-hardware en softwarestack
Waarom kosten elementgewijze bewerkingen zoals ReLU en layer normalization in AI-berekeningen gemakkelijk veel tijd in verhouding tot het aantal bewerkingen?
- AOmdat de berekening van ReLU meer bewerkingen vergt dan een matrixproduct
- BOmdat er in verhouding tot de hoeveelheid gelezen en geschreven elementen weinig wordt berekend, zodat de geheugenbandbreedte de snelheid bepaalt
- COmdat elementgewijze bewerkingen niet op een GPU kunnen worden uitgevoerd
Antwoord en toelichting tonen
Antwoord: B. Omdat er in verhouding tot de hoeveelheid gelezen en geschreven elementen weinig wordt berekend, zodat de geheugenbandbreedte de snelheid bepaalt
ReLU leest elk element, vergelijkt het met 0 en schrijft het, zodat de berekening per element gering is. De rekenintensiteit is zeer laag, zodat de tijd niet door de prestaties van de rekeneenheden maar door de geheugenbandbreedte wordt bepaald. Ook wanneer ze qua aantal bewerkingen een klein deel van het geheel zijn, kunnen ze qua tijd een niet te verwaarlozen aandeel hebben. Het lezen en schrijven van geheugen wordt beperkt door ze direct na het matrixproduct samen te voegen en normalisatie in één kernel onder te brengen.