Kompania Google prezantoi platformën e hapur Coral NPU (Njësi e Pëpunimit Nervor), e cila ofron një akselerator të hapur harduerik për modelet e mësimit të makinerive dhe mjete programimi për ta përdorur me motorët tipikë AI. Coral mund të përdoret si një bazë për krijimin e sistemeve energji-efikase në një çip (SoC), të përshtatshme për përdorim në sistemet e Internetit të Gjërave, llogaritjeve Edge dhe platformat e mbledhjes së të dhënave nga sensorët, si dhe në pajisje konsumatorësh me konsum shumë të ulët energjie, si kufje, syze të realitetit të shtuar dhe orë inteligjente.
Coral NPU ka si qëllim ekzekutimin e aplikacioneve AI që funksionojnë vazhdimisht në pajisjet portative me një konsum minimal energjie. Implementimi bazë i Coral NPU ofron rendiment prej 512 miliard operacioneve në sekondë (GOPS) me vetëm disa miliwat energji. NPU është projektuar për modifikimin fleksibël të arkitekturës në varësi të nevojave të prodhuesve të SoC. Prodhuesi i parë që do të fillojë prodhimin e çipave të bazuar në Coral NPU do të jetë kompania Synaptics, e cila ka njoftuar një linjë procesorësh për pajisje të Internetit të Gjërave, Astra SL2610, e cila përfshinë një nën-sistem Torq NPU, i realizuar mbi bazën e arkitekturës Coral NPU.
Disa aplikacione tipike për Coral NPU përfshijnë përdorimin e AI për përpunimin e imazheve dhe zërit, ndërveprimin me përdoruesin dhe mbajtjen e kontekstit. Për shembull, në pajisje mund të ekzekutohen modele të mëdha të gjuhës dhe aplikacione për njohjen e fytyrave dhe objekteve, kërkimin vizual, njohjen e zërit, përkthimin në kohë reale, transkriptimin e zërit, identifikimin e fjalëve kyçe në zë, kontrollin me gjeste dhe komanda zanore, përcaktimin e aktiviteteve të përdoruesit (ecje, vrapim, gjumë) dhe llojin e ambientit (në shtëpi, në rrugë).
NPU përfshin një arkitekturë 32-bit të setit të komandave RISC-V RV32IMF_Zve32x, autobus AXI4, një pipeline me katër faza për përpunimin e komandave me menaxhim të renditur, përfundim të pa renditur të ekzekutimit të komandave, menaxhim me katër rrjedha për skalar dhe dy rrjedha për vektorial. Procesori mbështet operacione SIMD për përpunimin e menjëhershëm të vektorëve 128-bit dhe është i pajisur me 8 KB memorie ITCM për komandat dhe 32 KB memorie DTCM për të dhënat.

NPU përfshin tre komponentë procesorë që punojnë së bashku:
- NjĂ« bĂ«rthamĂ« pĂ«r llogaritjet skalarĂ« â njĂ« frontend i lehtĂ« i programueshĂ«m nĂ« gjuhĂ«n C, RISC-V, qĂ« menaxhon rrjedhat e tĂ« dhĂ«nave nĂ« bĂ«rthamat kryesore dhe pĂ«rdor modelin 'ekzekutim deri nĂ« pĂ«rfundim' (run-to-completion) pĂ«r tĂ« siguruar funksionalitetin e CPU-ve tradicionale dhe konsum tĂ« ulĂ«t energjie.
- Një SIMD koprocessor vektorësh, që mbështet zgjerimet vektoriale të setit të komandave RISC-V (RVV v1.0) dhe lejon ekzekutimin simultan të shumë operacioneve mbi sasi të mëdha të të dhënave.
- Një koprocessor matricor, që ekzekuton me efikasitet operacione të shumzimit-të bashkimit (MAC) dhe i projektuar për të përshpejtuar operacionet bazë të rrjetëve nervorë.

Për zhvilluesit e aplikacioneve, është përgatitur një grup kompilorësh për modelet AI (IREE dhe TFLM), një kompilator për programet në gjuhën C dhe një simulator. Mbështetet kompilimi i modeleve që përdoren në aplikacionet AI bazuar në strukturat TensorFlow, JAX dhe PyTorch. Modeli kompilohet në një përfaqësim ndërmjetës universale, e cila më pas transformohet përmes LLVM në një set të ulët të komandave RISC-V, i mbështetur në Coral NPU.

Burimi: opennet.ru
