La guida di programmazione CUDA afferma chesignificato della larghezza di banda in CUDA e perché è importante
"larghezza di banda è uno dei più importanti fattori di gating per le prestazioni. Quasi tutte le modifiche al codice devono essere effettuate nel contesto di come influenzano la larghezza di banda. "
Si passa a calcolare la larghezza di banda teorica che è nell'ordine di centinaia di gigabyte al secondo. Sono in perdita sul motivo per cui quanti byte si possono leggere/scrivere sulla memoria globale è un riflesso di quanto sia ottimizzato un kernel.
Se ho un kernel che esegue calcoli intensivi su dati memorizzati in memoria condivisa e/o registri, con solo una lettura singola all'inizio e scrivi alla fine da e verso la memoria globale, sicuramente l'effettiva larghezza di banda sarà piccolo, mentre il kernel stesso può essere molto efficiente.
Qualcuno potrebbe spiegare ulteriormente la larghezza di banda in questo contesto?
Grazie