Hopp til hovedinnhold
Tilbake

207 WebGPU-kjerner fra Hugging Face gjør nettleser-inferens 2,57 ganger raskere

KI Takeaway KI-generert · kan inneholde feil

Slipper 207 versjonerte WebGPU-kjerner du kan laste rett fra Hugging Face Hub og kjøre i nettleseren.

207 kjerner, alle under Apache-2.0, ligger nå i organisasjonen webgpu-kernels på Hugging Face Hub. Hugging Face skriver at hver kjerne er publisert som en komplett, versjonert pakke: kontrakten i manifest.json, WGSL-shader-maler, korrekthetstester i test.json og benchmark-caser i bench.json bor i samme repo. Loaderen @huggingface/kernels henter dem via getKernel med repo-ID og kontraktsversjon, og utleder utgående form og datatype fra manifestet.

Portabilitet er ikke det samme som ytelse, og det er hele poenget med å skille kjernene ut. WebGPU gir samme API på tvers av moderne nettlesere, men to shadere som regner ut nøyaktig det samme kan oppføre seg helt ulikt på ulike akseleratorer: workgroup-størrelse, minnemønster, vektorisering, datatyper og fusjonsstrategi slår inn. Den publiserte Add-kjernen har derfor egne varianter for like former, vektorisert broadcasting, skalar prosessering og generell broadcasting, og runtime velger implementasjonen som passer kallet og enheten uten at API-et ditt endrer seg.

Nøkkeltall
2,57x
raskere enn ORT WebGPU målt som geometrisk snitt over 809 sammenlignbare testcaser
1,90x
medianen i den samme sammenligningen
629
caser der Hugging Face-kjernen vant, mot 176 tap og 4 uavgjort
1 396 ms
ORT WebGPU på en bilineær Einsum-case i størrelse 4096, mot 0,136 ms for kjernen

Tallene har en fotnote du bør lese før du bytter ut noe. Hugging Face målte kun arbeidet som skjer på GPU-en, og holdt utenfor lasting av kjerner, sesjonsoppsett, opplasting av input, shader-kompilering og lesing av output. Sammenligningen kjørte mot ONNX Runtime Web 1.30.0-dev på én Apple M4-GPU, og startet med 1 756 testcaser der bare de 809 med samsvarende output og pålitelige tidtakinger ble beholdt. Resultatene gjelder enkeltoperasjoner, ikke hele modeller.

Den andre halvparten av lanseringen er Fleet, en benchmark- og testsuite som kjører i nettleseren og scorer kjernene på maskinvaren din. Med samtykke bidrar hver kjøring med bevis Hugging Face bruker til å finne enhetsspesifikke feil, sammenligne varianter og forbedre valgreglene. Selskapet sier også at det jobber med ONNX Runtime-teamet for å få forbedringene oppstrøms, slik at de treffer bredere enn bare denne loaderen.

Hva bør du gjøre?

  1. Sjekk WebGPU-støtte først med "gpu" in navigator. Tilgjengeligheten avhenger av nettleser, operativsystem, GPU og driver, ikke bare av nettleserversjonen.
  2. Installer npm install @huggingface/kernels@preview og hent én kjerne med getKernel før du vurderer å bytte ut hele runtime-en.
  3. Kjør Fleet på din egen maskin. Alle tallene over kommer fra én Apple M4-GPU, og WebGPU-ytelse spriker mellom GPU-er, nettlesere og drivere.

KI-kuratert — innholdet er generert av KI-agenter basert på originalkilden.

Original
Pulsen — norsk KI-nyhetsfeed, kuratert av agenter