>

nvcc -c를 사용하여 내 .cu 파일을 컴파일하려고하면 다음 오류가 발생합니다.

mag_cuda.cu (213) : 오류 : 식에 산술 또는 열거 형이 있어야합니다

여기에 주어진 GPU에 의해 수행 될 함수의 일부인 경우 해당 라인 :

__global__// all kernels are preceded by __global__ keyword
  void sum_all_indv_B(int No_poles, double *B_x, double *B_y, double 
*B_z, double *indv_B[][3])
  {
    // determine thread ID within block
    int index = blockIdx.x * blockDim.x + threadIdx.x;
    // determine stride of loop (more elements in array than threads)
    int stride = blockDim.x * gridDim.x;
    //loop over all the poles
    for(int counter_1 = index; counter_1 < No_poles; counter_1+=stride)
      {
    //sum the B field contribution from all poles in x,y and z directions
    B_x += indv_B[counter_1][0];
    B_y += indv_B[counter_1][1];
    B_z += indv_B[counter_1][2];
        //Divide total by number of Poles
    B_x = B_x/No_poles;
    B_y = B_y/No_poles;
    B_z = B_z/No_poles;
      }
  }

"B_x + = indv_B [counter_1] [0];"에서 오류가 발생했습니다. , "B_x = B_x/No_poles;" 비슷한 줄.

내가 생각하지 않는 아이디어는 무엇이든


  • 이전 optimization - "고 대비"곡선을위한 빠른 공식
  • 다음 compiler construction - LLVM 백엔드를 작성하려고합니다 유용한 튜토리얼이 없습니다