cancel
Showing results for 
Search instead for 
Did you mean: 

OpenCL

sandyandr
Adept I

Wrong image2d coordinates (bug?)

For more than 6 years I didn't touched my old unfinished (but partly working) project. Yesterday I tried it again (on the same old hardware - HD7970), but found it doesn't work at all. I tried to "debug" it and found out, that it can't work on the last Radeon drivers (tried both Adrenaline 21.5.2 and Pro 21.Q1.2). The deeper investigation snown a weird behaviour of read_imageui: when it takes int2 coordinates (for __read_only image2d_t), it returns pixel data, that was stored not at x but at x * 2 (strange though, when x == 1, it correctly returns from coordinate 1). The image was created with CL_MEM_READ_ONLY | CL_MEM_USE_PERSISTENT_MEM_AMD using this parameters:

imageFormat.image_channel_data_type = CL_UNSIGNED_INT8;
imageFormat.image_channel_order = CL_RGBA;
imageDesc.image_type = CL_MEM_OBJECT_IMAGE2D;

All attempts to work around this problem gave nothing. However, CL_MEM_OBJECT_IMAGE1D and CL_MEM_OBJECT_IMAGE3D give out data properly, so I was forced to use the last one istead of CL_MEM_OBJECT_IMAGE2D.

Please, fix it. Windows 10 Pro 21H1.

0 Likes
2 Replies
dipak
Big Boss

Hi @sandyandr ,

HD7970 is a very old card and it is no longer supported by the latest graphics drivers. As mentioned here , it has been moved to a legacy support model and no additional driver release is planned for this graphics product.

Please try the latest graphics drivers with a compatible product to see if the issue is reproducible. 

Thanks.

0 Likes

I know, and for this reason, it is all the more strange to see new weird bugs in a supposedly finished, polished and "should-be-perfect" software. By the way, yesterday I tried the fresh (!) 22.6.1 driver for my old card and ... there is the same bug, unfortunately. Anyway, it's time to think about a replacement, sure - it will be forthcoming RX7950, I suppose.

0 Likes