Jedra SiFive RISC-V, izbrana za računalniška vozlišča Google AI

Izvorno vozlišče: 1684403

Podjetnik s čipi RISC-V SiFive pravi, da se njegovi procesorji do neke mere uporabljajo za upravljanje delovnih obremenitev umetne inteligence v Googlovih podatkovnih centrih.

Glede na SiFive je zadevni procesor njegova inteligenca X280, večjedrna zasnova RISC-V z vektorskimi razširitvami, optimizirana za aplikacije AI/ML v podatkovnem središču. V kombinaciji z matričnimi množilnimi enotami (MXU), pridobljenimi iz Googlovih enot za obdelavo tenzorjev (TPU-ji), to naj bi zagotavljalo večjo prilagodljivost pri programiranju delovnih obremenitev strojnega učenja.

V bistvu jedro RV280 X64 za splošen namen v procesorju izvaja kodo, ki upravlja napravo, in dovaja izračune strojnega učenja v Googlove MXU, kot je potrebno za dokončanje opravil. X280 vključuje tudi lastno enoto za vektorsko matematiko, ki lahko izvaja operacije, ki jih pospeševalne enote ne zmorejo.

SiFive in Google sta bila malo sramežljiva, morda iz komercialnih razlogov, glede tega, kako je to zapakirano in uporabljeno, čeprav se nam zdi, kot da je Google svoje pospeševalne enote po meri postavil v večjedrni sistem na čipu X280, ki povezuje Bloki MXU, ki jih je zasnoval Google, neposredno v jedrni kompleks RISC-V. Ti čipi se uporabljajo v Googlovih podatkovnih centrih, v »računalniških gostiteljih AI« v skladu s SiFive, da pospešijo delo strojnega učenja.

Predstavljamo si, da če se ti uporabljajo v proizvodnji, ti čipi opravljajo naloge znotraj storitev. Upoštevamo, da te strojne opreme ne morete najeti neposredno v storitvi Google Cloud, ki ponuja virtualne stroje, optimizirane za AI, ki jih poganja tradicionalna tehnologija x86, Arm, TPU in GPU.

Podrobnosti so bile razkrite na vrhu AI Hardware Summit v Silicijevi dolini v začetku tega meseca, v pogovoru soustanovitelja SiFive in glavnega arhitekta Krsteta Asanovića in Google TPU arhitekta Cliffa Younga ter v Objava v spletnem dnevniku SiFive ta teden.

Po poročanju SiFive je opazil, da so ga po uvedbi X280 nekateri kupci začeli uporabljati kot spremljevalno jedro poleg pospeševalnika, da bi opravili vsa gospodinjska opravila in opravila splošne obdelave, za katere pospeševalnik ni bil zasnovan.

Mnogi so ugotovili, da je za upravljanje pospeševalnika potreben sklad programske opreme s polnimi funkcijami, pravi podjetje za čipe, in stranke so spoznale, da bi to lahko rešile s kompleksom jeder X280 poleg njihovega velikega pospeševalnika, jedra CPU RISC-V pa skrbijo za vse vzdrževanje in operacijsko kodo, izvajanje matematičnih operacij, ki jih veliki pospeševalnik ne more, in zagotavljanje različnih drugih funkcij. V bistvu lahko X280 služi kot nekakšno vozlišče za upravljanje pospeševalnika.

Da bi to izkoristil, je SiFive sodeloval s strankami, kot je Google, pri razvoju tako imenovanega vektorskega koprocesorskega vmesnika eXtension (VCIX), ki strankam omogoča tesno povezavo pospeševalnika neposredno z datoteko vektorskega registra X280, kar zagotavlja večjo zmogljivost in več podatkov. pasovna širina.

Asanović pravi, da je prednost v tem, da lahko stranke v ekosistem RISC-V vključijo svoj koprocesor in zaženejo celoten sklad programske opreme in programsko okolje, z možnostjo zagona Linuxa s polnim navideznim pomnilnikom in koherentno podporo predpomnilnika na čipu, ki vsebuje mešanica splošnih CPE jeder in pospeševalnih enot.

Z Googlovega vidika se je želel osredotočiti na izboljšanje svoje družine tehnologij TPU in ne izgubljati časa z izdelavo lastnega aplikacijskega procesorja iz nič, zato se je združitev teh funkcij pospeševanja z že pripravljenim procesorjem za splošne namene zdela prava pot oditi, pravi Young.

VCIX v bistvu prilepi MXU-je ​​na jedra RISC-V z nizko zakasnitvijo, s čimer preskoči potrebo po porabi številnih ciklov čakanja na prenos podatkov med CPU in pospeševalno enoto prek pomnilnika, predpomnilnika ali PCIe. Namesto tega so nam povedali, da gre le za desetine ciklov skozi dostop do vektorskega registra. To tudi nakazuje, da je vse – kompleks CPU RISC-V in pospeševalniki po meri – na isti matrici, zapakirano kot sistem na čipu.

Aplikacijska koda teče na jedrih RISC-V za splošen namen in vsako delo, ki ga lahko pospeši MXU, se prenese prek VCIX. Po mnenju Younga obstajajo druge prednosti tega pristopa poleg učinkovitosti. Programski model je poenostavljen, kar ima za posledico en sam program s prepletenimi skalarnimi, vektorskimi in soprocesorskimi navodili ter omogoča eno samo verigo programskih orodij, kjer lahko razvijalci kodirajo v C/C++ ali asemblerju, kot je želeno.

»Z jedri za splošno uporabo, ki temeljijo na SiFive VCIX in so 'hibridizirana' z Googlovimi MXU-ji, lahko sestavite stroj, ki vam omogoča, da 'pojeste torto in jo tudi pojeste', pri čemer v celoti izkoristite vse zmogljivosti MXU in programirljivost splošnega CPU kot tudi vektorska zmogljivost procesorja X280,« je dejal Young.

Zmožnost izdelave čipa po meri, kot je ta, bo verjetno ostala domena hiperscalerjev, kot je Google, ali tistih z nišnimi zahtevami in globokimi žepi, vendar dokazuje, kaj je mogoče doseči zahvaljujoč prilagodljivosti modela odprtega ekosistema RISC-V .

Zdi se, da je ta prilagodljivost in odprtost dovolj, da Google – dolgoletnega zagovornika RISC-V, z jedri RV, ki se uporablja v nekaterih drugih izdelkih – zvabi k uporabi začetne arhitekture v nasprotju z vgradnjo svojih koprocesorjev po meri v čipe x86 ali Arm. - licenčni modeli. ®

PS: Spomnite se, kdaj je bil Google igranje z uporabo arhitekture POWER CPU v svojih podatkovnih centrih?

Časovni žig:

Več od Register