Articles of cuda

puntatori di funzioni del dispositivo

Ho bisogno di una versione del dispositivo del seguente codice host: double (**func)(double x); double func1(double x) { return x+1.; } double func2(double x) { return x+2.; } double func3(double x) { return x+3.; } void test(void) { double x; for(int i=0;i<3;++i){ x=func[i](2.0); printf("%g\n",x); } } int main(void) { func=(double (**)(double))malloc(10*sizeof(double (*)(double))); test(); return 0; […]

In un kernel CUDA, come posso archiviare un array in “memoria thread locale”?

Sto provando a sviluppare un piccolo programma con CUDA, ma poiché era lento ho fatto alcuni test e ho cercato un po ‘su google. Ho scoperto che mentre le singole variabili sono normalmente memorizzate nella memoria del thread locale, di solito le matrici non lo sono. Suppongo sia per questo che ci vuole così tanto […]

Copia dei dati nella struttura dati “cufftComplex”?

Ho i dati memorizzati come matrici di float (precisione singola). Ho una matrice per i miei dati reali e una matrice per i miei dati complessi, che uso come input per FFT. Ho bisogno di copiare questi dati nel tipo di dati cufftComplex se voglio usare la libreria cufft CUDA. Da nVidia: ” cufftComplex è […]

CUBLAS: inversione errata per matrice con pivot zero

A partire da CUDA 5.5, la libreria CUBLAS contiene routine per la fattorizzazione e l’inversione della matrice in batch ( cublasgetrfBatched e cublasgetriBatched rispettivamente). Ottenendo guida dalla documentazione, ho scritto un codice di prova per l’inversione di una matrice N x N usando queste routine. Il codice fornisce l’output corretto solo se la matrice ha […]

Qualche funzione particolare per inizializzare la GPU diversa dalla prima chiamata cudaMalloc?

La prima chiamata di cudaMalloc è lenta (come 0.2 secondi) a causa di alcuni lavori di inizializzazione su GPU. C’è qualche funzione che fa solo l’inizializzazione, in modo che io possa separare il tempo? cudaSetDevice sembra ridurre il tempo a 0,15 secondi, ma continua a non eliminare tutti i sovraccarichi di init.

Come ottenere VS 2010 per riconoscere alcune funzioni CUDA

Al momento CUDA riconosce già una funzione CUDA C / C ++ cudaMalloc come cudaMalloc , cudaFree , cudaEventCreate , ecc. Riconosce anche alcuni tipi come dim3 e cudaEvent_t . Tuttavia, non riconosce altre funzioni e tipi come il modello di trama, le funzioni __syncthreads o la funzione atomicCAS . Tutto si compila bene, ma […]

Il programma CUDA causa l’arresto anomalo del driver nvidia

Il mio programma CUDA per il calcolo del monte carlo pi sta causando il crash del mio driver nvidia quando ho superato circa 500 prove e 256 blocchi completi. Sembra che stia accadendo nella funzione del kernel di monteCarlo. Qualsiasi aiuto è apprezzato. #include #include #include #include #include #define NUM_THREAD 256 #define NUM_BLOCK 256 /////////////////////////////////////////////////////////////////////////////////////////// […]

Impostazione di Intellisense VS 2010 per chiamate al kernel CUDA

Ho appena iniziato la programmazione CUDA e sta andando abbastanza bene, le mie GPU sono riconosciute e tutto il resto. Ho parzialmente impostato Intellisense in Visual Studio utilizzando questa guida estremamente utile qui: http://www.ademiller.com/blogs/tech/2010/10/visual-studio-2010-adding-intellisense-support-for-cuda-c/ e qui: http://www.ademiller.com/blogs/tech/2011/05/visual-studio-2010-and-cuda-easier-with-rc2/ Tuttavia, Intellisense continua a non rispondere alle chiamate del kernel in questo modo: // KernelCall.cu #include #include “cuda.h” […]

OpenCV 2.4.3rc e CUDA 4.2: “Errore OpenCV: nessun supporto GPU”

Ho caricato diversi screenshot in questo album: http://imgur.com/a/w4jHc Sto cercando di far funzionare la GPU in OpenCV in Visual Studio 2008. Sto utilizzando uno dei codici di esempio GPU OpenCV, bgfg_segm.cpp. Tuttavia, quando compilo (senza errori di compilazione) lancia un “OpenCV Error: No GPU suport”. Windows 7, 32 bit Visual Studio 2008 nVidia Quadro 1000M […]

Numero intero a 128 bit su cuda?

Sono appena riuscito a installare il mio cuda SDK sotto Linux Ubuntu 10.04. La mia scheda grafica è una NVIDIA geForce GT 425M, e mi piacerebbe usarla per qualche problema computazionale. Quello che mi chiedo è: c’è un modo per usare un int var a 128 bit senza segno? Usando gcc per eseguire il mio […]