This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

regd. Profiling on DM6446

If we are using TI's profiling tool, what is the over head of functional call and who takes the over head (caller or callee function)?

 

  • EDIT: Note this is assuming you are profiling the C64x+.

    If you mean from a debug/profiling overhead standpoint than the overhead would vary based on the speed of your host PC and the emulator, the overhead is due to a breakpoint at the branch between the function calls so the overhead would be in between, the overhead for the breakpoint is of course not included in the profiling data output, however it will slow down the system from a real time perspective.

    If you mean from a functional overhead of the actual code outside of the profiling than the overhead will vary from function to function depending on what the callee uses (in regards to registers and such) and system conditions (if the function is in slower external memory for example). Though I have been unable to find where this is discussed in documentation, looking at the disassembly it appears that the caller does a minimal amount of state saving and that the callee saves most of the state of the registers onto the stack, so I would say that the majority of the overhead is in the callee.