cancel
Showing results for 
Search instead for 
Did you mean: 

Why does the CPU load factor still change periodically when the page is static, and how can it be further reduced?

Nex-Leo
Associate

这可能是什么原因造成的呢?

NexLeo_0-1738803307443.png

1 ACCEPTED SOLUTION

Accepted Solutions
GaetanGodart
ST Employee

Hello @Nex-Leo and welcome to the community!

 

TouchGFX runs even when the screen is not changing because he needs to check if something has to change.

Multiple things happens, including a check every ticks (usually 60 times per second).
The handleTickEvent function is called, so make sure to keep the code inside of it as efficient as possible.
Perhaps you have some area of the screen that you invalidate even when nothing is changing, so make sure to optimize your invalidated area.
Finally, the MCU load can be drastically reduce by using a graphic accelerator such as NeoChrom or Chrom-ARTbut this is embedded inside your chip (which one are you using?).

 

Regards,

Gaetan Godart
Software engineer at ST (TouchGFX)

View solution in original post

3 REPLIES 3
GaetanGodart
ST Employee

Hello @Nex-Leo and welcome to the community!

 

TouchGFX runs even when the screen is not changing because he needs to check if something has to change.

Multiple things happens, including a check every ticks (usually 60 times per second).
The handleTickEvent function is called, so make sure to keep the code inside of it as efficient as possible.
Perhaps you have some area of the screen that you invalidate even when nothing is changing, so make sure to optimize your invalidated area.
Finally, the MCU load can be drastically reduce by using a graphic accelerator such as NeoChrom or Chrom-ARTbut this is embedded inside your chip (which one are you using?).

 

Regards,

Gaetan Godart
Software engineer at ST (TouchGFX)

Hello, @GaetanGodart:

Thank you for your reply, by optimising the invalid operation it does work. Another problem is that I am using STM32U5 chip and when I enable the DMA2D function, the CPU load doesn't decrease, even some slight increase amount.

Regards.

Hello @Nex-Leo ,

 

I am glad it helped you!

Are you using TouchGFX? By default, DMA2D is enable, can you quickly run me through how you enable or disable it? I do not see why enabling DMA2D would increase CPU load, are you sure of your measurements? Does it happens on different UIs?

 

Regards,

Gaetan Godart
Software engineer at ST (TouchGFX)