Vai al contenuto
AI.info

The Pulse

AMD aggiunge in ROCm 10.1 una via per portare i thread della CPU sulle GPU

La versione ROCm 10.1 di AMD, pubblicata il 5 ottobre, aggiunge hipThreads per trasferire i concetti standard dei thread C++ sulle GPU AMD senza riscrivere completamente il codice in HIP. L’aggiornamento modifica anche i trasferimenti di da

AMD aggiunge in ROCm 10.1 una via per portare i thread della CPU sulle GPU

AI.info Team · Scritto con l’IA ·

La versione ROCm 10.1 di AMD offre un modo per portare parte del codice C++ esistente basato sui thread della CPU sulle sue GPU senza riscrivere un’applicazione attorno a HIP, la piattaforma dell’azienda per la programmazione delle GPU. La nuova libreria, hipThreads, trasferisce i concetti standard dei thread C++ nell’esecuzione su GPU ed è pensata per i carichi di lavoro per i quali una migrazione completa richiederebbe uno sforzo superiore ai benefici attesi. AMD ha pubblicato la versione il 5 ottobre 2026.

hipThreads punta sulle migrazioni graduali

ROCm 10.1 colloca hipThreads tra le librerie per i thread del ROCm Core SDK. Secondo AMD, la libreria porta i concetti standard dei thread C++ nella programmazione di dispositivi eterogenei e può funzionare su Linux e Windows. È destinata al codice parallelo per CPU che gli sviluppatori vogliono accelerare senza affrontare una migrazione completa al modello di programmazione HIP.

La documentazione di hipThreads descrive la libreria come un insieme di primitive di concorrenza in stile C++ che funzionano all’interno dei kernel GPU. Secondo la documentazione, il codice per CPU esistente in stile std::thread può essere trasferito con poche modifiche al sorgente. Questo offre un punto d’ingresso più circoscritto per alcune basi di codice, ma non significa che qualsiasi programma basato sui thread possa essere trasferito su una GPU senza modifiche.

Archiviazione e memoria assumono un ruolo maggiore

Le altre novità principali annunciate da AMD riguardano il trasferimento dei dati verso gli acceleratori e al loro interno. ROCm 10.1 amplia hipFile, parte di AMD Infinity Storage, con un percorso asincrono che esegue letture e scritture su uno stream HIP senza il consueto passaggio intermedio nella memoria dell’host. La versione aggiunge anche un’interfaccia I/O per inviare più richieste di accesso ai file in batch e dati di telemetria pensati per aiutare gli sviluppatori a capire se a limitare un carico di lavoro siano il calcolo, la memoria o la fornitura dei dati.

Il runtime HIP ora consente alle applicazioni di allocare memoria dell’host su uno specifico nodo NUMA della CPU. Questo può mantenere la memoria più vicina al processore o all’acceleratore che la utilizza, anziché ricorrere a un pool generico. Secondo AMD, librerie come RCCL possono sfruttare questa capacità per creare pipeline di comunicazione zero-copy locali al nodo NUMA.

LLVM 24 comporta un cambiamento nel sistema di build

ROCm 10.1 sposta lo sviluppo del compilatore di AMD da LLVM 23 a LLVM 24. Secondo AMD, il nuovo compilatore offre un supporto C++ aggiornato e la memorizzazione nella cache delle partizioni dell’ottimizzazione in fase di linking può consentire alle build incrementali di riutilizzare le parti non modificate del codice HIP per i dispositivi. L’azienda avverte gli sviluppatori che passano da ROCm 10.0 di controllare gli script legati alla versione del compilatore: la macro clang_major ora restituisce 24.

L’aggiornamento modifica anche librerie e strumenti. MIGraphX passa da rocMLIR a rocMLIRTriton come compilatore di backend; rocSPARSE aggiunge la risoluzione di sistemi triangolari per matrici in formato ELLPACK. Separatamente, la funzionalità di riproduzione dei kernel del profiler di ROCm è in beta, mentre il supporto per Windows Subsystem for Linux 2 entra nella fase di anteprima tecnologica e consente ai pacchetti ROCm di funzionare all’interno di un sistema Linux guest usando il driver dell’host Windows.

Le dichiarazioni sulle prestazioni attendono riscontri sui carichi di lavoro

Le nuove componenti di ROCm 10.1 affrontano costi diversi nello sviluppo per GPU: convertire codice basato sui thread, trasferire dati dall’archiviazione, collocare la memoria dell’host e ricompilare progetti di grandi dimensioni. Questa ampiezza rende la versione rilevante anche al di là della nuova libreria di programmazione, in particolare per i team i cui acceleratori trascorrono tempo in attesa dei dati o il cui codice non è stato trasferito a HIP.

L’annuncio di AMD non pubblica misurazioni delle prestazioni di hipThreads né quantifica quanto il nuovo percorso I/O migliori la velocità di trasferimento. Gli sviluppatori dovranno verificare se i loro specifici carichi di lavoro basati sui thread della CPU si prestino all’esecuzione su GPU e se la riduzione dei passaggi intermedi dei dati e del traffico NUMA faccia la differenza per i loro sistemi.

Fonti

Esplora

Altri articoli