1
CUDA中较旧的texture references仅支持1,2和4通道纹理(例如,我会将RGB颜色填充到RGBA)。新的CUDA texture object支持3通道纹理吗?CUDA纹理对象支持3通道纹理吗?
(我目前无法使用新版nVidia卡进行试用,文档开始让我的眼睛流血寻找答案)。
CUDA中较旧的texture references仅支持1,2和4通道纹理(例如,我会将RGB颜色填充到RGBA)。新的CUDA texture object支持3通道纹理吗?CUDA纹理对象支持3通道纹理吗?
(我目前无法使用新版nVidia卡进行试用,文档开始让我的眼睛流血寻找答案)。
在texture memory的一般描述,其适用于纹理参考和纹理的物体,它指出:
的纹理对象或纹理参考规定了:
...
纹素类型,限于基本整数和单精度浮点类型以及任何1,2和4分量矢量类型定义于
char
,short
,int
,long
,longlong
,float
,double
,它们是从基本整数和单精度浮点型派生而来的。
因此,不支持3分量矢量类型,即使使用纹理对象也不支持。
感谢您的发现 - 必须是2件事的力量!在我的情况下,从那时起,我需要把所有的RGB值填充到RGBA值 – wcochran
可能有一些聪明的技巧,如[这里]描述的(https://devtalk.nvidia.com/default/topic/481747/cuda-programming-and-performance/is-texture-60-float3-3-62-possible-cudaerrorinvalidchanneldescriptor/post/4933251 /#4933251)从3通道图像纹理,但不知道您的实际数据存储格式和需要,很难说。 –