CUDA 10.0 中将核函数参数转换为符号以获取其大小
在 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' 函数的参数 'arg'。'cudaMemcpyToSymbol' 函数将 'arg' 的值复制到 'myKernel_arg' 符号中。然后,'cudaGetSymbolSize' 函数获取 'myKernel_arg' 符号的大小。
原文地址: https://www.cveoy.top/t/topic/nz3N 著作权归作者所有。请勿转载和采集!