I have a rk3399 based board.
Can I drive a 4K screen ?
My code looks like :
while(1) {
// update small part of my texture , eg 16 lines of a texture .
// texture is big : 8292 x 2160
glTexSubImage2D
// update texture uv cord.
// draw two triangle to blit from texture to screen .
glDraw ( )
eglSwapBuffers
}
The Mali GPU in that device has a maximum renderable surface resolution of 16Kx16K, so the GPU can handle 4K no problem.
However, the maximum output display resolution isn't anything to do with the Mali GPU in that device; the display controller hardware is a different part of the design separate from the GPU. In principle that chipset can support 4K over HDMI 1.2 or DisplayPort, but your board will still need to provide the relevant physical interface support, and not all of them do.
Thank you ,Peter!
I use rk3399 drive a 4K monitor through displayport .
The screen is ok ,But when I do this:
1) update part ,16 line of 8K*2160 texture .
2) Blit 4k texture pixel to pixel onto screen . This looks like backgroud move from right to left in video game like SuperMario.
3) flip and loop next frame
I can't do this in 60fps .
Can you give me some suggestion ? What is wrong ? me or Mali-T860 ?
That device has a 4 core GPU, so assuming a GPU frequency of ~500MHz (I'm not sure what frequency it does use), you don't get a huge amount of performance per pixel at 4K60.
(500*4) / (3840*2160*60) = 4 shader cycles per pixel best case
It's also worth noting that in many systems the window system will also be using the GPU for composition, so the GPU is shared across both the applications that are running and the compositor.
Without seeing exactly what you are doing it's hard to provide more specific advice.