with the tengo setup requiere puedo pes para jugar juegos instalar correr compatible directx cuda gpgpu directx-11

the - this file requires a graphics device compatible with directx 11



¿Debo crear aplicaciones CUDA ahora o esperar a DirectX 11? (4)

Desde el punto de vista del aprendizaje, creo que se beneficiaría al comenzar con CUDA ahora, ya que le ayudará mucho a pensar en el paralelismo de datos, que es en lo que las GPU son buenas. Luego, cuando / si recurres a DirectX 11, tienes una buena base para trabajar con él, pero depende del tipo de tiempo que tengas disponible (es decir, si tienes tiempo para experimentar cosas solo para la experiencia de aprendizaje).

Alternativamente, las personas mac están presionando para que OpenCL (Open Compute Language) sea la solución general, aunque no se sabe mucho en este punto. Esta es otra tecnología que puede esperar y verificar.

La conferencia de Microsoft PDC se llevará a cabo a fines de este mes, quizás anuncien cierta información útil sobre DX11 para ayudarlo a tomar una decisión.

Mi consejo general es que creo que hay mucho que aprender ahora que podrás utilizar más adelante (con DX11 o OpenCL), pero que debes preguntarte si estás dispuesto a aprender alguna tecnología que podría no funcionar. a largo plazo. De todos modos, estos son solo mis pensamientos, todavía no tengo una gran cantidad de experiencia con CUDA.

En una nota altamente especulativa, mi intuición es que las API como CUDA no sobrevivirán por mucho tiempo y que DirectX y / o OpenCL son las únicas soluciones que tienen futuro (a menos que realmente fallen sus implementaciones, lo que dudo).

Con Windows 7 probablemente en RTM el próximo mes de octubre (y DirectX 11 con él), ¿valdría la pena esperar las características GPGPU explícitas de DirectX 11, lo que significa que será multiplataforma (ATI / Nvidia, no Windows / Linux / Mac / Lo que sea) ; o debería crear una aplicación CUDA ahora?


Desde mi experiencia, el salto más importante de la programación de procesadores de propósito general a la programación de GPGPU son los saltos conceptuales. La clave aquí es el código paralelo de datos.

Incluso en un entorno de subprocesos múltiples en una CPU, cada subproceso está haciendo lo suyo en un nivel bajo, y la sincronización entre subprocesos es una ocurrencia relativamente rara. Para usar la potencia de una GPGPU, debe ejecutar miles de subprocesos que lógicamente ejecutan las mismas instrucciones, en diferentes datos, casi completamente sincronizados.

Aprender la sintaxis de CUDA es relativamente rápido en comparación con conocer el paradigma paralelo de datos, por lo que si tiene la intención de prepararse para la programación de GPGPU, comenzar con CUDA ahora sería una medida que vale la pena.


Si quieres la experiencia de aprendizaje, ¡adelante!

Otra alternativa es el SDK de transmisión de AMD / ATI que puede descargar aquí: http://ati.amd.com/technology/streamcomputing/sdkdwnld.html

nVidia''s Cuda y ATI''s CAL son aproximadamente equivalentes en características. Cuda solo funciona en nVidia gpus y CAL solo funciona en ATI gpus.

Eventualmente, habrá buenas herramientas de desarrollo multiplataforma, pero eso es un gran vacío en este momento. Los sombreadores de cómputo DirectX 11 y OpenCL lucharán por ser la herramienta de elección, pero ninguno está disponible todavía.

Si desea construir una aplicación "real", y no solo una experiencia de aprendizaje desechable, y desea que funcione multiplataforma, existen algunas alternativas: Brook, por ejemplo. Además, la gente ha estado haciendo gpgpu con DirectX y OpenGL (no con OpenCL) durante varios años, sin esperar las características explícitas de GPGPU. Vaya a gpgpu.org para ver los indicadores


Tanto DirectX 11 Compute Shaders como OpenCL se basan principalmente en CUDA, por lo que definitivamente vale la pena comenzar a trabajar con CUDA ahora. Básicamente, todos usan el mismo modelo de memoria y tienen una sintaxis similar, que está más cerca de CUDA que de Brook + (que usarías con Stream SDK).

Sin embargo, si desea DX11, no hay necesidad de esperar, solo tome el SDK de noviembre de 2008 de Microsoft que viene con una vista previa DX11, que ya puede usar para escribir (al menos) aplicaciones simples de sombreado de cómputo.