Qualcomm Hexagon 685 DSP is een Boon voor machinaal leren

De Snapdragon 845 - het nieuwste systeem-op-chip in de Snapdragon-familie van Qualcomm - is een krachtpatser van een processor. Het beschikt over snelle CPU-cores, een Spectra-beeldsignaalprocessor van de derde generatie (ISP) en een architectuur die 30 procent energiezuiniger is dan de vorige generatie. Maar het meest indrukwekkende onderdeel is misschien wel een co-processor - de Hexagon 685 DSP - die op maat is gemaakt voor kunstmatige intelligentie en machine learning.

Wat maakt Qualcomm's Hexagon 685 DSP precies?

De Hexagon DSP-architectuur in de Snapdragon 835. Bron: Qualcomm

"Vectorwiskunde is de basis van diep leren." - Travis Lanier, Senior Director Product Management bij Qualcomm

Om te begrijpen wat de Hexagon DSP zo uniek maakt, helpt het om te weten dat AI wordt gedreven door het soort wiskundecollege-ingenieursopleidingen die er vertrouwd mee zijn. Machine learning omvat berekening met grote vectoren, wat een uitdaging vormt voor smartphone-, tablet- en pc-processors. Het is moeilijk voor algemene chips om algoritmen zoals stochastische gradiëntdaling - de soorten algoritmen die de kern vormen van AI-aangedreven apps - snel en efficiënt te berekenen. Qualcomm's Hexagon DSP werd gedeeltelijk geïntroduceerd om dit op te lossen: het is geweldig in het verwerken van beeld- en sensorgegevens, met name fotografie.

Maar de Hexagon DSP is veel meer dan selfies opknappen. De meegeleverde HVX-contexten (waarover later meer) geven het voordeel van zowel universele processors als cores met vaste functies; de Hexagon 685 DSP is enorm efficiënt in het berekenen van de wiskunde achter machine-learning op het apparaat, maar behoudt de flexibiliteit van meer programmeerbare processors.

AI-chips zoals de Hexagon 685 DSP, waarnaar soms wordt verwezen als "neurale verwerkingseenheden", "neurale motoren" of "machine learning cores", zijn specifiek afgestemd op de wiskundige behoeften van AI-algoritmen. Ze zijn veel stijver in ontwerp dan traditionele CPU's en bevatten speciale instructies en rangschikkingen (in het geval van de Hexagon 685 DSP, de eerder genoemde HVX-architectuur) die bepaalde scalaire en vectorbewerkingen versnellen, die merkbaar worden in grootschalige implementaties.

De Hexagon 685 DSP van de Snapdragon 845 kan duizenden bits vectoreenheden verwerken per verwerkingscyclus, vergeleken met de honderden bits van de gemiddelde CPU-kern per cyclus. Dat is van nature. Met vier parallelle scalaire threads voor VLIW-bewerkingen (Very Long Instruction Word) en meerdere HVX-contexten, is de DSP in staat om met meerdere uitvoeringseenheden te jongleren met een enkele instructie en door gehele en decimale bewerkingen te navigeren.

In plaats van prestaties door ruwe MHz te pushen, streeft het ontwerp van de Hexagon 685 naar hoge niveaus van werk per cyclus met een lagere kloksnelheid. Het omvat hardware multi-threading die goed werkt voor VLIW, omdat multi-threading pijplijnlatenties verbergt waardoor een beter gebruik van VLIW-pakketten mogelijk wordt. De multi-threading van de DSP betekent dat het meerdere offload-sessies kan bedienen - dat wil zeggen gelijktijdige apps voor audio, camera, computer vision, enzovoort - en tegelijkertijd verschillende taken versnellen, waardoor applicaties niet hoeven te vechten voor uitvoeringstijd.

Bron: Qualcomm

Maar dat zijn niet de enige sterke punten van de Hexagon DSP. De instructiesetarchitectuur (ISA) heeft een verbeterde efficiëntie ten opzichte van traditionele VLIW dankzij de verbeterde besturingscode en maakt gebruik van slimme trucs om de prestaties van inactieve en vastgelopen threads te herstellen. Het implementeert ook zero-latency round-robin thread planning, wat betekent dat de threads van de DSP nieuwe instructies onmiddellijk na het voltooien van het vorige datapakket verwerken.

Bron: Qualcomm

Niets van dit alles is voor de duidelijkheid nieuw. Qualcomm introduceerde de 'eerste generatie' (of de juiste) Hexagon DSP - de Hexagon 680 of QDSP6 v6 - naast de Snapdragon 820 in 2015, en de Hexagon 680 werd gevolgd door de altijd zo iets verbeterde Hexagon 682. Maar de nieuwste generatie is de meest geavanceerde tot nu toe en levert tot drie keer de algehele prestaties van de DSP van de Snapdragon 835.

Dat is grotendeels te danken aan de HVX, die heel goed werkte voor de beeldverwerking (denk aan augmented reality, computer vision, video en foto's). De HVX-registers van de DSP kunnen worden bestuurd door twee van de scalaire registers en de HVX-eenheden en scalaire eenheden kunnen tegelijkertijd worden gebruikt, wat resulteert in substantiële prestatiewinst en gelijktijdigheid.

Hier is de uitleg van Qualcomm:

“Stel dat u de verwerking uitvoert op de mobiele CPU in de besturingscodemodus en dat u overschakelt naar de computermodus op de coprocessor. Als u besturingscode nodig hebt, moet u stoppen en teruggaan van de coprocessor naar de hoofd-CPU. Met Hexagon kunnen zowel de stuurcodeprocessor op de DSP als de rekencodeprocessor op HVX tegelijkertijd werken voor een strakke koppeling van de besturings- en rekencode. Dat stelt de DSP in staat om het resultaat van een HVX-berekening te nemen en het te gebruiken in een beslissing van de besturingscode in de volgende klokcyclus. "

De HVX biedt nog een groot voordeel bij de verwerking van beeldsensoren. Snapdragon-apparaten met de Hexagon 685 DSP kunnen gegevens rechtstreeks van de beeldsensor naar het lokale geheugen van de DSP (L2 Cache) streamen, waarbij de DDR-geheugencontroller van het apparaat wordt omzeild. Dat vermindert natuurlijk de latentie, maar verbetert ook de levensduur van de batterij - de Snapdragon-processor is ontworpen om tijdens de hele operatie inactief te zijn.

Het is specifiek geoptimaliseerd voor 16-bit drijvende-kommunetwerken en wordt bestuurd door Qualcomm's machine learning-software: Snapdragon Neural Processing Engine.

"We hebben het heel serieus genomen", zei een woordvoerder van Qualcomm. "We werken al drie jaar samen met partners om hen te laten [...] onze siliconen gebruiken voor AI en beeldvorming."

Die partners zijn onder meer Google, dat het beeldverwerkingsgedeelte van de Hexagon DSP gebruikte om bijvoorbeeld het HDR + -algoritme van de Pixel en Pixel 2 te voeden. Hoewel Google ook hun eigen Pixel Core heeft geïntroduceerd, is het vermeldenswaard dat apparaten met Hexagon 685 DSP de beste resultaten behalen met de beroemde Google Camera-poort, deels omdat (zoals we hebben bevestigd) van het gebruik van HVX. Facebook, een andere partner, werkte nauw samen met Qualcomm om de realtime camerafilters en -effecten van Messenger te versnellen.

Oppo heeft zijn technologie voor gezichtsontgrendeling geoptimaliseerd voor de Hexagon 685 DSP en Lenovo heeft de functie Landmark Detection eromheen ontwikkeld.

Een reden voor de enorme ondersteuning van het platform is de eenvoud. De uitgebreide Hexagon SDK van Qualcomm ondersteunt de Halide-taal voor hoogwaardige beeldverwerking en u hoeft zich geen zorgen te maken over trainingsframes voor machine learning - het implementeren van een model is in de meeste gevallen net zo eenvoudig als het uitvoeren van een API-aanroep.

"We concurreren niet [...] met IBM en Nvidia [in AI], maar we hebben gebieden waar ontwikkelaars gebruik van kunnen maken - en dat hebben ze al, " vertelde Qualcomm aan ontwikkelaars.

Zeshoek versus de competitie

De Hexagon 685 DSP van de Snapdragon 845 wordt geleverd als een toenemend aantal fabrikanten van originele apparatuur (OEM) die hun eigen mobiele en apparaat-AI-oplossingen nastreven. De Kirin 970 van Huawei - het systeem-op-chip in de Mate 10 en Mate 10 Pro - heeft een "neurale verwerkingseenheid" (NPU) die naar verluidt meer dan 2.000 beelden per seconde kan herkennen bij slechts 1/50 van het stroomverbruik van een gemiddeld CPU van smartphone. En de Apple A11 Bionic systeem-op-chip in de iPhone 8, iPhone 8 Plus en iPhone X heeft een "neurale motor" die realtime gezichtsmodellering uitvoert en tot 600 miljard bewerkingen per seconde.

Maar Qualcomm zegt dat het platform agnosticisme van de Hexagon het een voordeel geeft. In tegenstelling tot Apple en Huawei, die ontwikkelaars grotendeels dwingen eigen API's te gebruiken, wilde Qualcomm vanaf het begin enkele van de meest populaire open-source frameworks ondersteunen. Het werkte bijvoorbeeld met Google om TensorFlow, het machine learning-platform van Google, te optimaliseren voor de Hexagon 685 DSP - Qualcomm zegt dat het tot acht keer sneller en 25 keer energiezuiniger werkt dan op niet-Hexagon-apparaten.

Bron: Qualcomm

In de DSP-architectuur van Qualcomm heeft Google's GoogLeNet Inception Deep Neural Network - een machine learning-algoritme dat is ontworpen om de kwaliteit van objectdetectie- en classificatiesystemen te beoordelen - in een demo aangetoond dat het een TensorFlow-aangedreven app voor beeldherkenning op twee smartphones toont: een app die de app uitvoert op de CPU, en de andere die het op Qualcomm's Hexagon DSP uitvoert. De DSP-versnelde smartphone-app legde meer beelden per seconde vast, identificeerde objecten sneller en had meer vertrouwen in zijn conclusie over wat het object was dan de app met alleen CPU.

Google gebruikt ook de Hexagon 685 DSP om Project Tango te versnellen, het augmented reality-platform voor smartphones. Lenovo's Phab 2 Pro, Asus's ZenFone AR en andere apparaten met Tango's dieptegevoelige IR-module en beeldvolgcamera's maken gebruik van Qualcomm's Heterogeneous Processing Architecture, die verwerkingstaken delegeert aan de Hexagon 685 DSP van de Snapdragon-chipset, de sensorhub en de afbeelding signaalprocessor (ISP). Het resultaat is een "minder dan 10 procent" overhead op de CPU van het systeem-op-chip, volgens Qualcomm.

"Voor zover we weten, zijn we de enige mobiele jongens die optimaliseren voor prestaties en energie-efficiëntie, " zei een woordvoerder van Qualcomm.

Natuurlijk werken concurrenten ook aan het uitbreiden van hun invloedssfeer en het ondersteunen van ontwikkelaarsondersteuning op hun platforms. De neurale chip van de Kirin 970 werd gelanceerd met ondersteuning voor TensorFlow en Caffe (het open API-raamwerk van Facebook) naast de Kirin API's van Huawei, met TensorFlow Lite en Caffe2-integratie later dit jaar. En Huawei werkte samen met Microsoft om de door AI aangedreven Translator voor de Mate 10 te optimaliseren.

Maar Qualcomm heeft nog een voordeel: bereik. De chipmaker had in de eerste helft van 2017 42 procent van de smartphonemarkt in handen, gevolgd door Apple en MediaTek met elk 18 procent, volgens Strategy Analytics. Het volstaat te zeggen dat het nog niet in zijn laarzen trilt.

En Qualcomm voorspelt dat het alleen maar zal groeien. De chipmaker voorspelt in 2025 een omzet van $ 160 miljard met AI-softwaretechnologieën zoals computer vision, en ziet de smartphonemarkt - die naar verwachting 8, 6 miljard eenheden zal bereiken tegen 2021 - als het grootste platform.

Met de Hexagon 685 DSP en andere "tertiaire" verbeteringen die continu stroomafwaarts naar mid-range hardware gaan, is het voor Qualcomm-chips ook gemakkelijker om in de nabije toekomst machine learning naar alle soorten apparaten te brengen. Ze bieden ook een handige SDK voor ontwikkelaars (niet nodig om met de DSP-assembler te spelen) om te profiteren van de Hexagon 685 DSP en HVX in hun toepassingen en services.

"Er is behoefte aan deze speciale verwerkingseenheden voor neurale verwerking, maar je moet het ook uitbreiden, zodat je [open source] frameworks kunt ondersteunen, " zei een woordvoerder van Qualcomm. "Als je dat ecosysteem niet creëert, is er geen enkele manier waarop [...] ontwikkelaars het kunnen creëren."