image/svg+xml
Logo Tom's Hardware
  • Hardware
  • Videogiochi
  • Mobile
  • Elettronica
  • EV
  • Scienze
  • B2B
  • Quiz
  • Tom's Hardware Logo
  • Hardware
  • Videogiochi
  • Mobile
  • Elettronica
  • EV
  • Scienze
  • B2B
  • Quiz
  • Forum
  • Sconti & Coupon
Black Friday

Novità!

Prova la nuova modalità di navigazione con le storie!

Accedi a Xenforo
Immagine di AMD Ryzen 5 7500X3D: la 3D V-Cache economica costa troppo? | Test & Recensione AMD Ryzen 5 7500X3D: la 3D V-Cache economica costa troppo? |...
Immagine di Windows 26 riprende l’eredità di Vista e 7, ma con stile Windows 26 riprende l’eredità di Vista e 7, ma con stile...

Le API CUDA

CUDA, il nuovo linguaggio di programmazione per le GPU Nvidia, promette grandi risultati e mostra le schede video sotto una nuova luce. Cerchiamo di capire un po' di più cosa ci riserva CUDA.

Advertisement

Quando acquisti tramite i link sul nostro sito, potremmo guadagnare una commissione di affiliazione. Scopri di più
Avatar di Andrea Ferrario

a cura di Andrea Ferrario

Editor in Chief

Pubblicato il 30/06/2008 alle 11:16 - Aggiornato il 15/03/2015 alle 01:14
  • Nvidia CUDA, GPU all'inizio di una nuova era
  • Nel frattempo
  • Viva la GeForce FX!
  • L'avvento della GPGPU
  • Le API CUDA
  • Alcune definizioni
  • La teoria: CUDA dal punto di vista hardware
  • Pag 2
  • La teoria: CUDA dal punto di vista software
  • In pratica
  • Prestazioni
  • Analisi
  • Conclusioni
  • Intervista
  • Pag 2

Le API CUDA

Ma il successo di Brook era sufficiente per attrarre l'attenzione di ATI ed nVidia, poiché entrambi i produttori intuirono l'incipiente interesse di questa iniziativa come un'opportunità per espandere il loro mercato, raggiungendo un nuovo settore.

I ricercatori impegnati in Brook entrarono nel team di sviluppo di Santa Clara (nVidia), per realizzare una strategia globale. L'idea era di offrire un sistema hardware/software indicato per questo tipo di calcoli. Poiché gli sviluppatori di Nvidia conoscevano tutti i segreti delle loro GPU, non c'era più motivo di affidarsi solo alle API grafiche, che comunicavano con l'hardware solo tramite driver, con tutti i problemi che implicava questo approccio. È qui che il team di sviluppo CUDA (Compute Unified Device Architecture) sviluppò una suite software in grado di comunicare con la GPU, dando vita all'omonimo linguaggio.

Come potete vedere da questo grafico, CUDA offre due API:

  • Un'API di alto livello: la CUDA Runtime API
  • Un'API di basso livello: la CUDA Driver API

Poiché l'API d'alto livello è "sopra" l'API di basso livello, ogni chiamata alla funzione Runtime è divisa in due istruzioni più basilari, gestite dall'API Driver. Queste due API si escludono mutuamente, nel senso che il programmatore deve vederne una o l'altra, ma è impossibile mischiare le funzioni di entrambe. Il termine "API di alto livello", poi, è relativo: l'API Runtime è sempre quella che le persone considerano di livello molto basso, però offre funzioni che sono molto pratiche per l'inizializzazione o il context management. Non aspettatevi qualcosa di semplice però: dovrete conoscere molto bene le GPU Nvidia per lavorarci.

L'API Driver è più complessa, ma ha il vantaggio della flessibilità, che da ai programmatori maggior controllo. Le due API sono in grado di comunicare con funzioni OpenGL e Direct3D (solo nove per il momento). CUDA può quindi servire per generare risorse (geometry, procedural textures, etc), che poi possono essere passate alle API grafiche, o al contrario, è possibile che un'API 3D invii i suoi risultati di rendering a CUDA, che in questo caso può essere usato con scopo di post-processing. Ci sono numerosi esempi di integrazioni, e il vantaggio è che le risorse rimangono immagazzinate nella RAM della GPU, senza dover passare tramite il bus PCI-Express, che farebbe da collo di bottiglia.

Al contrario, dobbiamo puntualizzare che la condivisione di risorse - in questo caso la memoria video - con i dati grafici non è sempre idilliaca, e potrebbero creare alcuni problemi. Per esempio, per cambiare la risoluzione o la profondità dei colori, i dati grafici hanno la priorità, quindi, se le risorse del frame buffer devono essere aumentate, il driver non esiterà a prendere le risorse allocate da un'applicazione che usa CUDA, creando crash di varia natura. Non è molto elegante, certo, ma dobbiamo ammettere che questa situazione non si verificherà molto spesso. Già che stiamo parlando di svantaggi: se volete usare più GPU per un'applicazione CUDA, dovete disabilitare prima di tutto la modalità SLI, altrimenti CUDA vedrà una sola GPU.

Infine, il terzo livello software è il set di librerie - due per essere precisi:

  • CUBLAS, che dispone di una serie di parti fondamentali per i calcoli di algebra lineare;
  • CUFFT, che può calcolare le trasformazioni di Fourier - un algoritmo molto utilizzato nel campo del signal processing.
Leggi altri articoli
  • Nvidia CUDA, GPU all'inizio di una nuova era
  • Nel frattempo
  • Viva la GeForce FX!
  • L'avvento della GPGPU
  • Le API CUDA
  • Alcune definizioni
  • La teoria: CUDA dal punto di vista hardware
  • Pag 2
  • La teoria: CUDA dal punto di vista software
  • In pratica
  • Prestazioni
  • Analisi
  • Conclusioni
  • Intervista
  • Pag 2

👋 Partecipa alla discussione! Scopri le ultime novità che abbiamo riservato per te!

0 Commenti

⚠️ Stai commentando come Ospite . Vuoi accedere?

Invia

Per commentare come utente ospite, clicca quadrati

Cliccati: 0 /

Reset

Questa funzionalità è attualmente in beta, se trovi qualche errore segnalacelo.

Segui questa discussione
Advertisement

Non perdere gli ultimi aggiornamenti

Newsletter Telegram

I più letti di oggi


  • #1
    Lavorare 72 ore a settimana, il nuovo modello che piace a USA e Cina
  • #2
    Scoperti nuovi indizi sulle origini di Homo sapiens
  • #3
    Unieuro non si ferma: le promozioni del Black Friday continuano
  • #4
    Windows 26 riprende l’eredità di Vista e 7, ma con stile
  • #5
    22% di sconto su Amazon con appena 25€ di spesa
  • #6
    Scatta il blocco sui siti porno: cosa succede ora?
Articolo 1 di 5
Windows 26 riprende l’eredità di Vista e 7, ma con stile
Il designer Abdi propone un Windows 26 che recupera l'estetica di Vista e 7 con il Liquid Glass, mentre Microsoft punta su AI e piattaforme agentiche.
Immagine di Windows 26 riprende l’eredità di Vista e 7, ma con stile
9
Leggi questo articolo
Articolo 2 di 5
AMD Ryzen 5 7500X3D: la 3D V-Cache economica costa troppo? | Test & Recensione
L'ultimo nato con 3D V-Cache ha le carte in regola per finire in tutti i PC da gaming entry level, ma dovrà avere il giusto prezzo.
Immagine di AMD Ryzen 5 7500X3D: la 3D V-Cache economica costa troppo? | Test & Recensione
6
Leggi questo articolo
Articolo 3 di 5
La nuova Steam Machine esiste davvero (e non è sola)
Valve annuncia una nuova Steam Machine, ma anche un visore VR standalone Steam Frame e un nuovo controller ibrido.
Immagine di La nuova Steam Machine esiste davvero (e non è sola)
6
Leggi questo articolo
Articolo 4 di 5
AMD Zen 6: la rivoluzione dei 2 nanometri è vicina
Zen 6 segna un passo storico per AMD: architettura a 2 nanometri, prestazioni AI potenziate e continuità sulla piattaforma AM5.
Immagine di AMD Zen 6: la rivoluzione dei 2 nanometri è vicina
5
Leggi questo articolo
Articolo 5 di 5
SteamOS su Arm è un'ottima notizia, non solo per la VR
L'arrivo di SteamOS su architettura Arm grazie al visore Steam Frame segna una svolta importante, dopo anni di supporto esclusivo a x86.
Immagine di SteamOS su Arm è un'ottima notizia, non solo per la VR
10
Leggi questo articolo
Advertisement
Advertisement

Advertisement

Footer
Tom's Hardware Logo

 
Contatti
  • Contattaci
  • Feed RSS
Legale
  • Chi siamo
  • Privacy
  • Cookie
  • Affiliazione Commerciale
Altri link
  • Forum
Il Network 3Labs Network Logo
  • Tom's Hardware
  • SpazioGames
  • CulturaPop
  • Data4Biz
  • TechRadar
  • SosHomeGarden
  • Aibay

Tom's Hardware - Testata giornalistica associata all'USPI Unione Stampa Periodica Italiana, registrata presso il Tribunale di Milano, nr. 285 del 9/9/2013 - Direttore: Andrea Ferrario

3LABS S.R.L. • Via Pietro Paleocapa 1 - Milano (MI) 20121
CF/P.IVA: 04146420965 - REA: MI - 1729249 - Capitale Sociale: 10.000 euro

© 2025 3Labs Srl. Tutti i diritti riservati.