eclipse-threadx / threadx

Eclipse ThreadX is an advanced real-time operating system (RTOS) designed specifically for deeply embedded applications.
https://github.com/eclipse-threadx/rtos-docs/blob/main/rtos-docs/threadx/index.md
MIT License
2.8k stars 768 forks source link

Why EPK kit is not supported in ThreadX release 6.3.0? #341

Open leonid-galperin opened 6 months ago

leonid-galperin commented 6 months ago

Describe the bug I'm using ThreadX port for Cortex-R5. I have several tasks in my application and want to measure overall CPU load by means of kindly provided Execution Profile Kit

According to _txapi.h comments (line 618): "For Azure RTOS 6, user shall use TX_EXECUTION_PROFILE_ENABLE instead of TX_ENABLE_EXECUTION_CHANGE_NOTIFY" In fact there is no any use of TX_EXECUTION_PROFILE_ENABLE macros.

On the other hand _tx_threadschedule.s contains lines:

#ifdef TX_ENABLE_EXECUTION_CHANGE_NOTIFY
@
@    /* Call the thread entry function to indicate the thread is executing.  */
@
    BL      _tx_execution_thread_enter      @ Call the thread execution enter function
#endif

Also there is not clear description how to use EPK to measure CPU load

williamelamie commented 5 months ago

I see what you are seeing. It appears that the information in tx_api.h applies to building the C code. It appears that TX_ENABLE_EXECUTION_CHANGE_NOTIFY should be used when building the assembly code. Have you tried that combination yet?