STM32F7508-DK + LVGL + AzureRtos

Hi all,
Based on the code off the,

i have setup a template for the STM32F7508 board.
It can be found here :

I have unexpected low performance (low framerate, high cpu usage, not smooth animation) comparing to STM32F746 board, and i can’t figure why ?
I have both card here, both at 200 mhz, DMA2D disable (it doesn’t build on stm32f750, i disable it for fair comparison)

The stm32f7508 run code from qspi, and all data are place in sdram. All cache (icache,dcache and ART) are enable.

On the “Montly Target” for example, it run at about 30fps with >90% cpu usage on stm32f750
and 33fps 15-25% cpu on stm32f746.

Any help to improve the template “performance” will be appreciate.

Have you enabled O3 optimization?

yes -o3

Is there any chance that you can run a profiler?

On Stm32f7508, on monthly target (85% cpu, 28-33 fps) i have this

On Stm32f746 Monthly target.

I have setup the stm32f746 to execute the code from the qspi flash, and i have the same performance degradation than the stm32f7508.

Ah, it should explain it. External flash is much slower :frowning:

I think there are things to do in order to improve performance,touchgfx demo run way better than lvgl on the same board (and it’s also XIP from QSPI flash).

Note that, you are not comparing the same demos. You can do a lot of things with TouchGFX, but as far as I know its rendering engine is quite limited. E.g. you cannot render rounded rectangles with it, but mainly just blending images.