我不知道 cuda 不支持引用参数。我的程序中有这两个函数:
__global__ void
ExtractDisparityKernel ( ExtractDisparity& es)
{
es ();
}
__device__ __forceinline__ void
computeAdjacentValue (int x1, int y1, int x2, int y2, float& value )
{ ....
}
给定全局函数,编译器报错:/home/lv/pcl-trunk/gpu/kinfu_large_scale/src/cuda/estimate_combined.cu(959): error: a global routine cannot have reference arguments
我搜索了一些解决方案。有人说不允许。但是设备功能不会报告此类错误。我很困惑 cuda 是否支持参考参数。或者编译器以某种方式被愚弄了。
任何人都可以对这个问题给出完整的答案:允许引用和不允许引用的地方?