Sono confuso circa la differenza tra l'uso previsto dei puntatori di dispositivo e le strutture cudaArray
. Qualcuno potrebbe spiegare perché userei l'uno contro l'altro? Il mio problema di base è che dopo aver consultato la documentazione e aver letto il libro "CUDA di Example", non capisco l'intento dei progettisti dell'API.cudaArray vs. puntatore del dispositivo
Da quello che ho visto, sembra che cudaArray
debba essere usato per trame e puntatori dovrebbero essere usati per accedere direttamente alla memoria. Sembra anche che le trame 3D possano essere create solo usando uno cudaArray
. Tutte le trame dovrebbero essere allocate usando cudaArray
? Numerosi esempi sembrano non farlo. Inoltre, perché esiste una funzione cudaMallocArray
e cudaMallocArray3D
, ma non equivalente per cudaMallocArray2D
? Al contrario, c'è un cudaBindTexture
e cudaBindTexture2D
, ma non cudaBindTexture3D
?