我在分块是这么写的,其中width是图像的宽度,height是图像的高
dim3 dimBlock(16,16,1);
dim3 dimGrid((width+dimBlock.x-1)/dimBlock.x,(height+dimBlock.y-1)/dimBlock.y,1);
为什么这么编会报错,让我参考其声明
LZ您好:
这个目测是可以的,请您提供更多报错信息以便判断。
祝您好运~
就是我在调用内核函数SquaresKernel<<<dimGrid,dimBlock>>>(dev_Icols,dev_colorM,width,height,dev_dest);的时候总是说<<<dimGrid,dimBlock>>>应输入表达式,底下有红色的波浪线
就是我在调用内核函数SquaresKernel<<<dimGrid,dimBlock>>>(dev_Icols,dev_colorM,width,height,dev_dest);的时候总是说<<<dimGrid,dimBlock>>>应输入表达式,底下有红色的波浪线
楼主您好,
(1)如果是VS的intelligent sense提示您, exptected expression之类的在<<<>>>下面,请无视这个。
(2)如果是编译报错,提示:语法错误在’<'上,请右键单击您的.cu文件,改成CUDA C/C++类型。
(3)如果是提示dim3没有定义,您需要右键点击您的.cu,改成CUDA C/C++类型。
应该没有其他情况了。
如果您认为我说的都不对,请发送全部代码。谢谢。
谢谢您,我找到错误的出处了,修改的时候没传入height,导致了错误
这。。。楼主给出一个表达式之前,至少应该先保证里面用到的变量都是存在的,然后再询问问题吧。。。。
不过还是恭喜楼主解决了。