コマンドラインから nvcc を使用して cuda .cu ファイルをコンパイルする必要があります。ファイルは「vectorAdd_kernel.cu」で、次のコードが含まれています。
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## Heading ## "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"
この問題を解決するために私を助けてもらえますか?