Nvidia uvolnila technologii AI akcelerátorů z GPU Volta jako open source IP bloky

8. 10. 2017

Sdílet

 Autor: Nvidia

Vztah Nvidie a „open source“ světa je komplikovaný. Její ovladače pro Linux tradičně bývají výkonnější (pokud se v posledních letech něco nezměnilo), ale jsou zase uzavřené, jen binární. Vývoj open source ovladače integrovaného přímo s jádrem, což je na Linuxu praktičtější, Nvidia sama nepodporuje a podobné příčiny vedly k známému bezservítkovému vzkazu prostředníčkem od Linuse Torvaldse. Leckoho tak možná překvapí, že teď Nvidia něco vydává jako open source – a to nejen software, jde dokonce otevřený hardware.

Tento týden oznámila Nvidia uvolnění zdrojovým kódům k projektu NVDLA. Tato zkratka znamená Nvidia Deep Learning Accelerator a o přesně to jde – o hardwarové („IP“) bloky určené k akceleraci úloh umělé inteligence (v užším smyslu strojového učení na bázi neuronových sítí). Nejde o kompletní čipy, ale o plány na komponentu, kterou mohou jiní výrobci čipů začlenit do svého návrhu. Teoreticky by tedy měli nyní mít možnost, jak do svého procesoru nebo SoC přidat AI akcelerátor, aniž by jej museli sami navrhnout.

Kód NVDLA Nvidia zveřejnila na GitHubu. Jde o zdrojáky samotného hardwaru ve Verilogu a RTL, simulátor, různé testovací a vývojové nástroje a ovladače pro Linux. Ten je zatím jedinou podporovanou platformou, portace na další systémy ale je také možná. Licence ke kódu je specifická vytvořená Nvidií, nejde tedy o nějakou standardní typu MIT, BSD nebo GPL.

Schéma akcelerátoru neuronových sítí NVDLA Schéma akcelerátoru neuronových sítí NVDLA

Architektura samotného hardwaru údajně vychází z Tegry Xavier, což je příští zatím neuvedená generace ARM procesorů Nvidie, která má být určená zejména pro samořídící automobily. Podle toho, co Nvidia sdělila, by NVDLA měla vycházet z architektury tzv. Tensor Cores, tedy speciálních AI bloků v GPU architektuře Volta. Akcelerátor by měl podporovat softwarový framework TensorRT, který Nvidia vytvořila pro výpočetní GPU.

Tensor Cores v čipu GV100 (Zdroj: VideoCardz) Tensor Cores v čipu GV100 (Zdroj: VideoCardz)

Uveřejnění této architektury jako open source jde do určité míry proti očekáváním. Umělá inteligence je pro Nvidii perspektivní byznys a teoreticky by nemělo být v jejím zájmu pomáhat konkurentům místo toho, aby prodávala co nejvíc vlastních čipů. Z dosavadních informací není jasné, zda uveřejněné IP dokáže efektivitou nebo absolutním výkonem konkurovat implementaci v GPU Nvidie, nebo jde jen o chudšího příbuzného, který tedy „není rizikem“. Podle viceprezidenta Nvidie pro autonomní zařízení Deepu Tally jsou však důvody Nvidie jednoduché: firma nemůže uspokojit celý trh AI, jelikož různá zařízení budou potřebovat akcelerátory nejrůznějších výkonů, velikostí a podob. Nvidia nemůže všechny příležitosti pokrýt, ale je prýv jejím zájmu, aby se AI rozšířila co nejvíc, protože pak bude mít sama větší trh pro ty produkty, které vyrábí. Altruismus se tedy má Nvidii nepřímo vrátit.

nvidia-nvdla-akcelerator-schema-2

bitcoin_skoleni

Architekturu NVDLA lze škálovat na různý výkon s komplexitu Architekturu NVDLA lze škálovat na různý výkon s komplexitu

Problém pro AI startupy?

Jako možný efekt zveřejnění NVDLA pod open source licencí uvádějí některé komentáře, že volná dostupnost této technologie by mohla dostat do problémů řadu malých firem nebo startupů, které se snaží přijít s vlastní technologií či IP pro AI hardware. Tyto firmy nabízejí AI bloky třeba výrobcům mobilních SoC, od jedné takové firmy má svůj akcelerátor licencovaný například Huawei v čipu Kirin 970. Technologie NVDLA by teoreticky podobným firmám mohla vzít byznys a z trhu je vytlačit. Nvidia by se tedy kromě bohulibých záměrů mohla tímto krokem snažit zlikvidovat potenciální konkurenty v oboru umělé inteligence dřív, než příliš narostou a mohli by její pozici ohrozit.

Pokud by čipy firem jako Huawei a dalších masově přešly na IP bloky od Nvidie, získala by určitou kontrolu nad tímto ekosystémem a zároveň by si připoutávala zákazníky ke své architektuře a ekosystému. To může být mechanismem, jak Nvidia bude ze svobodného NVDLA profitovat. Podobně se například „zaháčkovala“ vlastním (proprietárním) frameworkem a jazykem Cuda v oblasti GPGPU výpočtů a je možné, že tento úspěšný recept byl na zřeteli při uvolnění NVDLA.