How to profile ESP32 application performance?

sshydlovskyi
Posts: 6
Joined: Wed Aug 14, 2019 9:02 am

How to profile ESP32 application performance?

Postby sshydlovskyi » Fri Sep 27, 2019 7:10 pm

Hi!

Currently, we use ESP32-LyraT v4.3 for our project. There's a configuration option, CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS, that can print some performance information, but it only goes to big tasks, like main and idle.

Is there any option to get at least that information for separate functions?
I assume that everything from ESP-IDF environment works correctly and I want to know which of my own code functions takes most of the time and try to optimize them.

I know that there's also JTAG interface connection possibility, but can I get on without it?

Thanks.

ESP_Dazz
Posts: 308
Joined: Fri Jun 02, 2017 6:50 am

Re: How to profile ESP32 application performance?

Postby ESP_Dazz » Thu Oct 10, 2019 3:23 am

Take a look at the Gcov Guide and Gcov Exmaple. It should be able to profile any functions of your choosing, but it requires JTAG.

username
Posts: 477
Joined: Thu May 03, 2018 1:18 pm

Re: How to profile ESP32 application performance?

Postby username » Thu Oct 10, 2019 12:10 pm

There's a configuration option, CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS, that can print some performance information, but it only goes to big tasks, like main and idle.
Not true, it goes for all tasks. I have been working on a "Htop" clone like thing.. Hope to post it soon.
Its based on the example here.
https://github.com/espressif/esp-idf/tr ... time_stats

Annotation 2019-10-02 072646.jpg
Annotation 2019-10-02 072646.jpg (63.79 KiB) Viewed 5228 times

Who is online

Users browsing this forum: Google [Bot], StanInexeon and 124 guests