Con l'intelligenza artificiale, è necessario vedere il quadro più ampio dell'hardware e del software PlatoBlockchain Data Intelligence. Ricerca verticale. Ai.

Con l'IA, devi vedere il quadro hardware e software più ampio

Funzionalità sponsorizzata Sono passati un decennio e mezzo da quando i ricercatori hanno abbagliato il mondo tecnologico dimostrando che le unità di elaborazione grafica potrebbero essere utilizzate per accelerare notevolmente le operazioni chiave dell'IA.

Quella realizzazione continua a attanagliare l'immaginazione delle imprese. IDC ha riferito che quando si tratta di infrastruttura, il calcolo con accelerazione GPU e lo scale-up simile all'HPC sono tra le principali considerazioni per i leader tecnologici e gli architetti che cercano di costruire la loro infrastruttura di intelligenza artificiale.

Ma per tutte le organizzazioni che hanno applicato con successo l'IA ai problemi del mondo reale, molte altre lottano per andare oltre la fase di sperimentazione o pilota. La ricerca IDC 2021 ha scoperto che meno di un terzo degli intervistati aveva portato in produzione i propri progetti di intelligenza artificiale e solo un terzo di questi aveva raggiunto una "fase di produzione matura".

Gli ostacoli citati includono problemi con l'elaborazione e la preparazione dei dati e il rafforzamento dell'infrastruttura per supportare l'IA su scala aziendale. Le imprese dovevano investire in "infrastrutture appositamente costruite e di dimensioni adeguate", ha affermato IDC.

Qual è il problema dell'IA qui?

Allora, dove stanno sbagliando quelle organizzazioni con l'IA? Un fattore potrebbe essere che i leader tecnologici e gli specialisti di intelligenza artificiale non riescono a dare uno sguardo olistico alla più ampia pipeline di intelligenza artificiale prestando troppa attenzione alle GPU rispetto ad altri motori di calcolo, in particolare la venerabile CPU.

Perché in definitiva, non si tratta di supportare le CPU rispetto alle GPU rispetto agli ASIC. Piuttosto, si tratta di trovare il modo ottimale per costruire una pipeline di intelligenza artificiale in grado di portarti da idee e dati e dalla creazione di modelli alla distribuzione e all'inferenza. Ciò significa apprezzare i rispettivi punti di forza delle diverse architetture di processori, in modo da poter applicare il motore di calcolo giusto al momento giusto.

Shardul Brahmbhatt, senior director di Intel, Datacenter AI Strategy and Execution, spiega: “La CPU è stata utilizzata per microservizi e istanze di calcolo tradizionali nel cloud. E le GPU sono state utilizzate per il calcolo parallelo, come lo streaming multimediale, i giochi e per i carichi di lavoro di intelligenza artificiale".

Quindi, poiché gli hyperscaler e altri giocatori cloud hanno rivolto la loro attenzione all'IA, è diventato chiaro che stanno sfruttando questi stessi punti di forza per compiti diversi.

Le capacità delle GPU relative al calcolo parallelo le rendono altamente adatte per l'addestramento di algoritmi di intelligenza artificiale, ad esempio. Nel frattempo, le CPU hanno un vantaggio quando si tratta di inferenza in tempo reale a basso batch, bassa latenza e utilizzo di tali algoritmi per analizzare i dati in tempo reale e fornire risultati e previsioni.

Ancora una volta, ci sono delle avvertenze, spiega Brahmbhatt, “Ci sono posti in cui vuoi fare più inferenze batch. E quell'inferenza batch è anche qualcosa che viene fatto tramite GPU o ASIC".

Guardando lungo il gasdotto

Ma la pipeline dell'IA si estende oltre la formazione e l'inferenza. Sul lato sinistro della pipeline, i dati devono essere preelaborati e gli algoritmi sviluppati. La CPU generalista ha un ruolo significativo da svolgere qui.

In effetti, le GPU rappresentano una percentuale relativamente piccola dell'attività totale del processore attraverso la pipeline di intelligenza artificiale, con carichi di lavoro "data stage" alimentati dalla CPU che rappresentano complessivamente due terzi, secondo Intel (puoi leggere una sintesi della soluzione - Ottimizza l'inferenza con la tecnologia CPU Intel qui).

E Brahmbhatt ci ricorda che l'architettura della CPU ha altri vantaggi, inclusa la programmabilità.

"Poiché le CPU sono state utilizzate in modo così ampio, è già disponibile un ecosistema esistente di sviluppatori e applicazioni, oltre a strumenti che offrono facilità d'uso e programmabilità per l'elaborazione generica", afferma.

“In secondo luogo, le CPU forniscono un accesso più rapido allo spazio di memoria più ampio. E poi la terza cosa è che è un calcolo più non strutturato rispetto alle GPU [che] sono un calcolo più parallelo. Per questi motivi, le CPU funzionano come data mover che alimentano le GPU, aiutando così con i modelli Recommender System e con carichi di lavoro in evoluzione come Graph Neural Networks".

Un piano aperto per lo sviluppo dell'IA

Quindi, come dovremmo considerare i ruoli rispettivamente di CPU e GPU durante la pianificazione di una pipeline di sviluppo AI, sia in locale, nel cloud o a cavallo di entrambi?

Le GPU hanno rivoluzionato lo sviluppo dell'IA, perché offrivano un metodo di accelerazione che scarica le operazioni dalla CPU. Ma non ne consegue che questa sia l'opzione più sensata per un determinato lavoro.

Come spiega l'architetto della piattaforma Intel Sharath Raghava “Le applicazioni di intelligenza artificiale hanno calcoli vettorizzati. I calcoli vettoriali sono parallelizzabili. Per eseguire i carichi di lavoro dell'IA in modo efficiente, si potrebbero sfruttare le capacità di CPU e GPU considerando le dimensioni dei calcoli vettoriali, la latenza di offload, la parallelizzabilità e molti altri fattori". Ma continua, per un'attività "più piccola", il "costo" dell'offload sarà eccessivo e potrebbe non avere senso eseguirlo su una GPU o un acceleratore.

Le CPU possono anche beneficiare di una più stretta integrazione con altri componenti del sistema che consente loro di completare il lavoro di intelligenza artificiale più rapidamente. Ottenere il massimo valore dalle implementazioni dell'IA implica molto di più della semplice esecuzione dei modelli stessi: le informazioni ricercate dipendono da operazioni di preelaborazione, inferenza e postelaborazione efficienti. La preelaborazione richiede che i dati siano preparati per soddisfare le aspettative di input del modello addestrato prima che vengano alimentati per generare l'inferenza. Le informazioni utili vengono quindi estratte dai risultati dell'inferenza nella fase di postelaborazione.

Se pensiamo ad esempio a un sistema di rilevamento delle intrusioni (IDS) di un data center, è importante agire sull'output del modello per proteggere e prevenire tempestivamente eventuali danni da un attacco informatico. E in genere, le fasi di preelaborazione e postelaborazione sono più efficienti quando vengono eseguite sulle CPU del sistema host perché si integrano più strettamente con il resto dell'ecosistema architettonico.

Aumento delle prestazioni sotto gli ordini di partenza

Quindi, significa rinunciare del tutto ai vantaggi dell'accelerazione GPU? Non necessariamente. Intel ha implementato l'accelerazione AI nelle sue CPU Xeon scalabili per alcuni anni. La gamma include già Deep Learning Boost per l'inferenza ad alte prestazioni sui modelli di deep learning, mentre Advanced Vector Extensions 512 (AVX 512) e Vector Neural Network Extensions (VNNI) di Intel accelerano le prestazioni di inferenza INT8. Ma DL Boost utilizza anche il formato a virgola mobile del cervello (BF16) per aumentare le prestazioni sui carichi di lavoro di allenamento che non richiedono livelli elevati di precisione.

Le prossime CPU Xeon Scalable di quarta generazione di Intel aggiungeranno la moltiplicazione avanzata della matrice, o AMX. Questo darà un ulteriore incremento di 8 volte rispetto alle estensioni AVX-512 VNNI x86 implementate nei processori precedenti secondo i calcoli di Intel e consentirà ai processori scalabili Intel Xeon di quarta generazione di "gestire i carichi di lavoro di addestramento e gli algoritmi DL come fa una GPU". Ma quegli stessi acceleratori possono essere applicati anche al calcolo generale della CPU per carichi di lavoro AI e non AI.

Ciò non significa che Intel si aspetti che le pipeline di intelligenza artificiale siano x86 dall'inizio alla fine. Quando ha più senso scaricare completamente i carichi di lavoro di formazione che trarranno vantaggio dalla parallelizzazione, Intel offre il suo processore di formazione Habana Gaudi AI. I test di riferimento suggeriscono che quest'ultimo alimenta le istanze Amazon EC2 DL1 che possono offrire un rapporto qualità-prezzo fino al 40% migliore rispetto a istanze di formazione basate su GPU Nvidia comparabili, anch'esse ospitate nel cloud.

Allo stesso tempo, la serie Intel Data Center GPU Flex è orientata ai carichi di lavoro e alle operazioni che beneficiano della parallelizzazione come l'inferenza dell'IA, con diverse implementazioni rivolte a modelli di intelligenza artificiale più "leggeri" e più complessi. Un'altra GPU Intel® Data Center, nome in codice Ponte Vecchio (PVC), inizierà a breve ad alimentare il supercomputer Aurora presso l'Argonne National Laboratory.

Possiamo andare da un capo all'altro?

Potenzialmente, quindi, il silicio di Intel può sostenere l'intera pipeline di intelligenza artificiale, riducendo al minimo la necessità di scaricare inutilmente i dati tra diversi motori di calcolo. I processori dell'azienda, sia GPU che CPU, supportano anche un modello software comune basato su strumenti e framework open source con ottimizzazioni Intel attraverso il suo programma OneAPI.

Brahmbhatt cita l'eredità di Intel nella creazione di un ecosistema software x86 basato su community e open source come un altro vantaggio. “La filosofia di Intel è... 'lascia che l'ecosistema guidi l'adozione'. E dobbiamo assicurarci di essere equi e aperti all'ecosistema e fornire all'ecosistema tutta la nostra salsa segreta".

"Stiamo utilizzando uno stack software comune, per assicurarci sostanzialmente che gli sviluppatori non debbano preoccuparsi della differenziazione sottostante dell'IP tra CPU e GPU per l'IA".

Questa combinazione di uno stack software comune e l'attenzione all'utilizzo del motore di calcolo giusto per l'attività giusta è ancora più importante nell'azienda. Le aziende si affidano all'intelligenza artificiale per risolvere alcuni dei loro problemi più urgenti, che risiedano nel cloud o in locale. Ma i carichi di lavoro misti richiedono un software completo, nonché la manutenzione e la gestione dello stack di sistema, per eseguire il codice non incluso nel kernel che si trova sull'acceleratore.

Quindi, quando si tratta di rispondere alla domanda "come portiamo l'IA su scala aziendale", la risposta potrebbe dipendere dall'esame del quadro più ampio e dall'assicurarsi di utilizzare l'intera gamma di kit hardware e software a tua disposizione.

Sponsorizzato da Intel.

Timestamp:

Di più da Il registro