usar tutorial programar mundo hola ejemplos cuda compiler-errors nvcc

tutorial - ¿Por qué los compiladores intrínsecos de CUDA__fadd_rd etc. no funcionan para mí?



tutorial cuda (1)

El problema se debe (de alguna manera) al incluir encabezados de tiempo de ejecución CUDA en el proyecto.

El compilador NVCC maneja las inclusiones para el tiempo de ejecución de cuda de forma automática, por lo que no es necesario que lo incluya manualmente para compilar. La razón principal por la que agregarías

#include "cuda_runtime.h" #include "device_launch_parameters.h"

a su código es para que su IDE no muestre errores de sintaxis falsos. Por alguna razón, agregar device_launch_parameters.h (de lo que depende cuda_runtime.h ) hará que las funciones de compilación intrínsecas de NVCC para aritmética aparezcan indefinidas.

Entonces la solución: elimine esas dos inclusiones del proyecto cuando quiera compilar.

¿Por qué no puedo usar estos intrínsecos del compilador en CUDA 5.0?

En Visual Studio 2010, con CUDA toolkit 5.0 y Nsight instalado, puedo compilar y ejecutar la mayoría del código CUDA, pero __fadd_ru etc. se informa como indefinido. Este es el código que estoy tratando de compilar.

Editar: parece que los elementos intrínsecos se vuelven indefinidos cuando cualquiera de las siguientes inclusiones se realizan en el mismo proyecto:

#include "cuda_runtime.h" #include "device_launch_parameters.h"