vscode visual tag studio color code closing close brackethighlighter bracket visual-studio-2010 cuda

visual-studio-2010 - visual - vscode autocomplete html tags



Cómo compilar la aplicación CUDA es Visual Studio 2010? (4)

Cómo compilar la aplicación CUDA es Visual Studio 2010?

Estos son mis pasos: 1. Crear proyecto C ++ vacío sin encabezados precompilados 2. Agregar main.cpp

int main() { return 0; }

  1. Añadir kernels.cu

    Me referí al proyecto de ejemplo MAtrixMul y copié su configuración paso a paso. se puede cumplir ahora

#include "cuda.h"

__global__ void VecAdd(float* A, float* B, float* C) { int i = threadId.x; C[i] = A[i] + B[i]; }

  1. Haga clic con el botón derecho en el proyecto -> Personalizaciones de compilación -> Comprobar cuda 3.2
  2. kernels.cu -> propiedades -> compilar con CUDA C / C ++
  3. TRY compilando: obtengo un error:

Error 37 error: esta versión de CUDA Toolkit no es compatible con el compilador v100. Verifique que la propiedad Platform Toolset esté configurada a v90 en el nodo General de las propiedades del proyecto. C: / Archivos de programa (x86) / MSBuild / Microsoft.Cpp / v4.0 / BuildCustomizations / CUDA 3.1.targets 157 4 dfdfs

  1. Cambiar Platform ToolSet a v90
  2. TRY Compilación: obtengo errores:

Error 38 error MSB3721: El comando "" C: / Archivos de programa / NVIDIA GPU Computing Toolkit / CUDA / v3.1 / bin / nvcc.exe "-gencode = arch = compute_10, code = /" sm_10, compute_10 / "- use-local-env --cl-version 2008 -ccbin "C: / Archivos de programa (x86) / Microsoft Visual Studio 9.0 / VC / bin" -I "C: / Archivos de programa / NVIDIA GPU Computing Toolkit / CUDA / v3. 1 / include "-G0 --keep-dir" Debug / "-maxrregcount = 32 --machine 32 --compile -D_NEXUS_DEBUG -g -Xcompiler" / EHsc / nologo / Od / Zi / MDd "-o" Debug / kernels .obj "" E: / Projects! Probing / dfdfs / kernels.cu "" salió con el código 2 . C: / Archivos de programa (x86) / MSBuild / Microsoft.Cpp / v4.0 / BuildCustomizations / CUDA 3.1.targets 272 4 dfdfs

Error 37 error: el identificador "threadId" no está definido E: / Projects! Probing / dfdfs / kernels.cu 5 1 dfdfs

Por favor, salúdame.

Gracias, Ilya


Visual Studio 2010 definitivamente es compatible : asegúrese de utilizar el recientemente lanzado nSight 1.5 (no el beta). No actualicé la pregunta que hice, pero @portland, siguió todos los pasos correctos. Simplemente tiene un error tipográfico en su kernel.

Ha hecho referencia a threadId.x lugar de a threadIdx.x , tenga en cuenta la x.


Sí lo hice, y está funcionando.

  1. Crear proyecto C ++

  2. Proyecto (clic con el botón derecho) -> personalización de compilación Verifica "Compilador de Cuda 3.2" *

  3. Agregue cudart.lib a properties-> linker-> input-> dependencias adicionales

  4. Agregar main.cu -> propiedades Tipo de elemento = CUDA C / C ++ *

  5. Proyecto -> propiedades -> propiedades de configuración -> general -> conjunto de herramientas v90 **

*) aparecerá después de instalar Nvidia Parallel Nsight. Tenga cuidado, necesita controladores especiales para eso, más en la página principal de NSight)

**) necesita instalar visual c ++ 2008 express.

De todos modos, el proyecto de ejemplo todavía debería estar disponible en mi publicación en el foro nvidia . El problema del que me quejo es de drivers desactualizados.


Encontré esta publicación en los foros de cuda en nVidia. Uno de los moderadores dice (09 de noviembre: aún no apoyamos VS2010).

Puede que ya no sea así, pero que su mensaje de error indica que la versión del kit de herramientas CUDA que está utilizando no es compatible con el compilador V100, sugeriría que tal vez necesite actualizar su kit de herramientas CUDA.

Si tiene la última versión, verifique si el kit de herramientas de CUDA aún es compatible con VS2010.

v90 es una forma de referirse al compilador que viene con VS2008, así que supongo que VS2010 es el compilador v100.

Tal vez tenga una suscripción a MSDN y pueda recurrir a VS2008.

Esta publicación SO también parece sugerir que CUDA no es compatible con el compilador VS2010 (¡todavía!)