IP RISC-V pe 64 de biți pentru înaltă performanță - Semiwiki

IP RISC-V pe 64 de biți pentru înaltă performanță – Semiwiki

Nodul sursă: 2855188

RISC-V ca arhitectură de set de instrucțiuni (ISA) a crescut rapid în importanță și relevanță comercială de la lansarea sa în comunitatea deschisă în 2015, atrăgând mulți furnizori de IP care oferă acum o varietate de nuclee RTL. Roger Espasa, CEO și fondator al Semidinamica, a prezentat la evenimentele RISC-V modul în care IP-ul lor este personalizat pentru provocările de calcul care necesită lățime de bandă mare și nuclee de înaltă performanță cu unități vectoriale. Semidynamics a fost fondată în 2016, are Barcelona pentru sediu și are deja clienți în SUA și Asia, oferind două IP-uri RISC-V personalizabile:

  • Avispado – RISCV64GCV în comandă, care acceptă AXI și CHI
  • Atrevido – RISCV64GC ieșit din comandă, care acceptă AXI și CHI

Un procesor obișnuit are o mână de nuclee mari și cache mari, ceea ce le face ușor de programat, deși nu sunt performanțe ridicate.

GPU-urile, prin contrast, au multe nuclee minuscule care oferă performanțe ridicate pentru codul paralel, dar sunt mai greu de programat și adaugă latență de comunicare prin magistrala PCIe atunci când datele trebuie să fie transmise înainte și înapoi între CPU și GPU.

CPU, GPU min
Comparație CPU, GPU

Abordarea de la Espasa este de a folosi un nucleu RISC-V conectat la nuclee de calcul, ceea ce îl face ușor de programat, performanță mai mare pentru codurile paralele și oferind latență de comunicare zero. CPU plus unitatea vectorială oferă tot ce este mai bun din ambele lumi.

CPU RISC-V plus unitate Vector, performanță mai mare
CPU plus unitate Vector

Specificația RISC-V documentează 32 de registre vectoriale și puteți adăuga un număr de nuclee vectoriale, împreună cu o conexiune la memoria cache în interiorul unei unități vectoriale.

Unitate vectorială min
Unitatea Vector

Cu Semidynamics IP puteți personaliza numărul de nuclee vectoriale: 4, 8, 16, 32. O altă modalitate de a privi acest lucru este să rețineți că 4 nuclee vectoriale sunt de 256 de biți, până la 32 de nuclee de vectori care sunt de 2,048 de biți.

Utilizatorii IP aleg și ce tipuri de date: FP64, FP32, FP16, BF16, INT64, INT32, INT16, INT8. Pentru o aplicație AI, aceștia pot alege tipuri de date FP16, BF16, în timp ce o aplicație HPC ar putea selecta FP64, FP32.

A treia personalizare este Vector Register Length, unde pentru mai multă performanță și putere mai mică puteți face registrul vectorial mai mare decât unitatea vectorială.

Iată schema bloc a Atrevideo 423-V8:

Atrevido min
Atrevido 423 + V8 Vector Unit

Unitatea vectorială este complet nefuncțională, ceea ce este unic printre furnizorii RISC-V IP. Combinația dintre unitatea vectorială și unitatea Gazzillion sunt capabile să transmită date în flux la peste 60 de octeți/cicluri.

Vector + Gazzillion, performanță octeți/ciclu
Lățime de bandă mare: Vector + Gazzillion

Linia violet arată performanța de citire, iar în cache-ul L1 este de 20-60 de octeți/ciclu, alte mașini arată o scădere rapidă a lățimii de bandă după părăsirea cache-ului L1, în timp ce această abordare continuă, cu o aplatizare la 56. Chiar și mergând la memoria DDR arată o lățime de bandă de 40. Cu o frecvență de ceas de 1.0 GHz care face o lățime de bandă de 40 GB/s.

Clienții IP își pot adăuga chiar și propriul cod RTL conectat la Unitatea Vector pentru propriile scopuri.

Performanța înmulțirii matricei este importantă în sarcinile de lucru AI, iar pe unitatea vectorială OOO V8 există un vârf de 16 FP64 FLOPS/ciclu și un vârf de 99% pentru o dimensiune a matricei >= 400. Pentru o dimensiune mică a matricei de 24×24 performanța este de 7 FP64 FLOPS/ciclu sau 50% din vârf. Înmulțirea matricei pentru FP16 folosind o unitate vectorială cu 8 nuclee vectoriale are un vârf de 64 FP16 FLOPS/ciclu și 99% din vârf pentru M >= 600.

Un benchmark de detectare a obiectelor în timp real numit YOLO (You Only Look Once) a fost rulat pe platforma Atrevido 423-V8 și a arătat o performanță cu 58% mai mare per nucleu vectorial decât concurenții. Aceste rezultate au fost pentru videoclipuri cu 24 de straturi. 5.56 Gops/cadru și aproximativ 9M parametri.

Performanță YOLO
Comparația YOLO

Rezumat

Alegerea unui furnizor RISC-V IP este o sarcină complicată, așa că cunoașterea unor furnizori precum Semidynamics vă poate ajuta să înțelegeți mai bine cum o abordare personalizată ar putea rula cel mai eficient sarcinile dvs. de lucru specifice. Cu Semidynamics puteți alege între alegeri arhitecturale, cum ar fi în ordine sau în afara ordinii, cu sau fără unități vectoriale. Cifrele raportate de la acest furnizor de IP par promițătoare și aștept cu nerăbdare anunțurile lor viitoare.

Related Videos

Distribuie această postare prin:

Timestamp-ul:

Mai mult de la Semiwiki