Forum Rule: Always post complete source code & details to reproduce any issue!
-
-
Senior Member+
Nice, Is the PSRAM access speed setup changed from 88 MHz to 132MHz? If that is a bottleneck it might be some easy help to performance.
link here : Teensy-4-1-PSRAM-Random-Access-Latency
-
Thanks for the tip. I'll certainly have a look at that!
-

Originally Posted by
defragster
Thanks for that! I didn't notice a huge speed improvement by changing the psram clock.
However it got me thinking about my other memory.
The emulator core malloc'd ram and vram on the heap which I remembered is in the slower RAM region. I replaced these to use DTCM memory and got a small but notible improvement 😊
-
Senior Member+

Originally Posted by
Ryzee119
Thanks for that! I didn't notice a huge speed improvement by changing the psram clock.
However it got me thinking about my other memory.
The emulator core malloc'd ram and vram on the heap which I remembered is in the slower RAM region. I replaced these to use DTCM memory and got a small but notible improvement
Faster QSPI speed can't hurt when used (if chips likes it) ... indeed lower DTCM RAM runs at CPU speed, upper malloc/DMAMEM runs at CPU/4 so that can make a big difference when it doesn't run through the full speed 32KB cache.
How much code is in ITCM? KurtE has a current Win imxrt-size.exe that shows in build - and there is a MEM func in the FrankB powerButton lib on github. Minding that 32KB block usage and moving code to FLASH resident could free up another 32KB of DTCM for use. Also the first 32KB of FLASH code should run from code cache at full speed.
-

Originally Posted by
defragster
Faster QSPI speed can't hurt when used (if chips likes it) ... indeed lower DTCM RAM runs at CPU speed, upper malloc/DMAMEM runs at CPU/4 so that can make a big difference when it doesn't run through the full speed 32KB cache.
How much code is in ITCM? KurtE has a current Win imxrt-size.exe that shows in build - and there is a MEM func in the FrankB powerButton lib on github. Minding that 32KB block usage and moving code to FLASH resident could free up another 32KB of DTCM for use. Also the first 32KB of FLASH code should run from code cache at full speed.
This is how it's currently sitting. Wasnt aware of this neat program:
FlexRAM section ITCM+DTCM = 512 KB
Config : aaaaabff (DDDDDDDDDDDIIIII)
ITCM : 143432 B (87.54% of 160 KB)
DTCM : 279232 B (77.47% of 352 KB)
Available for Stack: 81216
OCRAM: 512KB
DMAMEM: 170656 B (32.55% of 512 KB)
Available for Heap: 353632 B (67.45% of 512 KB)
Flash: 352280 B ( 4.33% of 7936 KB)
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules