小编Hon*_*gTu的帖子

如何将内核文件CUDA与主.cpp文件分开

当我在同一个文件mainFunc.cu中使用kernelAdd()函数和main()函数构建代码时,它没问题.

但是当我将kernelAdd.cu文件中的kernelAdd()函数与main.cpp文件中的主文件分开时,它构建了2个错误:

"错误C2065:'添加':未声明的标识符"

和"错误C2059:语法错误:'<'"

我在Visual Studio 2008和Cuda v5.0中构建它们.

我该如何纠正错误?

谢谢!

kernelAdd.cu

__global__ void add(int a, int b, int *c) {
*c = a + b;
}
Run Code Online (Sandbox Code Playgroud)

mainFunc.cpp

#include "cuda_runtime.h"
#include "device_launch_parameters.h"
#include <stdio.h>
#include <conio.h>

int main(void) {

int c;
int *devC;

cudaMalloc((void**) &devC, sizeof(int));
add<<<1,1>>>(2,7,devC);
cudaMemcpy(&c, devC, sizeof(int), cudaMemcpyDeviceToHost);

printf("2+7=%d\n", c);

cudaFree(devC);

getch();
return 0;
}
Run Code Online (Sandbox Code Playgroud)

cuda visual-studio-2008

4
推荐指数
2
解决办法
2087
查看次数

标签 统计

cuda ×1

visual-studio-2008 ×1