说说遇到的一些问题:
1)VS 直接打开文件夹是不能调试运行的,需要先建立一个项目,再将已有代码拷贝至项目所在文件夹下。具体操作见:如何使用vs将现有的项目或者文件夹(尤其是多层目录的)添加到项目中
2)VS项目中一些文件的功能:sln、sdf、vcxproj、vcxproj.filter各是什么文件、.sln文件是做什么的
3)一开我把cuda_by_example文件夹整个导入之后,包含了很多.cu文件进来,调试报错,因为只能有一个main函数,我原以为VS只会运行我指定的那个文件,实际上VS应该是运行整个项目的。
4)julia_gpu.cn源代码需作两处修改:
a. 增加两个头文件:
#include "cuda_runtime.h"
#include "device_launch_parameters.h"
b. 将cuComplex 结构体的构造函数由
cuComplex( float a, float b ) : r(a), i(b) {}
改为
__device__ cuComplex( float a, float b ) : r(a), i(b) {}
5)最后运行的时候报错:找不到glut64.dll,解决:将dll拷贝到生成的exe同级目录
11章multidevice.cu中需要做如下修改才能通过编译:
原:
CUTThread thread = start_thread(routine, &(data[0]) );
改为:
CUTThread thread = start_thread((CUT_THREADROUTINE)routine, &(data[0]) );