Texas Instruments SPRAA56 appendix

Page 21

SPRAA56

Statistics View. Shows the values for STS objects used by the UTL benchmarking APIs and some TSK-specific STS objects. You may want to change the units of the STS objects to milliseconds. To do this, right-click on the Statistics View and choose Properties. You can change the units and disable/enable STS objects individually. (The IDL_busyObj is used by the CPU Load Graph, you can disable its statistics and the TSK_idle statistics.)

Message Log. Shows output from the LOG_printf and UTL_logDebug APIs. Most benchmarking techniques in this example send output to the Message Log, so this may be the most important RTA window for debugging and benchmarking. Because of the large amount of data sent to this window, you may want to configure the window to automatically move to the end of the log to display the most recent data. To do this, right-click on the Message Log and choose “Automatically scroll to end of buffer”. You can also send log data to a file on the PC. To do this, right-click on the Message Log and select Properties. Then enable and select the file.

CPU Load Graph. Shows the percentage utilization of the DSP core in non-idle tasks.

RTA Control Panel. You may want to lower the update (polling) rate of the real-time windows; this makes the instrumentation less intrusive. Right-click on the RTA control panel and choose Properties. You can change the update rates of various RTA windows, starting from a default rate of 1 second. A rate of 3-5 seconds is recommended.

Execution Graph. (optional) Displays the execution flow of TSKs in the system. This graph can indicate whether TSKs are executing in the correct sequence and not stalling. In an application that is working correctly, the Execution Graph may not be useful. In an application with a run-time error, this graph can help indicate whether the correct execution sequence occurs.

Hint: To better organize a large number of debugging windows on the screen, you may want to float each window in the CCStudio workspace. To do this, right-click on a window, then select “Float in Main Window”.

Note: With the current revision of the 'C64x CPU, real-time analysis can “freeze” and stop updating in real-time. If you experience this problem, see the SDSsq27324 problem report and workaround.

After opening all these windows, CCStudio may look like Figure 6.

DSP/BIOS Real-Time Analysis (RTA) and Debugging Applied to a Video Application

21

Image 21
Contents RTA Techniques for Performance Measurement Modifications to the Base ExampleViewing Benchmarks in the Instrumented Application References Appendix A. Performance ImpactFigures Important Benchmarks for Video ApplicationsSPRAA56 Base Application OverviewTskInput 1 LOG DSP/BIOS and RF5 Components Used2 STS 3 TRC4 UTL Requirements for Viewing RTA Benchmarks Modifications to the Base ExampleAdding the Control TSK and MBX Communication Splitting the Encode and Decode CELLsQuerying the H.263 Encoder for Status TskInputTskO utput Controlling the Frame Rate Measuring Function Execution Time with the UTL Module RTA Techniques for Performance MeasurementMeasuring End-to-End Latencies Measuring Task Scheduling LatenciesMeasuring the Frame Rate Programmatic Measurement of Total CPU Load Memory Bus Utilization 86,400 B 720*480 = 345,600 B14,400 B External memoryBitrate and Frame Type Methods for Transmitting Measured Performance Data Viewing Benchmarks in the Instrumented Application Application-Specific Control via GEL Scripts in CCStudioRequirements Load the h263loopbackrta.out program Running the ApplicationSPRAA56 Interpreting the Benchmarks Expected Values for the STS Objects Expected and Measured STS Benchmarks Expected Values Delivered to the Message Log Debug ModeControlling the Run-Time Parameters Dynamically Expected and Measured Logged BenchmarksCapture and Display Task Benchmarking ReferencesOverhead of Performance Measurement Techniques Appendix A. Performance ImpactRTA Effects on CPU Load Measured Performance of Benchmarking TechniquesMemory Footprint Details Memory FootprintImportant Notice