Med AI måste du se den större hårdvaru- och mjukvarubilden PlatoBlockchain Data Intelligence. Vertikal sökning. Ai.

Med AI måste du se en större bild av hårdvara och mjukvara

Sponsrad funktion Det är ett och ett halvt decennium sedan forskare bländade teknikvärlden genom att visa att grafiska bearbetningsenheter kan användas för att dramatiskt accelerera viktiga AI-operationer.

Den insikten fortsätter att fånga företagens fantasi. IDC har rapporterat att när det kommer till infrastruktur är GPU-accelererad beräkning och HPC-liknande uppskalning bland de viktigaste övervägandena för tekniska ledare och arkitekter som vill bygga ut sin AI-infrastruktur.

Men för alla organisationer som framgångsrikt har tillämpat AI på verkliga problem, kämpar många fler för att ta sig bortom experiment- eller pilotstadiet. IDC:s forskning 2021 fann att mindre än en tredjedel av de tillfrågade hade flyttat sina AI-projekt till produktion, och bara en tredjedel av dem hade nått ett "moget produktionsstadium".

Angivna hinder inkluderar problem med bearbetning och förberedelse av data och förstärkning av infrastrukturen för att stödja AI i företagsskala. Företag behövde investera i "avsiktsbyggd infrastruktur av rätt storlek", sa IDC.

Vad är AI-problemet här?

Så var går dessa organisationer fel med AI? En faktor kan vara att tekniska ledare och AI-specialister misslyckas med att ta en holistisk titt på den bredare AI-pipelinen samtidigt som de ägnar för mycket uppmärksamhet åt GPU:er jämfört med andra beräkningsmotorer, särskilt den ärevördiga CPU:n.

För i slutändan är det inte en fråga om att backa CPU:er kontra GPU:er kontra ASIC:er. Det handlar snarare om att hitta det optimala sättet att konstruera en AI-pipeline som kan ta dig från idéer och data- och modellbygge till implementering och slutledning. Och det innebär att uppskatta de respektive styrkorna hos olika processorarkitekturer, så att du kan använda rätt beräkningsmotor vid rätt tidpunkt.

Som Intels senior director, Datacenter AI Strategy and Execution, Shardul Brahmbhatt förklarar: "CPUn har använts för mikrotjänster och traditionella beräkningsinstanser i molnet. Och GPU:er har använts för parallell beräkning, som mediastreaming, spel och för AI-arbetsbelastningar."

Så eftersom hyperscalers och andra molnspelare har riktat sin uppmärksamhet mot AI, har det blivit tydligt att de utnyttjar samma styrkor för olika uppgifter.

GPU:ers möjligheter kring parallell beräkning gör dem mycket lämpliga för att träna AI-algoritmer, till exempel. Samtidigt har processorer ett försprång när det kommer till låg batch, låg latens realtidsinferens och att använda dessa algoritmer för att analysera livedata och leverera resultat och förutsägelser.

Återigen, det finns varningar, förklarar Brahmbhatt, "Det finns ställen där du vill göra fler slutsatser. Och den batchinferensen är också något som görs genom GPU:er eller ASIC:er."

Tittar ner i pipelinen

Men AI-pipelinen sträcker sig bortom träning och slutledning. På vänster sida av pipelinen måste data förbehandlas och algoritmer utvecklas. Generalist-CPUn har en betydande roll att spela här.

Faktum är att GPU:er står för en relativt liten andel av den totala processoraktiviteten över AI-pipelinen, med CPU-drivna "datastegs"-arbetsbelastningar som står för två tredjedelar totalt, enligt Intel (du kan läsa en lösningsöversikt – Optimera inferens med Intel CPU-teknik här).

Och Brahmbhatt påminner oss om att CPU-arkitekturen har andra fördelar, inklusive programmerbarhet.

"Eftersom CPU:er har använts så brett, finns det redan ett befintligt ekosystem av utvecklare och applikationer tillgängligt, plus verktyg som ger användarvänlighet och programmerbarhet för allmänt bruk," säger han.

"För det andra ger CPU: er snabbare tillgång till det större minnesutrymmet. Och sedan den tredje saken är att det är mer ostrukturerad beräkning jämfört med GPU:er [som] är mer parallell beräkning. Av dessa skäl fungerar processorer som dataförflyttare som matar GPU:erna och hjälper därigenom med Recommender System-modeller samt utvecklande arbetsbelastningar som Graph Neural Networks."

En öppen plan för AI-utveckling

Så hur ska vi se på rollerna för CPU:er respektive GPU:er när vi planerar en AI-utvecklingspipeline, vare sig det är on-prem, i molnet eller gränsöverskridande båda?

GPU:er revolutionerade AI-utvecklingen, eftersom de erbjöd en accelerationsmetod som avlastar operationer från CPU:n. Men det följer inte att detta är det mest förnuftiga alternativet för ett visst jobb.

Som Intels plattformsarkitekt Sharath Raghava förklarar "AI-applikationer har vektoriserade beräkningar. Vektorberäkningar är parallelliserbara. För att köra AI-arbetsbelastningar effektivt skulle man kunna utnyttja CPU:er och GPU:s kapacitet med tanke på storleken på vektorberäkningarna, avlastningsfördröjning, parallelliserbarhet och många andra faktorer. Men han fortsätter, för en "mindre" uppgift kommer "kostnaden" för avlastning att vara överdriven, och det kanske inte är meningsfullt att köra det på en GPU eller accelerator.

CPU:er kan också dra nytta av närmare integration med andra systemkomponenter som gör att de kan slutföra AI-jobbet snabbare. Att få maximalt värde från AI-implementeringar innebär mer än att bara köra själva modellerna – den insikt som eftersträvas beror på effektiv förbearbetning, slutledning och efterbearbetning. Förbearbetning kräver att data förbereds för att matcha ingångsförväntningarna för den tränade modellen innan den matas för att generera slutledning. Den användbara informationen extraheras sedan från slutledningsresultaten vid efterbearbetningsstadiet.

Om vi ​​till exempel tänker på ett datacenterintrångsdetekteringssystem (IDS) är det viktigt att agera på modellens utdata för att skydda och förhindra skador från en cyberattack i tid. Och vanligtvis är förbearbetnings- och efterbearbetningsstegen mer effektiva när de utförs på värdsystemets processorer eftersom de är mer integrerade med resten av det arkitektoniska ekosystemet.

Prestandahöjning under nybörjarorder

Så, betyder det att man helt och hållet avstår från fördelarna med GPU-acceleration? Inte nödvändigtvis. Intel har byggt in AI-acceleration i sina Xeon-skalbara processorer i några år. Sortimentet inkluderar redan Deep Learning Boost för högpresterande slutledning på modeller för djupinlärning, medan Intels Advanced Vector Extensions 512 (AVX 512) och Vector Neural Network Extensions (VNNI) påskyndar INT8-inferensprestandan. Men DL Boost använder också brain floating point format (BF16) för att öka prestandan på träningsbelastningar som inte kräver höga precisionsnivåer.

Intels kommande Xeon Scalable fjärde generationens processorer kommer att lägga till avancerad matrismultiplikation, eller AMX. Detta kommer att ge en ytterligare 8-faldig ökning jämfört med AVX-512 VNNI x86-tilläggen som implementerats i tidigare processorer enligt Intels beräkningar, och tillåter 4:e generationens Intel Xeon Scalable-processorer att "hantera träningsbelastningar och DL-algoritmer som en GPU gör". Men samma acceleratorer kan också användas för allmän CPU-beräkning för AI- och icke-AI-arbetsbelastningar.

Det betyder inte att Intel förväntar sig att AI-pipelines ska vara x86 från början till slut. När det är mer meningsfullt att helt avlasta träningsbelastningar som kommer att dra nytta av parallellisering, erbjuder Intel sin Habana Gaudi AI Training Processor. Benchmark-tester tyder på att de senare driver Amazon EC2 DL1-instanser som kan leverera upp till 40 procent bättre pris-prestanda än jämförbara Nvidia GPU-baserade träningsinstanser som också finns i molnet.

Samtidigt är Intels Data Center GPU Flex-serie inriktad på arbetsbelastningar och operationer som drar nytta av parallellisering som AI-inferens, med olika implementeringar som ställs till "lättare" och mer komplexa AI-modeller. En annan Intel® Data Center GPU, med kodnamnet Ponte Vecchio (PVC), kommer inom kort att börja driva Aurora-superdatorn vid Argonne National Laboratory.

Kan vi gå från början till slut?

Potentiellt kan alltså Intels kisel underbygga hela AI-pipelinen, samtidigt som man minimerar behovet av att ladda ner data mellan olika beräkningsmotorer i onödan. Företagets processorer – oavsett om det är GPU eller CPU – stödjer också en vanlig mjukvarumodell baserad på öppen källkodsverktyg och ramverk med Intel-optimeringar genom sitt OneAPI-program.

Brahmbhatt citerar Intels arv i att bygga ett x86-programvaruekosystem baserat på gemenskap och öppen källkod som en annan fördel. “Filosofin som Intel har är ... 'låt ekosystemet driva adoptionen'. Och vi måste se till att vi är rättvisa och öppna för ekosystemet, och vi ger någon av våra hemliga såser tillbaka till ekosystemet."

"Vi använder en vanlig mjukvarustack för att i princip se till att utvecklare inte behöver oroa sig för den underliggande differentieringen av IP mellan CPU och GPU för AI."

Denna kombination av en gemensam mjukvarustack och fokus på att använda rätt beräkningsmotor för rätt uppgift är ännu viktigare i företaget. Företag förlitar sig på AI för att hjälpa dem att lösa några av sina mest akuta problem, oavsett om det finns i molnet eller på prem. Men blandade arbetsbelastningar kräver komplett programvara, samt underhåll och hantering av systemstacken, för att köra koden som inte ingår i kärnan som sitter på acceleratorn.

Så när det kommer till att besvara frågan "hur får vi AI till företagsskala" kan svaret bero på att ta en titt på helheten och se till att du använder hela uppsättningen av hårdvara och mjukvara till ditt förfogande.

Sponsras av Intel.

Tidsstämpel:

Mer från Registret