Hi,
I've just noticed that texture lookups using samplerExternalOES (as specified in the OES_EGL_image_external extension) seem to come with a performance impact on Mali-400, at least if the instruction counts reported by Mali Offline Compiler are correct.
While a texture2D sampler lookup takes 1 cycle, the Mali Offline compiler reports the following for a samplerExternalOES access:
Number of instruction words emitted: 5Number of cycles for shortest code path: 2Number of cycles for longest code path: 5
Could someone shed some light on why accessing a samplerExternalOES would be so expensive?
How can I ensure that the fast path is hit (2 cycles)?
Is there a - perhaps less flexible - alternative to OES_EGL_image_external, which would allow for zero-copy textures without this overhead?
Could the cycle counts just be misreported by the Mali Offline Compiler?