我想了解OpenCL中的image1d_buffer_t
类型。据我所知,这是一张由Buffer
制作的一维图像。相对于不是缓冲区的图像而言,缓冲区图像通常可以大得多(它取决于硬件,但最小尺寸per this page更大)。我是否更正你不能使用采样器的线性插值?我正在寻找here。
那么为什么甚至使用图像而不仅仅是缓冲区?
答案 0 :(得分:0)
是的,您是正确的,您只能使用image1d_buffer_t
类型的无采样器读取函数,因此无法使用线性插值或边缘处理功能。
这是一个小小的便利,但是当使用图像读/写功能时,您可以更改用于存储像素值的数据类型,而无需更改内核代码。类似地,你有(sampler-less)read_imagef
函数,它将为你(以及相应的write_imagef
函数)规范化像素值。