AI-hardware en softwarestack
Wat is de belangrijkste reden dat inferentie-runtimes zoals TensorRT en ONNX Runtime sneller kunnen zijn dan inferentie rechtstreeks met een trainingsframework?
- AOmdat de graaf wordt geoptimaliseerd tot een vorm die alleen voor inferentie nodig is, met onder meer operator fusion, kwantisatie en keuze van kernels die bij de hardware passen
- BOmdat de inferentie-runtime berekeningen weglaat en een bij benadering juist antwoord geeft
- COmdat de inferentie-runtime het aantal gewichten van het model vergroot
Antwoord en toelichting tonen
Antwoord: A. Omdat de graaf wordt geoptimaliseerd tot een vorm die alleen voor inferentie nodig is, met onder meer operator fusion, kwantisatie en keuze van kernels die bij de hardware passen
Trainingsframeworks leggen de nadruk op flexibel schrijven en op registratie voor backpropagation, wat bij uitsluitend inferentie verspilling oplevert. Een inferentie-runtime verwijdert na het inlezen van het model de voor inferentie onnodige delen, voegt bewerkingen samen, zet gewichten en activaties zo nodig om naar lagere precisie en kiest de snelste kernel voor de doel-GPU of -NPU. Zo kunnen voor hetzelfde model latency en geheugen sterk afnemen.