I am having severe performance issues when running my code* on STM32F1-based microcontrollers, loosing about two orders of magnitude in many test suite benchmarks (e.g. context switch performance). My configuration files mcuconf.h and halconf.h are almost identical to the RT-STM32F103RB-NUCLEO64 demo (I only enabled RTC and SPI), but my chconf.h file differs significantly. However, even if I modify the demo to match my configuration, I was unable to reproduce the issue.
I assume there must be something odd going on in my code, but I have no idea what that could be. Moreover, when running the same code on STM32F4/L4/G0 platforms, I have no such issues at all. Do you have any ideas, how/where I should investigate my code further? I am quite puzzled and rather lost
I am grateful for any advice!
Thank you in advance
Thomas
* I invite you to check my code yourself: https://gitlab.ub.uni-bielefeld.de/AMiRo/AMiRo-OS
Just clone the main or ChibiOS_21.11.x branch, run the setup.sh script (initialize project) and build any module via the Makefile right from the root directory. Access the shell via a serial terminal (baudrate 115200) and run the "kernel:test" command.