Çfarë është një AI MPU?
Një platformë MPU e aftë për inteligjencë artificiale kombinon një mikroprocesor aplikacioni me softuerin dhe burimet e përshpejtimit të nevojshëm për një ngarkesë pune të mësimit të makinës. Filloni duke identifikuar se cilat detyra i përkasin CPU-së dhe cilat përfitojnë nga një përshpejtues i mbështetur.
Një MPU, ose mikroprocesor aplikacioni, është zakonisht qendra e softuerit të një sistemi të integruar Linux. Një "AI MPU" nuk është një kategori e veçantë procesori aq sa një platformë MPU që përfshin ose punon ngushtë me burimet e përshpejtimit si NPU, GPU, DSP ose FPGA. MPU pret Linux, rrjetin, ruajtjen, shërbimet e sigurisë, logjikën e aplikacionit dhe kohën e ekzekutimit që koordinon ngarkesat e punës së AI.
Për mësimin e makinerive MPU, pyetja praktike nuk është vetëm shpejtësia e procesorit. Gjerësia e brezit të memories, mbështetja e përshpejtuesit, kamera dhe shpejtësia e lartë I/O, cilësia Linux BSP, disponueshmëria afatgjatë, dizajni termik dhe maturimi i zinxhirit të veglave model shpesh kanë rëndësi më shumë se një vlerë titulli TOPS.
Çfarë e bën një MPU një platformë të mirë të inteligjencës artificiale?
Më e mira MPU për inteligjencën artificiale është specifike për ngarkesën e punës. Një portë vizioni mund t'i japë përparësi MIPI CSI, tubacioneve video harduerike dhe një NPU. Një kompjuter i fortë misioni mund të ketë nevojë për PCIe, porta të shumta Ethernet, bërthama shoqëruese përcaktuese dhe veçori më të forta sigurie. Një platformë industriale mund të vlerësojë jetëgjatësinë e produktit, TSN, CAN-FD dhe një ekosistem të qëndrueshëm Linux.
Benchmark modelin aktual dhe zinxhirin e plotë të parapërpunimit. Një platformë me një shifër më të ulët të përshpejtuesit të reklamuar mund të fitojë nëse shmang kopjet e memories, mbështet operatorët e kërkuar dhe e mban efikase rrugën sensor-rezultat.
NPU: përfundimi nervor efikas në skaj
Një skaj NPU përshpejton operatorët e rrjetit nervor siç janë konvolucionet, operacionet e matricës dhe funksionet e zakonshme të aktivizimit. Zakonisht është vendi më efikas për modelet e mbështetura të zbulimit, klasifikimit, segmentimit dhe nxjerrjes së veçorive kur fuqia dhe xhiroja e konkluzioneve të qëndrueshme kanë rëndësi.
Performanca e NPU varet nga kompilimi dhe mbulimi i operatorit. Shtresat e pambështetura mund të kthehen në CPU ose një përshpejtues tjetër. Kërkesat e kuantizimit, paraqitjet e tensoreve, rezolucioni i hyrjes dhe lëvizja e kujtesës mund të ndryshojnë gjithashtu në mënyrë dramatike performancën e botës reale. Gjithmonë krahasoni grafikun e prodhimit në vend që të mbështeteni vetëm në teorinë TOPS.
FPGA: tubacione përcaktuese dhe konkluzion i AI ku fleksibiliteti ka rëndësi
Një FPGA shkëlqen në lëvizjen deterministe të të dhënave, ndërfaqet e personalizuara dhe tubacionet masivisht paralele. Në sistemet e skajshme, mund të deserializojë sensorët, të rreshtojë stampat kohore, të filtrojë të dhënat, të gjenerojë rajone me interes, të kryejë parapërpunim imazhi dhe të ushqejë një përshpejtues me vonesë të parashikueshme. FPGA Konkluzioni i AI është gjithashtu i mundur kur një model përshtatet mirë me DSP-në e disponueshme, memorien dhe grumbullin e përshpejtimit të shitësit.
Shkëmbimi është përpjekje inxhinierike. Duhet të planifikohet dizajni, simulimi, mbyllja e kohës, verifikimi dhe strategjia e përditësimit RTL ose HLS. Duhet të zgjidhet një FPGA sepse sjellja deterministe ose paralelizmi i personalizuar krijon vlerën e sistemit - jo thjesht sepse mund të ekzekutojë aritmetikën.
NPU vs FPGA për edge AI
Vendimi NPU kundër FPGA është shpesh një binar i rremë. Një NPU është përgjithësisht zgjidhja më e lehtë për rrjetet nervore të mbështetura dhe performancë të fortë për vat. Një FPGA është më i fortë kur sistemi ka nevojë për ndërfaqe me sensorë të personalizuar, parapërpunim determinist, formate të pazakonta të të dhënave ose një tubacion i kontrolluar fort para dhe pas përfundimit.
Një arkitekturë e zakonshme përdor të dyja: FPGA për marrjen dhe përpunimin e sensorëve, NPU për rrjetin nervor dhe MPU për orkestrimin Linux. Kjo zvogëlon sasinë e punës së parregullt të detyruar në çdo procesor.
| Burim | Ngarkesat më të përshtatshme të punës | Kufizimet kryesore |
|---|---|---|
| FPGA | Tubacione përcaktuese, me porosi I/O, vulosje kohore, parapërpunim, përshpejtim i specializuar | Përpjekja, verifikimi, burimet e pajisjes RTL/HLS |
| NPU | Konkluzionet nervore të mbështetura me performancë të mirë për vat | Mbështetja e operatorit, përpiluesi/koha e funksionimit, kuantizimi dhe lëvizja e kujtesës |
| MPU | Linux aplikacione, rrjetëzimi, ruajtja, siguria kibernetike, orkestrimi | Ekzekutim më pak determinist; shpenzime të përgjithshme për qëllime të përgjithshme |
| MCU / Bërthama RT | Unazat e kontrollit, mbikëqyrja e sigurisë, sekuenca e fuqisë, përcaktuese I/O | Memorie e kufizuar dhe llogaritje e nivelit të lartë |
Edge computing
- Filloni me afatet: identifikoni se cilat sinjale kanë kërkesa të vështira për kohën dhe vonesën maksimale të sensorit në veprim.
- Normat e të dhënave të hartës: llogarit xhiron e sensorit, madhësitë e ndërmjetme të tensoreve dhe trafikun e kujtesës në rastin më të keq.
- Mbajeni gëlltitjen deterministe afër ndërfaqes: FPGA, motorët DMA ose bërthamat në kohë reale janë shpesh të përshtatshme.
- Vendosni modelet nervore të mbështetura në NPU: vërtetoni mbulimin e operatorit dhe performancën aktuale të përpiluar.
- Përdorni MPU për sistemin: rrjetet, ruajtja, përditësimet, regjistrimet, API-të dhe politika e aplikacionit i përkasin natyrshëm Linux.
- Rezervoni kontrollin në kohë reale: një bërthamë MCU ose deterministe duhet të mbikëqyrë aktivizimin kritik për kohën dhe shëndetin e platformës aty ku kërkohet.
Gjerësia e brezit të kujtesës është shpesh pengesa e fshehur
Shumë dizajne edge AI fokusohen në maksimumin e llogaritjes dhe zbulojnë më vonë se kopjet, konvertimi i ngjyrave, riformatimi i tensorit ose DDR i përbashkët mbizotërojnë vonesën. Shtigjet me kopjim zero ose me kopje të ulët, topologjia DMA, sjellja e memories së memories dhe qasja në kujtesën e përshpejtuesit duhet të vlerësohen herët. Mbyllja termike gjithashtu mund të kthejë një pikë referimi të fortë në performancë të dobët të qëndrueshme.
Kjo është veçanërisht e rëndësishme kur shumë kamera, radar, sensorë ngjarjesh ose transmetime me shpejtësi të lartë Ethernet ndajnë të njëjtin nënsistem memorie.
Shembuj referimi të arkitekturës
Tubacioni i vizionit / sensorit të ngjarjeve
Sensori → FPGA gëlltitja dhe stampimi kohor → NPU përfundimi → MPU shërbimet e vendimit → CAN-FD ose Ethernet dalje. Ky është një model i fortë për perceptimin me vonesë të ulët dhe lidhet drejtpërdrejt me tonën .
Kompjuter i integruar i AI
Me shpejtësi të lartë I/O → shtegu DMA / përshpejtues → NPU ose përfundimi i GPU → Linux shërbimet e aplikacionit → API-të e ruajtjes dhe rrjetit. Jonë modul llogaritës i integruar dhe kompjuter me skaj të thyer Klasat e produkteve janë ndërtuar rreth këtij lloji të ndarjes.
Porta deterministike industriale
CAN-FD / serial / Ethernet ndërfaqe → FPGA ose MCU vulosje kohore dhe trajtimi i protokollit → MPU shërbimet → analitika opsionale NPU. Këtu mirëmbajtja e softuerit përcaktues I/O dhe afatgjatë mund të jetë më e rëndësishme se xhiroja maksimale e AI.
Si të zgjidhni midis FPGA, NPU dhe MPU
Zgjidhni nga ngarkesa e plotë e punës, jo nga etiketa e procesorit. Nëse problemi dominues është përfundimi nervor, filloni nga përputhshmëria NPU. Nëse mbizotërojnë parapërpunimi i personalizuar I/O dhe determinist, vlerësoni burimet FPGA. Nëse dominojnë shërbimet Linux, rrjetet dhe programet e aplikacioneve, filloni me aftësinë MPU. Shumica e platformave me performancë të lartë do të kombinojnë të paktën dy nga këto burime.
Përpara se të kryeni pajisjen, ekzekutoni transmetime përfaqësuese përmes grumbullit të programeve të synuara dhe matni vonesën nga skaji në skaj, fuqinë, gjerësinë e brezit të memories dhe termat. Kjo dëshmi është më e vlefshme se renditja e përgjithshme e përshpejtuesve.
Shembull i punuar: katër kamera dhe një buxhet i përbashkët memorie
Merrni parasysh një shembull planifikimi me katër transmetime 1280 × 720 me 30 korniza për sekondë, të përfaqësuar si RGB me një bajt për kanal pas konvertimit të imazhit. Ngarkesa e tyre e kombinuar logjike e imazhit është 4 × 1280 × 720 × 30 × 3 = 331,776,000 bajt për sekondë, afërsisht 332 MB/s në njësi dhjetore. Ky nuk është shpejtësia e biteve të lidhjes së kamerës ose performanca e matur e një produkti ALVEXIS.
Një kopje shtesë me kornizë të plotë lexon dhe shkruan atë ngarkesë, duke shtuar afërsisht 664 MB/s të trafikut të memories përpara se të shqyrtohet sjellja e cache-it ose operacione të tjera. Tenzorët e modelit, konvertimi i ngjyrave, regjistrimi dhe shërbimet e njëkohshme shtojnë trafikun e tyre. Kjo shpjegon pse një dizajn mund të kufizohet nga lëvizja e të dhënave edhe kur vlerësimi i përshpejtuesit kryesor të tij duket i mjaftueshëm.
| Puna në vend | Pika e nisjes | Dëshmi para kryerjes |
|---|---|---|
| Futja dhe sinkronizimi i kamerës | Ndërfaqet e mbështetura SoC, me FPGA ose një pajisje shoqëruese aty ku kërkohet | Kapja e njëkohshme e transmetimit, sjellja e vulës kohore dhe humbja nën ngarkesë |
| Konkluzioni nervor | NPU kur mbështetet grafiku dhe saktësia e zgjedhur | Saktësia e konvertimit dhe matje të qëndrueshme të aplikacionit në pajisje |
| Linux shërbime dhe regjistrime | MPU burime dhe një shteg ruajtjeje të buxhetuar në mënyrë eksplicite | CPU, memoria dhe sjellja e I/O ndërsa përfundimi është aktiv |
| Kontrolli i jashtëm kritik për kohën | Një kontrollues i përshtatshëm në kohë reale ose një zbatim përcaktues i vërtetuar | Dëshmi në kohën e përgjigjes nën ngarkesën përkatëse të rastit më të keq |
Qëllimi i ndarjes është të bëjë të qartë çdo kohë dhe kërkesë për burime. Kjo nuk do të thotë që çdo dizajn ka nevojë për katër procesorë të ndryshëm. Filloni me arkitekturën më të thjeshtë që plotëson kërkesat, më pas shtoni burime ku matjet ose kufizimet e ndërfaqes i justifikojnë ato.
Një plan vërtetimi për zgjedhjen e përzierjes së procesorit
- Ngrini kontratën e hyrjes: sensorët, formatet e të dhënave, modeli, rezolucioni dhe kushtet e funksionimit.
- Verifikoni mbështetjen e modelit dhe cilësinë e daljes përpara se të krahasoni xhiron e përshpejtuesit.
- Matni përvetësimin, parapërpunimin, përfundimin dhe dorëzimin veçmas, më pas matni rrugën e plotë.
- Përsëriteni nën ngarkesë të qëndrueshme termike me regjistrimin, rrjetëzimin dhe të gjithë sensorët e synuar aktivë.
- Regjistroni moshën e radhës, hyrjet e humbura dhe vonesën e bishtit, kështu që një normë mesatare e lartë nuk fsheh vonesa me ndërprerje.
Mbani rishikimin e tabelës, imazhin e softuerit, versionet e zinxhirit të veglave dhe hyrjet e testimit me rezultatet. Për një zbatim Rockchip, Udhëzuesi i vendosjes së modelit RK3588 zhvillon këtë rrjedhë pune. Për të dhënat e kamerës së ngjarjeve, përdorni udhëzues për integrimin e softuerit për të përcaktuar vulat kohore dhe paraqitjet përpara se të zgjidhni rrugën e përfundimit.
Pasi të karakterizohet ngarkesa e punës, krahasoni Opsionet e integrimit SoM dhe SBC. Ky vendim lidh arkitekturën llogaritëse me lidhësit, fuqinë, mbylljen dhe punën e prodhimit.
Nga zgjedhja e procesorit te një produkt i ndërtueshëm
Një listë e shkurtër e procesorit është e dobishme vetëm kur i përshtatet produktit të plotë. Përpara se të porosisni një bord të personalizuar, kthejeni ngarkesën e punës në një përmbledhje të shkurtër inxhinierike:
- Inputet: numërimi i sensorëve, ndërfaqet, normat e mostrës dhe kërkesat e sinkronizimit.
- Ngarkesa e punës së AI: modeli aktual, saktësia e mbështetur dhe cilësia e pranueshme e prodhimit.
- Kufizimet fizike: dimensionet, burimi i energjisë, ftohja dhe mjedisi i funksionimit.
- Dorëzimi: sasia e prototipit, vëllimi i prodhimit, pronat e softuerit dhe testet e pranimit.
Për një stacion inspektimi, lidhni tubacionin e kamerës me këmbëzën e linjës, identifikuesin e pjesës dhe ndërfaqen e rezultatit. Jonë vizioni i makinerive industriale dhe zgjidhje e kontrollit të cilësisë shpjegon se si këto kërkesa bëhen pilot.
MPU, NPU dhe FPGA edge AI FAQ
Çfarë është MPU AI?
MPU AI përshkruan ngarkesat e punës me inteligjencë artificiale të vendosura në një platformë mikroprocesori të integruar, zakonisht me Linux dhe shpesh me përshpejtim të integruar ose shoqërues si një NPU, GPU ose FPGA. MPU zakonisht menaxhon aplikacionet, rrjetin, ruajtjen, sigurinë dhe orkestrimin rreth tubacionit të përfundimit.
A mundet një MPU të drejtojë mësimin e makinerive?
po. Ngarkesat e punës për mësimin e makinerive MPU mund të ekzekutohen në bërthamat e CPU-së ose të përdorin përshpejtues të integruar. Për sistemet e prodhimit, mbështetja e modelit, gjerësia e brezit të memories, termat e qëndrueshëm dhe vonesa nga skaji në skaj kanë më shumë rëndësi se vetëm titulli TOPS.
NPU vs FPGA: cili është më i mirë për edge AI?
Një NPU është zakonisht zgjidhja më e thjeshtë për përfundimin e mbështetur të rrjetit nervor me performancë të fortë për vat. Një FPGA preferohet kur ndërfaqet e personalizuara të sensorëve, parapërpunimi determinist, formatet e pazakonta të të dhënave ose tubacionet e specializuara janë qendrore në dizajn. Shumë sisteme përdorin të dyja.
A mund të kryeni një ngarkesë pune NPU në një FPGA?
Një FPGA mund të implementojë përshpejtues të rrjetit nervor ose tubacione konkluzionesh, por nuk është automatikisht ekuivalent me një NPU të dedikuar. Tregtia përfshin burime logjike të programueshme, memorie, pjekurinë e zinxhirit të veglave, mbështetjen e modelit, përpjekjet e verifikimit dhe fuqinë.
Kur ka kuptim konkluzioni i inteligjencës artificiale të FPGA?
FPGA Përfundimi i AI është tërheqës kur përfundimi duhet të jetë i lidhur ngushtë me parapërpunimin përcaktues, ndërfaqet e personalizuara ose lëvizjen e specializuar të të dhënave. Është veçanërisht i dobishëm kur një kohë ekzekutimi standard NPU nuk i përshtatet shtegut të sensorit ose kufizimeve të vonesës.
Aty ku TinyML përshtatet në llogaritjen e skajshme
Edge computing përshkruan përpunimin pranë burimit të të dhënave; edge AI zbaton përfundimin e mësimit të makinës atje. TinyML adreson një klasë më të kufizuar të vendosjes, shpesh në mikrokontrollues me memorie dhe fuqi të kufizuar. Prandaj, një klasifikues i vogël dridhjesh dhe një tubacion perceptimi me shumë kamera kanë nevojë për buxhete të ndryshme harduerike edhe pse të dyja mund të jenë edge AI.
Për një objektiv mikrokontrollues, kontrolloni madhësinë e modelit, kujtesën e kohës së funksionimit, operatorët e mbështetur dhe shpenzimet e përgjithshme të blerjes. Për një dizajn të bazuar në NPU ose FPGA, vlerësoni gjithashtu lëvizjen e kujtesës dhe ndarjen midis punës së përshpejtuar dhe jo të përshpejtuar. Zgjidhni arkitekturën më të vogël që plotëson detyrën e matur dhe kërkesat e rikuperimit, në vend që të zgjidhni një teknologji vetëm nga akronimi i saj.
Referencat teknike
- Rockchip: RKNN komponentët e softuerit dhe mjetet e vendosjes
- Rockchip: shembuj të konvertimit dhe përfundimit të modelit
- Gallego et al.: Vizioni i bazuar në ngjarje - Një sondazh
- TensorFlow Lite Micro: konkluzioni në pajisjet me memorie të kufizuar
Shembulli i gjerësisë së brezit është një llogaritje e qartë, jo një standard produkti. Vërtetoni arkitekturën e zgjedhur në ngarkesën e synuar të punës.
Ndani ngarkesën tuaj reale të punës edge AI.
Dërgoni ndërfaqet e sensorëve, llojin e modelit, normat e të dhënave, zarfin e fuqisë dhe kufizimet e vendosjes. Ne mund t'i hartojmë ato në një arkitekturë MPU/NPU/FPGA dhe një klasë të përshtatshme të modulit llogaritës.
