Skriv ut

Utvecklingsplattformen Vitis ska ge mjukvaruutvecklare och AI-specialister tillgång till den heterogena hårdvara som finns i dagens mest avancerade FPGA:er utan att de behöver förstå de underliggande detaljerna.

– Det har gått tio år sedan vi lanserade Vivado, vårt utvecklingsverktyg för hårdvaruutvecklare. Med Vitis öppnar vi
Ramine Roane
dörren för en mycket större grupp programmerare och AI-specialister, säger Ramine Roane som är ansvarig för mjukvara och AI på Xilinx.

I den senaste generationens FPGA:er från Xlinx är den programmerbara logiken bara en del av kretsen. Beroende på modell av Versal Acap finns det också Arm-kärnor, DSP-block, grafikprocessor, en AI-processor och diverse annat som kan användas för att accelerera arbetsuppgifterna.

För att få ut maximal prestanda ur en så heterogen arkitektur som Acap krävs det extremt mycket hårdvarukunskaper. Det är här som Vitis kommer in. Verktyget baseras på Vivado men är tänkt för klassiska mjukvaruutvecklare och AI-specialister som inte vill grotta ner sig i detaljerna. Ytterligare en skillnad är att Vitis inte är tänkt för enstaka FPGA:er utan för acceleratorkorten i Alveofamiljen.

– Vi har hållit på i fem år och lagt ner tusen manår på att ta fram Vitis.

Trots den enorma investeringen är Vitis inte en proprietär utvecklingsmiljö utan open source. Den går att koppla till andra utvecklingsmiljöer plus att biblioteken, som visserligen är optimerade för Xilinx kretsar, även de är open source.

– Vi har använt open source sedan 2001 och bidragit sedan 2007. Nu satsar vi helhjärtat, vårt Runtime bibliotek (XRT) är open source liksom våra bibliotek och AI-modeller, säger Ramine Roane.

I praktiken skulle man därmed kunna ta ett visst neuronnät och implementera det på någon annan hårdvara än Xilinx men som Ramine Roane påpekar, den beskärning som gjorts för att optimera dem gör att det inte alls blir lika effektiv på en annan hårdvaruplattform.

Klicka för större bild!

Vitis är ett hierarkiskt verktyg med fyra lager. Underst hittar man korten i Alveofamiljen med sina fördefinierade in- och utgångar.

Andra lagret är Vitis core development kit som bland annat innehåller Xilinx runtime-bibliotek för förflyttningar av data mellan olika domäner men också AI-motorn. I det här lagret finns också utvecklingsverktyg som kompilatorer, analysatorer och debuggers.

I det tredje lagret finns åtta bibliotek med mer än 400 applikationer som alla är open source. Det finns bibliotek för bland annat linjär algebra, en matrislösare, för säkerhet, för video och för datakomprimering. Vidare finns bibliotek för finansiella algoritmer, databasoperationer och AI.

Det fjärde lagret erbjuder en ingång till Xilinx hårdvara för den som använder exempelvis Tensorflow eller Caffe. Med Vitis AI får användarna tillgång till verktyg för att optimera, komprimera och kompilera färdiga AI-modeller som ska köras på Versal. Det finns också speciella API:er som gör det möjligt att implementera neuronnäten på olika plattformar, från molnet hela vägen till ändnoden.

Inom kort kommer också en ingång till hårdvaran för videobearbetning kallad Vitis Video för alla som använder FFmpeg. Dessutom kommer moduler från samarbetspartners för bland annat genanalys och analys av stora datamängder.

Vitis släpps i början av november och är kostnadsfritt.