Nvidia sta utilizzando l'emulazione software per migliorare le prestazioni del calcolo in virgola mobile a doppia precisione (FP64) nei suoi acceleratori AI per il calcolo ad alte prestazioni (HPC) e le applicazioni scientifiche, secondo Il registro. Questa strategia arriva quando l'azienda presenta le sue GPU Rubin, che forniscono 33 teraFLOPS di prestazioni di picco FP64, una diminuzione di 1 teraFLOP rispetto alla GPU H100. Le librerie CUDA di Nvidia possono raggiungere fino a 200 teraFLOPS di prestazioni della matrice FP64 attraverso l'emulazione software, che rappresenta un aumento di 4,4 volte rispetto alle capacità hardware degli acceleratori Blackwell. Dan Ernst, direttore senior dei prodotti di supercalcolo di Nvidia, ha affermato che la precisione dell'emulazione corrisponde o supera quella dell'hardware tensor core. Tuttavia, Nicholas Malaya, un membro di AMD, ha messo in dubbio l'efficacia dell'FP64 emulato nelle simulazioni scientifiche fisiche rispetto ai benchmark. L'FP64 rimane fondamentale per il calcolo scientifico grazie alla sua gamma dinamica, in grado di esprimere oltre 18,44 quintilioni di valori unici, in contrasto con i 256 valori unici dell'8° PQ utilizzati nei modelli di intelligenza artificiale. Secondo Malaya, le simulazioni HPC, a differenza dei carichi di lavoro AI, richiedono un’elevata precisione per prevenire la propagazione degli errori che possono portare all’instabilità del sistema. Il concetto di utilizzare tipi di dati a precisione inferiore per emulare FP64 risale alla metà del XX secolo. All'inizio del 2024, i ricercatori degli istituti di tecnologia di Tokyo e Shibaura hanno pubblicato un documento in cui dimostrava che le operazioni della matrice FP64 potevano essere scomposte in più operazioni INT8 sui tensor core di Nvidia, ottenendo prestazioni superiori a quelle native. Questo metodo, noto come schema Ozaki, costituisce la base per le librerie di emulazione FP64 di Nvidia, rilasciate alla fine dello scorso anno. Ernst ha confermato che il calcolo emulato mantiene la precisione FP64, differendo solo nel metodo di esecuzione hardware. Le GPU moderne sono dotate di tensor core a bassa precisione, come quelli di Rubin, che offrono 35 petaFLOPS di calcolo denso FP4. Questi core sono oltre 1.000 volte più veloci dei componenti specifici di FP64. Ernst ha spiegato che l'efficienza di questi core a bassa precisione ha portato a esplorarne l'uso per l'emulazione FP64, in linea con la tendenza storica nel supercalcolo di sfruttare l'hardware disponibile. AMD ha espresso riserve riguardo all'accuratezza dell'emulazione FP64. Malaya ha osservato che l’approccio funziona bene per sistemi numerici ben condizionati, come i parametri di riferimento High Performance Linpack (HPL), ma può vacillare in sistemi meno condizionati presenti nella scienza dei materiali o nei codici di combustione. Ha anche sottolineato che gli algoritmi di Nvidia per l'emulazione FP64 non sono completamente conformi IEEE, non riuscendo a tenere conto di sfumature come zeri positivi rispetto a zeri negativi o errori “non un numero”. Queste discrepanze possono portare alla propagazione di piccoli errori che influiscono sui risultati finali. Malaya ha aggiunto che lo schema Ozaki raddoppia approssimativamente il consumo di memoria per le matrici FP64. Il prossimo MI430X di AMD migliorerà in modo specifico le prestazioni hardware a doppia e singola precisione utilizzando la sua architettura chiplet. Ernst ha riconosciuto alcune limitazioni, ma ha sostenuto che questioni come gli zeri positivi/negativi non sono fondamentali per la maggior parte dei professionisti dell’HPC. Nvidia ha sviluppato algoritmi supplementari per rilevare e mitigare problemi come i non numeri e i numeri infiniti. Ha affermato che l'aumento del sovraccarico di memoria è relativo all'operazione, non all'intera applicazione, con matrici tipiche di pochi gigabyte. Ernst ha sostenuto che i problemi di conformità IEEE spesso non si presentano nei casi di moltiplicazione di matrici, specialmente nelle operazioni DGEMM. L'emulazione avvantaggia principalmente un sottoinsieme di applicazioni HPC che si basano su operazioni DGEMM (Dense General Matrix Multiply). Malaya ha stimato che dal 60% al 70% dei carichi di lavoro HPC, in particolare quelli che si basano su FMA vettoriale, vedono poco o nessun beneficio dall’emulazione. Per carichi di lavoro pesanti come la fluidodinamica computazionale, le GPU Rubin di Nvidia devono utilizzare acceleratori vettoriali FP64 più lenti all'interno dei loro core CUDA. Ernst ha ribattuto che i FLOPS teorici non sempre si traducono in prestazioni utilizzabili, in particolare quando la larghezza di banda della memoria funge da collo di bottiglia. Si prevede che Rubin, con 22 TB/s di memoria HBM4, fornirà prestazioni reali più elevate in questi carichi di lavoro nonostante le prestazioni vettoriali FP64 più lente. La fattibilità dell'emulazione FP64 sarà testata non appena i nuovi supercomputer che incorporano le GPU Blackwell e Rubin di Nvidia diventeranno operativi. Gli algoritmi possono migliorare nel tempo data la loro natura basata su software. Malaya ha indicato che AMD sta anche esplorando l'emulazione FP64 su chip come l'MI355X tramite flag software. Ha sottolineato che la conformità IEEE convaliderà l'approccio garantendo la coerenza dei risultati con il silicio dedicato. Malaya ha suggerito che la comunità stabilisca una suite di applicazioni per valutare l'affidabilità dell'emulazione in diversi casi d'uso.





