Hi, expert
Do GPU have any restrictions of input size of texture, like length or bandh must be multiple of 64 pixel?
Regards
Zekun
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Zekun,
Texture's can be different sizes, they don't need to be a multiple of 64 pixels. But you will get better performance when the length is a multiple of 2. What usecase are you trying? If you have a specific example, we can test it out.
Regards,
Erick
Hi Erick
Customer test this function in with different input.
EGLImageKHR appEglWindowCreateIMG(app_egl_obj_t *obj, app_egl_tex_prop_t *prop)
RTOS SDK 8.5
J721S2
Crop_w:
4 failed
8 failed
16 failed
32 failed
64 succeed
800 failed
768 succeed
Here is the failed log:
Regards
Zekun
Zekun,
We will need to investigate this limitation.
Does the customer need a particular resolution?
One limitation I am aware of is the need for 64-bit alignment for the memory. This might be the reason resolutions that are not multiples of 64 are not supported, the driver implementation will not do padding.
Does this answer your question?
Regards,
Erick
Hi, Erick
Thanks, I will try to explain to customer.
Further more, 64 bit alignment requirement for GPU or DMA?
Regards
Zekun
Hi, Erick
Customer test on 8.0, if not align with 64 bit, it will failed.
But on SDK 8.4, if will succeed without alignment of 64 bits.
GPU had a upgrade from 8.0 to 8.4, so is it related to GPU?
Customer want to know if this need is mandatory or it is just for high performance. If for high performance, is there any way to avoid this requirement?
Regards
Zekun
Zekun,
This should not have been the case before as well, I'm surprised the behavior changed. The GPU driver version did change between those two releases (1.13 vs 1.15 DDK).
As I understand, it is mandatory because going lower will be going smaller than the GPU cache line size, which can cause other issues in the driver. So please stick to using 64-bit alignment or higher.
Thanks,
Erick