我需要使用nvcc从命令行编译cuda .cu文件。该文件是“vectorAdd_kernel.cu”,包含下面的一段代码:从命令行运行nvcc时出现问题
extern "C" __global__ void VecAdd_kernel(const float* A, const float* B, float* C, int N)
{
int i = blockDim.x * blockIdx.x + threadIdx.x;
if (i < N)
C[i] = A[i] + B[i];
}
我用下面的命令(我需要一个.cubin文件):
nvcc --cubin --use-local-env --cl-version 2010 -keep -I "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include" vectorAdd_kernel.cu
编译器创建的文件vectorAdd_kernel.cpp4.ii和vectorAdd_kernel.cpp1.ii然后停止与以下的输出:
C:\Users\Massimo\Desktop\Pluto>nvcc --cubin --use-local-env --cl-version 2010 vectorAdd_kernel.cu -keep -I "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include"
vectorAdd_kernel.cu
vectorAdd_kernel.cu
c:\program files (x86)\microsoft visual studio 10.0\vc\include\codeanalysis\sourceannotations.h(29): error: invalid redeclaration of type name "size_t"
C:/Program Files (x86)/Microsoft Visual Studio 10.0/VC/include\new(51): error: first parameter of allocation function must be of type "size_t"
C:/Program Files (x86)/Microsoft Visual Studio 10.0/VC/include\new(55): error: first parameter of allocation function must be of type "size_t"
能否请你帮我解决这个问题?
干杯,
马西莫
是在.CU文件还有什么?为什么你需要''我的VC /包含路径?为什么你需要'--use-local-env'和'--cl-version'? – harrism