When using the watch example, if ROTATE_MEM_IN_PSRAM is configured and the allocated size is sufficiently large, defining ROTATE_BG_IMG_VARIABLE as clock_rotate_bg_bg causes stuttering during rotation and scaling, whereas using clock_rotate_bg_bg_small or clock_rotate_bg_bg_tiny does not. The printed address of bg_cache→data is 0x600791a8, which indeed lies within PSRAM. Seeking clarification on this issue.
This is because the resolutions of the three images are different (there are comments after the variables). The lag is probably due to the heavy computation, and since this data is stored in PSRAM, it causes lag. For rotated images, it’s better to place them in SRAM for GPU access.
If hardware acceleration is being used throughout, these three images should not differ significantly, as their sizes aren’t vastly different. However, right now, the CPU usage for the two smaller images is nearly 0, but jumps to a constant 100% on the third image. I suspect there might be a size threshold limitation in hardware acceleration.
How is your CPU usage calculated, and why is it 0 for small images?