贡献者: 待更新
cudaMemcpyToSymbol() 的第一个变量不能是非指针,atomicAdd() 找不到函数或 argument 不匹配,等.另外调试的时候并不能 host 和 device 一起调试,只能调试其中一个(用 nsight legacy).所以现在还是用 linux + cuda-gdb 好了,除非以后把这些问题都解决.
<<<>>>, 不过不影响运行.另一个问题是 CUDA 的 include path 需要手动添加 $(VC_IncludePath);$(WindowsSDK_IncludePath) . 第三个问题是多个 .cu 文件的工程需要重启 Visual Studio 才能编译成功.
https://docs.microsoft.com/en-us/visualstudio/productinfo/installing-an-earlier-release-of-vs2017 安装了最老的 15.4.5 (这里备份一下,免得以后下不了)
<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 里面的步骤创建新工程).