Articles of gpu

AMD equivalente a NvOptimusEnablement

Para las configuraciones Intel + NVIDIA de doble GPU “Optimus”, una aplicación puede exportar NvOptimusEnablement como se explica en OptimusRenderingPolicies.pdf . Esta opción permite que una aplicación garantice el uso de la GPU discreta de alta velocidad sin necesidad de actualizaciones de perfil o interacción del usuario, que generalmente se desea para ciertas clases de […]

OpenCV 2.4.3rc y CUDA 4.2: “Error de OpenCV: sin compatibilidad con GPU”

He subido varias capturas de pantalla en este álbum: http://imgur.com/a/w4jHc Estoy tratando de ejecutar GPU en OpenCV en Visual Studio 2008. Estoy ejecutando uno de los códigos de ejemplo de la GPU de OpenCV, bgfg_segm.cpp. Sin embargo, cuando compilo (sin errores de comstackción) arroja un “Error de OpenCV: No soporte GPU”. Windows 7, 32 bits […]

uso básico multi-GPU

¿Cómo puedo usar dos dispositivos para mejorar, por ejemplo, el rendimiento del siguiente código (sum de vectores)? ¿Es posible usar más dispositivos “al mismo tiempo”? En caso afirmativo, ¿cómo puedo gestionar las asignaciones de los vectores en la memoria global de los diferentes dispositivos? #include #include #include #include #include #define NB 32 #define NT 500 […]

¿Cómo puedo implementar una función atómica personalizada que involucre varias variables?

Me gustaría implementar esta función atómica en CUDA: __device__ float lowest; // global var __device__ int lowIdx; // global var float realNum; // thread reg var int index; // thread reg var if(realNum < lowest) { lowest= realNum; // the new lowest lowIdx= index; // update the 'low' index } No creo que pueda hacer […]

nvidia-smi Explicación de utilización de la GPU volátil?

Sé que nvidia-smi -l 1 dará el uso de la GPU cada segundo (similar al siguiente). Sin embargo, agradecería una explicación sobre lo que realmente significa Volatile GPU-Util . ¿Es esa la cantidad de SMs usados ​​sobre el SM total, o la ocupación, o alguna otra cosa? +—————————————————————————–+ | NVIDIA-SMI 367.48 Driver Version: 367.48 | […]

Pasar la función de host como un puntero de función en la función __global__ O __device__ en CUDA

Actualmente estoy desarrollando una versión de GPU de una función de CPU (por ejemplo, función Calc (int a, int b, doble * c, souble * d, CalcInvFunction GetInv)), en la que una función de host pasa como un puntero de función (por ejemplo, arriba) ejemplo GetInv es la función de host del tipo CalcInvFunction). Mi […]

CUDA cómo obtener cuadrícula, bloque, tamaño de hilo y parallalizar cálculo de matriz no cuadrada

Soy nuevo en CUDA y necesito ayuda para entender algunas cosas. Necesito ayuda para paralelizar estos dos bucles. Específicamente, cómo configurar el dimBlock y dimGrid para hacer que esta ejecución sea más rápida. Sé que esto parece el ejemplo de agregar vectores en el SDK, pero ese ejemplo es solo para matrices cuadradas y cuando […]

Cómo medir el tiempo de kernel interno en NVIDIA CUDA?

Quiero medir el núcleo interno del tiempo de la GPU, ¿cómo medirlo en NVIDIA CUDA? p.ej __global__ void kernelSample() { some code here get start time some code here get stop time some code here }

Emulador de GPU para progtwigción CUDA sin el hardware

Pregunta: ¿Existe un emulador para una tarjeta Geforce que me permita progtwigr y probar CUDA sin tener el hardware real? Información: Estoy buscando acelerar algunas simulaciones mías en CUDA, pero mi problema es que no siempre estoy cerca de mi escritorio para hacer este desarrollo. Me gustaría hacer algo de trabajo en mi netbook, pero […]

enviando matriz 3D al kernel de CUDA

Tomé el código proporcionado como respuesta para ¿Cómo puedo agregar dos matrices 2d (lanzadas) usando bucles nesteds? e intenté usarlo para 3D en lugar de 2D y también cambié otras partes ligeramente, ahora se ve de la siguiente manera: __global__ void doSmth(int*** a) { for(int i=0; i<2; i++) for(int j=0; j<2; j++) for(int k=0; k<2; […]