Amd è riuscita a eseguire il codice C/C++ direttamente nelle GPU presso il laboratorio di ricerca di San Francisco con l’aiuto del team guidato da Maria Rossi

AMD presenta una nuova metodologia per eseguire codice C e C++ direttamente su GPU, riducendo i tempi di latenza e migliorando le prestazioni, con applicazioni significative in intelligenza artificiale e deep learning.
Amd è riuscita a eseguire il codice C/C++ direttamente nelle GPU presso il laboratorio di ricerca di San Francisco con l'aiuto del team guidato da Maria Rossi - (Credit: www.punto-informatico.it)

All’ultimo LLVM Developers’ Meeting del 2024, AMD ha catturato l’attenzione presentando una demo avvincente su un’innovativa metodologia che consente di eseguire codice C e C++ direttamente sulle GPU. Questa scoperta segna un passo significativo per gli sviluppatori, eliminando la necessità di adattare il codice per l’esecuzione su unità di elaborazione grafica, un’attività che solitamente genera un ritardo notevole dovuto alla traduzione del linguaggio. In un panorama tecnologico in continua evoluzione, potenziare le prestazioni di elaborazione attraverso metodi diretti rappresenta sicuramente una novità attesa, specialmente in un’epoca dove le applicazioni grafiche e l’IA sono in costante espansione.

La dimostrazione di Joseph Huber: esecuzione diretta del codice

Durante la presentazione, l’ingegnere Joseph Huber di AMD ha spiegato come, grazie al porting della libreria C LLVM, al runtime del compilatore e al runtime C++, sia possibile indirizzare la compilazione direttamente alla GPU. Questo approccio permette di elaborare il codice senza attendere ulteriori traduzioni o adattamenti che solitamente vengono richiesti da linguaggi come OpenMP, OpenACC e da altri “dialetti” nel mondo della programmazione. La possibilità di eseguire codice nativo su GPU offre vantaggi sostanziali, tra cui una notevole riduzione dei tempi di latenza, che può tradursi in prestazioni più elevate, specialmente in ambiti critici come l’intelligenza artificiale e il deep learning.

L’innovazione introdotta da AMD è caratterizzata anche dalla flessibilità, poiché il porting in oggetto, definito “cross-compiling”, non limita l’esecuzione del codice esclusivamente alle GPU AMD. Anche le GPU Nvidia possono supportare questa operazione, sebbene siano presenti limitazioni dovute al formato PTX, proprietario del competitor californiano. Ciò pone delle sfide in termini di gestione delle funzionalità e degli strumenti disponibili, favorendo però un’apertura a un dialogo costruttivo tra diverse piattaforme di elaborazione.

Dettagli e risorse disponibili per approfondire

Per coloro che desiderano approfondire la presentazione di Huber, AMD ha reso disponibile un video su YouTube. In questo video, l’ingegnere mostra dettagliatamente il processo e spiega il funzionamento della tecnologia che permette l’esecuzione diretta del codice C/C++. L’azienda ha anche pubblicato un documento PDF, accessibile al pubblico, che riporta tutti i passaggi chiave del processo, utile per gli sviluppatori che desiderano implementare questa tecnica nelle loro applicazioni.

Questa innovazione rappresenta un cambio di paradigma nel campo della programmazione GPU, promettendo di facilitare l’adozione di tecniche avanzate di calcolo e ridurre i tempi di risposta nelle applicazioni più impegnative. I dettagli presentati e i materiali di approfondimento offrono agli esperti del settore uno strumento concreto per esplorare le potenzialità di questa nuova metodologia.

Aggiornamenti delle librerie ROCm e impatti sul settore

Inoltre, AMD ha aggiornato le sue librerie ROCm alla versione 6.3, includendo nuove funzionalità per ottimizzare gli strumenti di codifica e di elaborazione. Questi aggiornamenti mirano a rendere le operazioni più fluide e a migliorare le prestazioni generali dei sistemi che fanno affidamento su questi strumenti, riflettendo l’impegno dell’azienda verso l’innovazione continua. La versione incrementata delle librerie ROCm non solo porta migliorie nelle prestazioni, ma dimostra anche la capacità di AMD di adattarsi rapidamente alle esigenze del mercato.

Le nuove funzioni implementate nelle librerie sono progettate per soddisfare le richieste sempre crescenti dei settori che si occupano di intelligenza artificiale, machine learning e computazione ad alte prestazioni. Come risultato, AMD si posiziona come un attore significativo nell’evoluzione delle tecnologie di elaborazione, spingendo lo sviluppo verso scenari sempre più complessi e interessanti.

In un contesto tecnologico in rapida trasformazione, l’incontro di quest’anno ha offerto spunti e innovazioni che, da un lato, semplificano il lavoro degli sviluppatori e, dall’altro, promettono di incidere positivamente sulle performance dei sistemi informatici in utilizzo.