Gå til indhold

Neural Processing Unit (NPU)

ArkitekturreferenceFeex

En NPU er en processor designet til understøttede neurale netværks-arbejdsbelastninger, ofte med vægt på effektiv inferens. Den generiske betegnelse beskriver ikke et universelt instruktionssæt eller en standard for applikationskompatibilitet.

Hvad du behøver at vide

En NPU er en processor designet til understøttede neurale netværks-arbejdsbelastninger, ofte med vægt på effektiv inferens. Den generiske betegnelse beskriver ikke et universelt instruktionssæt eller en standard for applikationskompatibilitet.

Sådan virker det

Et NPU-runtime opdeler en model i understøttede operationer, vælger talrepræsentationer og planlægger arbejde på den tilgængelige accelerator. Visse operatorer kan forblive på CPU'en eller GPU'en. Overførsler, synkronisering, kompilering og modelindlæsning er en del af den fulde eksekveringsvej.

Hvor det er nyttigt

En applikation kan bruge en understøttet execution provider til at køre en egnet model på NPU'en. En graf, der i stilhed falder tilbage til CPU/GPU for en kritisk operator, kan opføre sig meget anderledes end en, der forbliver på acceleratoren, selv på samme enhed.

Sådan kontrolleres understøttelse og aktivering

Identificér den nøjagtige NPU-model og -generation, understøttet OS-driver, runtime-version og execution provider. Kontrollér operatorunderstøttelse, hukommelseskrav og reservemetodediagnostik med den faktiske model, ikke blot en enhedshåndteringspost.

Hardwaretilgængelighed er kun det første skridt. Driver, runtime, afviklingsudbyder, understøttede operatorer og numerisk format skal matche applikationen. Undersøg det faktiske backend-valg og fallback frem for at antage, at en AI-mærkat betyder, at enhver model accelereres.

Hvad funktionen ikke fastslår

NPU-tilstedeværelse fastslår ikke en specifik TOPS-værdi, numerisk præcision, sparsitetsantagelse, understøttet modelstørrelse eller OS-certificering. TOPS-tal målt under forskellige forhold er ikke direkte sammenlignelige applikationsbenchmarks.

Kompatibilitet og ydeevne i praksis

Sammenlign komplette arbejdsbelastninger under angivne forhold, inklusive kompilering, overførsler og ikke-understøttede operatorer. Maksimalt antal operationer pr. sekund afhænger af præcision og tælleantagelser. De er ikke en erstatning for målt latenstid, gennemløb, energiforbrug eller modelnøjagtighed.

En praktisk tjekliste til verifikation

  1. Registrer den nøjagtige processor- eller platformsmodel samt de involverede applikations-, OS- og runtime-versioner. Bevar formuleringen af den faktiske fejl eller det faktiske krav.
  2. Tjek producentreferencen for den nøjagtige model, og undersøg derefter den effektive kapacitet og aktiverede tilstand i det miljø, hvor programmet kører.
  3. Sammenlign ethvert krav for den valgte binære fil eller backend. En funktion med et lignende navn, et alias eller en bred teknologimærkat er ikke tilstrækkelig.
  4. Bekræft, at applikationen har valgt den tilsigtede implementering. Brug dens dokumenterede diagnosticering og et understøttet fallback, når kravene ikke er opfyldt.
  5. Foretag en enkelt understøttet ændring ad gangen, og gentag den samme arbejdsbelastning. Hold den oprindelige konfiguration og gendannelsessti tilgængelig.

Hvis funktionen er anført, men softwaren ikke kan bruge den

Start med den nøjagtige komponent, der fejler. En hardwaredatabase beskriver registreret kapacitet; operativsystemet eller hypervisoren kan udstille et andet effektivt miljø. En illegal-instruction-fejl kræver også undersøgelse af den faktiske fejlbehæftede instruktion og det binære build, fordi korruption eller en urelateret ikke-understøttet instruktion kan frembringe et lignende symptom.

Installer den applikations-, driver- eller runtime-version, der understøttes til den nøjagtige platform, og brug om nødvendigt leverandørens dokumenterede baseline eller fallback-build. En softwareopdatering kan ikke oprette en instruktion, som processoren mangler. Ændringer i firmware og sikkerhedspolitik bør følge systemproducentens procedure og en genopretningsplan frem for en generisk optimeringsopskrift.

Kilder og denne forklaringens omfang

AMD XDNA-arkitektur · ONNX Runtime execution providers

Disse referencer fastlægger arkitektonisk adfærd og softwarekrav. De verificerer ikke uafhængigt enhver funktionsværdi på en tilknyttet hardwaremodelside. For modelunderstøttelse skal du bruge den pågældende sides producentdokumentation og kontrollere den effektive systemkonfiguration. Denne artikel leverer ikke et benchmark, en certificering eller en uafhængig revisionsdato.

Kilder og verificering

Redaktionelt ejerskab: Feex. Ingen uafhængig revisionsdato er registreret. Sådan undersøger vi.

  • AMD XDNA-arkitektur · Tile-baseret spatial dataflow-arkitektur, lokale hukommelser og AI Engine-komponenter. Generisk arkitekturtekst fastslår ikke en models tile-antal eller TOPS.
  • ONNX Runtime execution providers · Execution provider-arkitektur, grafpartitionering og hardwarespecifik integration. Tilstedeværelse af provider beviser ikke, at enhver operator aflastes.

Var denne artikel nyttig?

Et ja eller nej er nok. Vælg en grund, hvis du vil, eller tilføj en kort bemærkning.

Var denne artikel nyttig?