贡献者: addis
cudaMemcpyToSymbol() 的第一个变量不能是非指针,atomicAdd() 找不到函数或 argument 不匹配,等。另外调试的时候并不能 host 和 device 一起调试,只能调试其中一个(用 nsight legacy)。所以现在还是用 Linux + Cuda-gdb 好了,除非以后把这些问题都解决。
<<<>>>, 不过不影响运行。另一个问题是 CUDA 的 include path 需要手动添加 $(VC_IncludePath);$(WindowsSDK_IncludePath) . 第三个问题是多个 .cu 文件的工程需要重启 Visual Studio 才能编译成功。
<stdio.h>. 在 project property 里面找到 VC++ Directories -> Include Directories , 然后复制所有内容。
$(VC_IncludePath);$(WindowsSDK_IncludePath) 然后再打开 project properties 里面的 CUDA C/C++ > common > Additional Include Directories, 把这些内容复制进去即可。
#include <iostream>
#include <stdio.h>
using namespace std;
__global__
void kernel()
{
printf("hello!\n");
}
int main()
{
kernel<<<1,2>>>();
}
C:\ProgramData\NVIDIA Corporation\CUDA Samples\v9.2
math.h), $(VC_IncludePath);$(WindowsSDK_IncludePath) 这两个放到 CUDA >common 里面就绝对够了。如果还不行就说明 VS 没有安装完整,去 controll panel 里面 modify 一下,多添加一些 win10 SDK 什么的。
MatFile_win64 工程和 NR3 工程,用 CUDATest/template/ 中的模板即可(按照 README 里面的步骤创建新工程).