Contents
Deze blogpost is oorspronkelijk gepubliceerd door Bitfury. Het is hier herdrukt met toestemming van Bitfury.
We bevinden ons midden in een van de grootste technologische revoluties in de geschiedenis. De groeiende populariteit van het internet der dingen, gecombineerd met aanzienlijke vooruitgang in kunstmatige intelligentie, zal uitmonden in een golf van digitale ontwrichting, die vele aspecten van onze online en offline wereld zal veranderen (en verbeteren). Maar om deze toekomst te laten slagen, zal ook de manier waarop we hardware ontwerpen moeten veranderen, namelijk de verschuiving van de cloud naar de edge en van traditionele computerontwerpen naar AI-architecturen.
In dit artikel ga ik in op zal een samenvatting geven van de nieuwste trends en veranderingen in computergebruik met betrekking tot AI en IoT, evenals enkele essentiële statistieken voor bedrijven die oplossingen willen bouwen voor AI/IoT-apparaten.
Over het internet der dingen
Naar verwachting zullen tegen 2030* meer dan 125 miljard 'dingen' met internet (IoT) zijn verbonden, van smartphones tot camera's tot smarthome-apparaten en meer. Elk van deze apparaten, tot aan de kleinste sensor, creëert exponentieel meer data voor analyse, die we voorheen niet konden gebruiken vanwege de enorme schaal. Nu, met de komst van kunstmatige intelligentie, kunnen deze gegevens goed worden geanalyseerd, waardoor we nog diepere inzichten en betere diensten krijgen. Om dit te doen, moeten deze gegevens vervolgens zo snel en veilig mogelijk worden geanalyseerd door AI-applicaties, waarbij de resultaten vrijwel onmiddellijk worden geretourneerd (zoals een alarmsysteem van een huis, een slimme thermostaat die de temperatuur laat dalen nu iedereen in huis vertrokken naar het werk, enz.). Om ervoor te zorgen dat deze apparaten naar behoren werken, moeten ze 'aan de rand' of zo dicht mogelijk bij de locatie van het apparaat werken, met ongeëvenaarde beveiliging en efficiëntie. Dit creëert een ongekende vraag naar AI-computingproducten die echte, baanbrekende resultaten kunnen opleveren voor apparaat-/AI-toepassingen aan de rand.
Overweeg het ontwerp: cloudcomputing versus de rand
De producten die momenteel op de markt zijn voor AI-computing, zijn in de eerste plaats ontworpen voor cloud computing-activiteiten. De computersector, die wordt gekenmerkt door grote regionale datacenters, kent relatief weinig beperkingen op het gebied van kosten, vermogen en schaalbaarheid. Datacenters kunnen altijd worden uitgebreid en door de markt voor hun diensten kunnen ze bijna overal ter wereld winstgevend opereren. Als gevolg hiervan hebben de leveranciers aan deze sector jarenlang dure en niet-geoptimaliseerde technologieën ontworpen en verkocht. Een reden hiervoor is dat veel cloud computing-applicaties (zoals het draaien van je Google Drive of het streamen van je Netflix) simpelweg geen innovatieve ontwerpen nodig hebben. Hardware gebaseerd op standaard computing/graphic computing-architecturen werkt prima.
Naarmate de vraag naar AI-applicaties groeide, werd het duidelijk dat deze architecturen en datacenters AI-workloads niet aankonden, laat staan AI-workloads aan 'the edge'. Start-ups hebben nu de markt overspoeld en proberen hardware te produceren die AI-applicaties beter kan verwerken. Voor bedrijven die willen profiteren van deze nieuwe generatie innovatie via hun eigen AI/IoT-toepassingen, is het echter vaak moeilijk om te bepalen welke producten de rekenkracht en resultaten kunnen leveren. AI-hardware is een nieuwe markt, vol met nieuwkomers en institutionele giganten die diverse producten aanbieden op basis van verschillende benaderingen van computergebruik.
Bitfury's deskundige AI-team (afkomstig van Intel, ASUS Group en meer) heeft de volgende belangrijke statistieken verzameld die volgens ons essentieel zijn bij het overwegen van de afwegingen tussen effectiviteit, bruikbaarheid en gemak van een hardwareleverancier voor AI-toepassingen. We hopen dat het uw bedrijf helpt om beter te analyseren en te begrijpen welk product het beste voor u is.
1. De AI-softwarestack en -hulpmiddelen
Belangrijkste afhaalmaaltijden: u moet de volledige softwarestack van uw AI-processor zorgvuldig analyseren en ervoor zorgen dat deze is geïntegreerd met bestaande open-source AI-frameworks.
blokquote>
TensorFlow, Caffe' en PyTorch zijn de meest populaire open-source AI-ontwikkelingsframeworks. Ondersteuning voor CPU- en GPU-ontwerpen is standaard geïntegreerd in de backend van deze frameworks, maar veel nieuwe AI-processors zijn dat niet. Dit betekent dat de softwarestack voor veel AI-processors de uitvoer van deze frameworks als invoer van hun aangepaste compiler gebruikt en deze gebruikt om het binaire uitvoerbare bestand te maken. Wanneer u de softwarestack van de door u gekozen AI-processor analyseert, moet u controleren waar compressie, snoeien, precisieconversie en omscholing (indien nodig) worden uitgevoerd, en de impact op hun ontwikkelingsstroom beoordelen. In sommige gevallen moeten datawetenschappers overschakelen van het ontwikkelraamwerk naar de aangepaste compiler en terug naar het raamwerk totdat de vereiste prestaties zijn bereikt. Het is ook van cruciaal belang om de vooraf opgeleide netwerken en de beschikbare modeldierentuin te evalueren. We raden u ook aan toegang te hebben tot een on-premises of online simulator, die een goed voorbeeld kan geven van de verwachte prestaties van uw neurale netwerk op de beoogde hardware.
2. Neurale netwerkprecisie
Belangrijkste afhaalmaaltijden: bekijk de precisie-eisen zorgvuldig – anders moet u mogelijk kostbare tijd en middelen besteden aan het opnieuw trainen van uw netwerk.
De meeste versnellers voor randinferentie werken met verminderde precisie. De reden hiervoor is dat het converteren van het netwerk naar een lagere precisie de hardware-implementatie vereenvoudigt en het stroomverbruik drastisch vermindert, wat essentieel is voor een edge-toepassing. Terwijl CPU's/GPU's berekeningen maken op 32-bits met Floating Point-precisie, werken de meeste nieuwe versnellers voor inferentie met INT8/INT12/INT16-precisie en sommige met bfloat16. Dit betekent dat alle waarden met een lagere precisie opnieuw moeten worden toegewezen — om een hoge nauwkeurigheid te behouden, is het vaak nodig om het netwerk opnieuw te trainen.
3. Nauwkeurigheid
Belangrijkste afhaalmaaltijden: vergelijk de voorwaarden voor nauwkeurigheid in uw toepassing met het ontwerp van de processor om coördinatie te garanderen.
In veel AI-toepassingen is nauwkeurigheid een belangrijk element. Dankzij de vooruitgang in de ontwikkeling van neurale netwerken is het vandaag de dag mogelijk om een hoge nauwkeurigheid te behouden terwijl de precisie wordt teruggebracht tot INT16/INT12/INT8. Bij veel neurale netwerken is er na een omscholing geen significant verlies aan nauwkeurigheid bij de inferentie tussen 32-bits drijvende komma's en 16-bits integer. Sommige leveranciers bieden ook 12-bits resolutie met bijna dezelfde nauwkeurigheid als 32-bits zwevende punten. In veel niet-kritieke toepassingen is 80-bits nauwkeurigheid voldoende omdat het een nauwkeurigheid van 98-99,5% garandeert (versus hetzelfde model met 32-bits drijvende komma).
4. Prestaties & Doorvoer
Belangrijkste afhaalmaaltijden: laat je niet alleen verkopen door 'piek tera-bewerkingen per seconde'. Vraag in plaats daarvan om toegang tot een simulator die kan laten zien hoe de chip presteert voor uw specifieke netwerkontwerp.
Tera-bewerkingen per seconde (bekend als TOPS) wordt vaak gebruikt om de piekprestaties van een specifieke architectuur aan te geven. Tegenwoordig kan een AI-chip voor eindknooppunten of AI edge-appliances met laag stroomverbruik 0-10 TOPS leveren, terwijl 10-50 TOPS vaker voorkomen in krachtige edge-appliances en edge-datacenters. Hoewel “peak TOPS” een goede marketingtool is, geeft het niet noodzakelijk de echte prestaties aan die een AI-chip kan leveren op uw neurale netwerk. We hebben gevallen gezien waarin één neuraal netwerk radicaal anders presteert op twee chipontwerpen met dezelfde TOPS. Dit komt omdat, op basis van het ontwerp van de chip, het gebruik ervan drastisch kan veranderen. Sommige netwerken kunnen 10-20% van de chipbronnen gebruiken, terwijl andere 80-90% kunnen bereiken. Voer uw netwerk uit op een online of on-premises simulator om te zien welke echte TOPS voor uw geval kan worden geleverd.
Voor afbeeldingen omvatten goede statistieken voor het beoordelen van een AI-chip frames per seconde (f/s), waardoor je een goede indicatie krijgt van de topprestaties; en efficiëntie, per seconde per joule (f/s/J).
Opmerking: Prestaties en efficiëntie kunnen variëren op basis van de grootte van de batch afbeeldingen. De MLPerf-website (https://mlperf.org/) geeft een zeer goed overzicht van de gemeten prestaties van elke chip.
5. Latentie
Belangrijkste conclusie: bedenk welke drempelwaarde voor latentie uw AI-toepassing nodig heeft voordat u een AI-processor selecteert — offer geen andere prestaties op voor ultralage latentie als dit niet nodig is.
Latency kan een kritische parameter zijn voor AI-edge-applicaties – de AI-computereenheid in een voertuig moet bijvoorbeeld een zeer lage latentie hebben, in de orde van enkele milliseconden, om alle gegevens te verwerken en snel te reageren. Hetzelfde geldt voor een datacentertoepassing waar een enorme hoeveelheid data snel moet worden verwerkt. In veel andere edge-toepassingen is dit geen doorslaggevende factor. Als het voor uw toepassing is, zorg er dan voor dat uw processor de laagst mogelijke latentie heeft.
6. Stroomverbruik en thermisch ontwerp Vermogen
Belangrijkste afhaalpunt: Stroomverbruik is een kritische factor om te overwegen bij het kiezen van een product, maar houd rekening met de afwegingen tussen stroomverbruik/kleine hardware en de thermische/warmteafvoerproblemen.
Stroomverbruik is een kritische factor voor end-node- en edge-apparaten. Sommige van deze apparaten kunnen op batterijen werken, maar dat brengt sterke verbruiksbeperkingen met zich mee. Voor veel business-to-business IOT-oplossingen is de belangrijkste factor het thermische ontwerpvermogen (TDP) van de chip. Verbetering van de productieprocessen betekent dat veel bedrijven een krachtige chip kunnen leveren binnen kleine afmetingen. Hoewel dit kostenreductie en eenvoudige integratie in kleine apparaten mogelijk maakt, introduceert het een probleem van het afvoeren van de warmte over het zeer beperkte gebied. Het is belangrijk om met deze factor rekening te houden bij de selectie van de chip en bij het ontwerp van het complete systeem.
7. Levenscyclus
Belangrijkste afhaalmaaltijden: controleer de levenscyclus van alle componenten in de AI-verwerkingseenheid, vooral als sommige van externe fabrikanten komen. Mogelijk moet u deze fabrikanten afzonderlijk benaderen om de toekomstige beschikbaarheid te bevestigen.
In de B2B-markt is het uiterst belangrijk om componenten te selecteren met een gegarandeerde levensduur van 3-5 jaar. Als de AI-verwerkingseenheid is geïntegreerd met componenten van derden, zoals DDR/LPDDR, raden we bedrijven aan om bevestiging te krijgen van de oorspronkelijke geheugenfabrikant over de beschikbaarheid van productie.
8. Leveranciers
Belangrijkste afhaalmaaltijden: zoals in de meeste bedrijven kan het tijdrovend en duur zijn om van leverancier te veranderen. Zorg ervoor dat u vertrouwd bent met uw keuze van AI-processorprovider voordat u gaat afstemmen.
Als je eenmaal een verwerker hebt geselecteerd, kan het een zware taak zijn om van een leverancier naar een andere over te stappen. De redenen om een nieuwe leverancier te overwegen zijn doorgaans een aanzienlijk prijsvoordeel en/of een aanzienlijk prestatievoordeel. Deze voordelen zijn echter alleen geldig als de overgang soepel verloopt en er geen obstakel is dat bij de integratie van uw hardware en software een probleem zou kunnen vormen voor uw product of proces. De beschikbare tools, ondersteuning, werkelijke prestaties, marginale kosten en totale eigendomskosten moeten serieus worden overwogen voordat u een leverancier selecteert, omdat deze negatief kunnen worden beïnvloed als u van leverancier verandert.
9. Kosten
Belangrijk: houd rekening met de totale eigendomskosten, de 'echte' kosten voor het selecteren van uw hardware, en zorg ervoor dat u geen 'verborgen' kostenposten over het hoofd ziet die zich later zullen voordoen.
Kosten zijn altijd een van de belangrijkste parameters bij het selecteren van hardware. We raden u aan de kosten van de verwerkingseenheid te evalueren in relatie tot de andere statistieken die we in dit artikel noemen. U moet rekening houden met de “echte kosten” op elk niveau van doorvoer/prestaties. Over het algemeen raden we u aan de totale eigendomskosten van deze hardware in overweging te nemen, met bijzondere aandacht voor de kosten van software-integratie en neurale netwerkoverdracht. Deze kosten zijn vaak verborgen voor de inkoopmanager, maar zeer zichtbaar voor de R&D- en productbeheerafdelingen.
Al deze statistieken zijn cruciaal om te overwegen bij het nemen van uw beslissing over AI-hardware. Als u de juiste processor selecteert, kan uw product beter presteren en marktcapitulerende waarde creëren voor u en uw klanten.
Van onze kant zullen we doorgaan met het evalueren en verstrekken van inzichten over de AI-hardwaremarkt – en zal binnenkort meer delen over onze eigen kern-AI-producten en cloud-to-edge-oplossingen. Meld u aan voor onze nieuwsbrief op https://bitfury.com/ai om op de hoogte te blijven.
Citaten en verder lezen:
*HIS Markit, Cisco, OpenAI, Barclay MKT research , McKinsey, Gartner, Bitfury-analyse
“AI: gebouwd op schaal, van experimenteel tot exponentieel”, Awalegaonkar, Berkey, Douglass, Reilly, 2019, Accenture. https://ai-zurich.ch/wp-content/uploads/2019/12/Accenture-Built-to-Scale-PDF-Report.pdf
Fabrizio Del Maffeo
Hoofd Kunstmatige Intelligentie, Bitfury