Hi,
I am working on a ARNDALE board which consists of a Mali T604 GPU. I have an application developed with OpenCL which runs fine on this board. The application uses buffer memory. Now I want to use texture memory instead of buffer memory. I changed my host code to use texture memory but when I try to compile the application, I get error mentioning that the compiler cannot recognize the write_image, clCreateImage functions. From the device query I can see that texture memory is supported on this GPU. It seems like the driver does not support it. Could anyone please clarify whether or not Mali T604 and its driver supports texture memory ?
Ps: I contacted Mali 4 days ago but did not receive any clarification from them yet.
P.S, write_imagef and write_imagei are valid functions in the CL 1.1 BIFL, so if you could provide an example kernel which is failing to compile we'd be happy to take a look at it. Although the spec does say this:
write_imagef can only be used with image objects created with image_channel_data_type set to one of the pre-defined packed formats or set to CL_SNORM_INT8, CL_UNORM_INT8, CL_SNORM_INT16, CL_UNORM_INT16, CL_HALF_FLOAT or CL_FLOAT. Appropriate data format conversion will be done to convert channel data from a floating-point value to actual data format in which the channels are stored.
write_imagei can only be used with image objects created with image_channel_data_type set to one of the following values: CL_SIGNED_INT8, CL_SIGNED_INT16 and CL_SIGNED_INT32.
Unsure what the "pre-defined packed formats" are offhand for write_imagef, but write_imagei definitely won't work with CL_UNSIGNED_INT16 according to the spec.
Thanks,
Chris