CW PA: How is target initialization manages during performace analysis

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

CW PA: How is target initialization manages during performace analysis

Jump to solution
787 Views
aloishahn
Contributor III

Hi,

 

when I prepare for a performace analysis I have to setup a proper Analyses Profile.

What I am wondering about.

In the Connection Tab I just specify the jtag debuggers connection (CodeWarrior TAP with Ethernet IP in my case), but no further target settings, like target initialization.

 

Does the Profiling Session sit on top of an actual Debug Session? So that it takes/uses the current Debug Session's Connection and Target settings?

 

Actually I want to make sure that my target initialization for cache enable an dynamic branch predication ist applied during performance analyses.

 

I use CW for PA 10.4 with an T2080RDB target.

 

regards

Alois

Labels (1)
0 Kudos
1 Solution
652 Views
catalindemergia
Contributor IV

Hi,

I assume you want to profile a specific application. The way to do this is to start the application in

debug (and you specify the target initialization file in the debug configuration). After download, the code

will be stopped at main(). In this moment start you profile configuration and then resume the target.

If you just run your profile configuration without starting an application first, you can do it, I just tried on

my 2080 setup, but you will not get valid data.

regards,

Catalin

View solution in original post

0 Kudos
4 Replies
653 Views
catalindemergia
Contributor IV

Hi,

I assume you want to profile a specific application. The way to do this is to start the application in

debug (and you specify the target initialization file in the debug configuration). After download, the code

will be stopped at main(). In this moment start you profile configuration and then resume the target.

If you just run your profile configuration without starting an application first, you can do it, I just tried on

my 2080 setup, but you will not get valid data.

regards,

Catalin

0 Kudos
652 Views
aloishahn
Contributor III

Hi Cataline,

now I tried simple bareboard example, as generated by the wizard (t2080rdb, 32bit, C Code).

The example works fine in the debugger.

At main() I run a profiling session, with same CPU profiling (Branch miss Ratio, Interrupt Count, Data Cache Operations).

Unfortunately I receive all zero results all the time.

Even when adding loops with memory access and cache enabled, still all profiling registers are zero.

Have you any advice or some kind of working example to compare with?

regards

Alois

this is my profiling setup

T2080_Profiling_Setup.png

0 Kudos
650 Views
addiyi
NXP Employee
NXP Employee

Please take a look on the attached examples. Let us know if you need more information.

Adrian

650 Views
aloishahn
Contributor III

Hi Adrian,

thank you for the examples, they are very usefull.

My starting questions/issue has been solved in the meantime as well.

It was due to a misunderstanding from my side, about how the profiling sessions would start a debugging session.

Actually the profiling sessions does not care for starting/running the application code. It requires a target which is in run state already.

So in that context the question about target initialization for profiling does not make sense.

Alois

0 Kudos