Bij het overwegen van hardwareplatforms voor het uitvoeren van hoogwaardige NN's (Neural Networks), bepalen ontwerpers van autosystemen vaak de totale rekenkracht door simpelweg de vereisten van elke NN bij elkaar op te tellen. De aanpak leidt echter meestal tot de vraag naar één grote NN-accelerator. Door rekening te houden met de taakparallelle aard van de NN-inferenties binnen automobielsoftware, kan een veel flexibelere benadering, waarbij meerdere kernen worden gebruikt, superieure resultaten opleveren met veel grotere schaalbaarheid en energie-efficiëntie.

Deel 1: Kijken “onder de hood” van AI-workloads

Bij het ontwerpen van een hardwareplatform dat de AI-workloads van geautomatiseerd rijden kan uitvoeren, moet met veel factoren rekening worden gehouden. De grootste is echter onzekerheid: welke workload moet de hardware eigenlijk uitvoeren en hoeveel performance is nodig om deze veilig en betrouwbaar uit te voeren? Hoeveel van de tijd heb ik nodig om die werklast uit te voeren?

De uitdaging wordt nog moeilijker bij het ontwerpen van een SoC (System on Chip) voor automotive. Verkopers van halfgeleiders moeten hun producten aan meerdere klanten verkopen om voldoende rendement te halen uit de enorme investering die nodig is om een ​​nieuwe SoC op de markt te brengen. Maar hoe beslissen ze welke workloads het beste vertegenwoordigen wat klanten willen uitvoeren, en hoe de aannames die aan het begin van het ontwerpproces zijn gemaakt, zullen worden vertaald naar gebruik in de echte wereld wanneer AI in de auto-industrie zo'n snel evoluerend en constant evoluerend veld is?

Ook naarmate de complexiteit en verfijning van AI-workloads blijft toenemen, neemt ook hun stroomverbruik toe. Gezien de enorme hoeveelheid rekenkracht die we nu op één chip kunnen integreren, kunnen SoC-ontwerpers dit probleem aanpakken door gebruik te maken van wat bekend staat als “dark silicon”: het uitschakelen van alle stroom naar delen van de chip die niet worden gebruikt.

Deze aanpak is de afgelopen jaren veelvuldig gebruikt in mobiele telefoons en kan een aanzienlijk verschil maken in het stroomverbruik, maar alleen als de chip vanaf het begin samen met de software is ontworpen om deze te gebruiken. Dit is gebaseerd op het feit dat de AI-subsystemen verschillende werklasten zullen gebruiken, die van tijd tot tijd worden in- en uitgeschakeld volgens de huidige bedrijfsomstandigheden en omgeving (bijv. snelweg, stedelijke of parkeermodi, lage versus hoge verkeersvolumes, verschillende weersomstandigheden voorwaarden).

Zonder een diep begrip van het scala aan workloads en hoe ze elk werken, zijn SoC-ontwerpers gedwongen zich te richten op het ergste geval, wat vaak betekent dat grote delen van de mogelijkheden van de chip zelden worden gebruikt. Voor een geautomatiseerd voertuig betekent dat onnodige kosten en een veel hoger stroomverbruik. Daarom ontwikkelt AImotive zowel software- als hardwaretechnologieën: hierdoor kunnen we systeemontwerp holistisch benaderen.

Het totaal is de som van vele delen

Bij het ontwerpen van oplossingen voor geautomatiseerd rijden op basis van CNN's, worden ontwerpers geconfronteerd met veel uitdagingen, zoals:

Wat zijn de worst-case workloads die ik moet uitvoeren, en weet ik precies wat die workloads zullen zijn?
Hoe zorg ik voor continue verbetering gedurende de levensduur van het systeem, terwijl het onderzoek van NN doorgaat, zelfs nadat het ontwerp van de hardware is bevroren?
Hoe kan ik mijn hardwareplatform schaalbaar maken, zodat ik prestatie-upgrades kan toestaan , en kleinere of grotere configuraties, afhankelijk van het voertuigmodel of de sensoren?

Wat is de werklast?

Een uitdaging bij het ontwerpen van hardwaresystemen is dat de uiteindelijke software over het algemeen nog lang niet klaar is wanneer het hardwareontwerp wordt afgerond. Inderdaad, als een nieuwe chip deel uitmaakt van de oplossing, moet deze 3-4 jaar vóór SOP (Start of Production) worden afgerond. In een tijd waarin vaak zelfs de hogere architectuur nog niet is afgerond en de implementatie nog maar net is begonnen.

Traditioneel lossen ingenieurs deze problemen op door het hardwareplatform te veel te specificeren. Door een niveau van onvoorziene omstandigheden voor snelheid, geheugen enz. in te bouwen, kunnen de hardwareontwerpers erop vertrouwen dat de hardware de uiteindelijke oplossing zal ondersteunen.

Het uitvoeren van NN's vereist extreem krachtige motoren, gemeten in vele tientallen of honderden TOPS (Trillions of Operations Per Second). Contingentie komt echter met de grootte en het stroomverbruik. Rekening houdend met de vermogensbeperkingen van auto's, is het doel vaak om de grootte van NN-versnellers te verkleinen. Een oplossing die niet goed past bij de traditionele aanpak.

Daarom hebben we aiWare hardware IP in de eerste plaats ontworpen als een zeer schaalbare architectuur. Onze aiWare-hardware-IP vormt een aanvulling op ons modulaire aiDrive-softwaretechnologieportfolio, door onze klanten en partners alternatieven te bieden voor reguliere oplossingen die vaak overgespecificeerd zijn.

Hebben we één grote NN-acceleratormotor nodig?

Het simpele antwoord: nee! Toen we de architectuur voor aiWare ontwierpen, keken we naar alle verschillende NN-workloads binnen een op AI gebaseerd systeem, waarvoor samen meer dan 100 TOPS nodig waren. Op basis van ervaring met onze eigen aiDrive-software, evenals uitgebreide discussies met onze partners over hoe zij hun oplossingen bouwen, zagen we dat het nooit één grote “monolithische” NN-workload is: het is een reeks NN-workloads, waarvan sommige van toepassing zijn dezelfde intelligentie op verschillende sensorgegevens parallel, sommige voeren vergelijkbare NN-taken in een pijplijn uit.

AI-systemen gebruiken meerdere NN's op verschillende manieren, waarbij de taak wordt opgedeeld in een reeks modules. Bovendien domineerde voorbewerking, dat wil zeggen het werk dat wordt gedaan voor de ruwe data van elke sensor voordat deze wordt gecombineerd met data van anderen, vaak het totale budget van TOP's. Het is slechts een van de manieren waarop parallellisme dat inherent is aan een op NN gebaseerd systeem kan worden benut om flexibelere hardwareplatforms te ontwerpen.

Moet je alle prestaties gelijk schalen?

Een andere uitdagende trend van NN-onderzoek is dat naarmate de kennis groeit en de vraag naar meer veiligheid en robuustheid toeneemt, ook de prestatie-eisen toenemen, vaak zelfs vermenigvuldigd. Vooruitgang in AI-technologie kan leiden tot aanzienlijke verbeteringen in de veiligheid en kwaliteit van detectie en besluitvorming. Dus hoe profiteren we van deze vooruitgang in een voertuig dat is ontworpen voor een levensduur van 10-20 jaar?

Een enkele NN-versnellerkern is per definitie beperkt in capaciteit, hoe krachtig ook. Wat gebeurt er als je de mogelijkheden van die motor overschrijdt? Als de NN-versneller is geïntegreerd in een SoC, wordt u dan gedwongen om naar een nieuwe SoC over te stappen als de belangrijkste reden voor de upgrade is om de NN-inferentieprestaties aanzienlijk te verbeteren om gelijke tred te houden met de nieuwste NN-algoritmen? Dat vereist hervalidatie van alle software van elke functie die op die SoC wordt uitgevoerd – niet alleen de NN-onderdelen. Een kostbaar en tijdrovend proces, als je alleen maar meer prestaties uit de NN-engine wilt.

Er zullen altijd redenen zijn om andere delen van een SoC uit te breiden, zoals de CPU, het geheugen, de communicatie enz. Dat moet echter worden afgewogen tegen de dure en tijdrovende hervalidatie van een nieuwe SoC en de complexe embedded software die nauw met elkaar verbonden is. ernaar toe. Door een externe NN-acceleratorbenadering toe te passen, kunt u het upgraden van de SoC met de hostprocessor zelf uitstellen, net zoals pc-gamers hun GPU upgraden met behoud van dezelfde CPU en chassis.

Moet hardware schalen gedurende de levensduur?

Naarmate de ervaring met het integreren van AI in geautomatiseerde voertuigen snel groeit, groeit ook de behoefte aan modulariteit en schaalbaarheid. Tegenwoordig gebruiken auto's vaak gemeenschappelijke platforms voor het onderliggende chassis, dat vervolgens kan worden aangepast aan de verschillende modellen. OEM's en Tier1's beginnen nu soortgelijke concepten toe te passen op voertuigsoftware, door de verschillende softwarecomponenten – soms verdeeld over 50 of 100 ECU's (Electronics Control Units) – samen te brengen in een gemeenschappelijk softwareplatform.

Als auto's. Tijdens hun levensduur steeds meer upgradebaar worden, moet het hardwareplatform ook evolueren naar een standaard, modulaire, schaalbare en opwaardeerbare oplossing. Maar de verschillende soorten processors moeten afzonderlijk kunnen worden geüpgraded: met name de NN-versnellingshardware, waar de workloads en algoritmen in de nabije toekomst waarschijnlijk elk jaar drastisch zullen veranderen.

Zorg ervoor dat u ons volgt, zodat u mis onze aankomende whitepaper niet over hoe parallellisme en een dieper begrip van de NN-workloads een verscheidenheid aan verschillende strategieën mogelijk maken voor het implementeren van NN-accelerators.

Tony King-Smith
Executive Advisor, AImotive

0

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *