在CUDA 10.0中,可以使用cudaMemcpyToSymbol函数将核函数的参数复制到符号中。然后,可以使用cudaGetSymbolSize函数获取符号的大小。

例如,假设有一个名为myKernel的核函数,其中有一个参数arg,可以按以下方式将其复制到符号中:

__global__ void myKernel(int arg) {
  // ...
}

int main() {
  int arg = 42;
  cudaMemcpyToSymbol(myKernel_arg, &arg, sizeof(int));
  size_t symbolSize;
  cudaGetSymbolSize(&symbolSize, myKernel_arg);
  // ...
}

在上面的示例中,myKernel_arg是一个符号,它表示myKernel函数的参数argcudaMemcpyToSymbol函数将arg的值复制到myKernel_arg符号中。然后,cudaGetSymbolSize函数获取myKernel_arg符号的大小

cuda100中怎样将核函数的参数argsi转为symbol才可以作为参数传给cudaGetSymbolSize

原文地址: https://www.cveoy.top/t/topic/cO63 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录