Keil Logo

Technical Support

On-Line Manuals

µVision User's Guide

About µVision User Interface Creating Applications Debugging Start Debugging Start Energy Measurement without Debug Application Program Execution Debug Windows and Dialogs Breakpoints Window Call Stack and Locals Window Code Coverage Command Window Component Viewer Disassembly Window Editor Window Event Recorder Setup Event Recorder Event Recorder Window Events Filtering Event Statistics Window Post-mortem Analysis Event Viewer Execution Profiler Instruction Trace Window System Analyzer Usage tips Save System Analyzer Contents Statistics Restrictions Logic Analyzer Setup Setup in Detail Restrictions Cortex-M Trace Configuration Memory Map Memory Window Performance Analyzer Registers Window Serial Window Debug (printf) Viewer Symbols Window System Viewer Adding System Viewer Windows System and Thread Viewer Thread States Toolbox Trace Data Window Trace Navigation Trace Exceptions Event Counters ULINKplus Window Watch Window Core Peripherals Cortex-M0 and Cortex-M0+ CM0/M0+: Nested Vector Interrupt Controller CM0/M0+: System Control and Configuration CM0/M0+: System Tick Timer Fault Reports (Cortex-M0+ only) Cortex-M3, Cortex-M4, and Cortex-M7 CM3/M4/M7: Nested Vector Interrupt Controller CM3/M4/M7: System Control and Configuration CM3/M4/M7: System Tick Timer CM3/M4/M7: Fault Reports CM3/M4/M7: Memory Protection Unit Cortex-M23/M33/M35P and Cortex-M55 Armv8-M: Nested Vector Interrupt Controller Armv8-M: System Control and Configuration Armv8-M: System Tick Timer Armv8-M: Fault Reports Armv8-M: Memory Protection Unit Armv8-M: Security Attribution Unit M-Profile Vector Extension (MVE) Debug Scripting Expressions Constants System Variables Peripheral Variables I/O Ports Serial Ports Program Variables (Symbols) Fully Qualified Symbols Non-Qualified Symbols Literal Symbols Using Symbols Line Numbers Bit Addresses Type Specifications Memory Attribution Specifiers Operators Differences between µVision and C Expression Examples Code and Data Trace (Cortex-M) Trace Features Configuring Trace Tracepoint Expressions Tracepoint Intrinsics Tracepoint Limitations Tracepoint Marks Tips and Tricks Review Peripherals and CPU Configuration Simulate I/O Ports Simulate Interrupts and Clock Inputs Simulate external I/O Devices Assign Serial I/O to a PC COM Port Check Illegal Memory Access Command Input from File Preset I/O Ports or Memory Contents Write Debug Output to a File Keyboard Shortcuts TPIU Initialization after RESET (Cortex-M) Prevent Opening Files Show Japanese Messages Debug Commands Debug Functions Simulation Flash Programming Dialogs Utilities Command Line Example Programs Appendix

Registers WindowHomeMemory Window Performance Analyzer

Performance Analyzer Button The Performance Analyzer shows execution statistics, like time and number of calls of a function or module.

Note

Statistics are collected for the complete program code. The Performance Analyzer displays the information collected by the Execution Profiler for known address ranges. This means, the list does not include information for address ranges without debug information, such as the floating point library of the ARM RealView toolset.

Results are displayed as bar graphs, along with call and time information. The list sorts itself automatically after a few seconds. Thus, the most time consuming modules or functions are displayed at the top of the list.

Performance Analyzer Example Display

A context menu can be invoked by clicking the right mouse button. This menu offers the possibility to switch between the modules/functions representation of the statistics. Also, the collected statistics can be cleared from here.

Double-click a function name to jump right to the code of that function.

Setup

Reset
Button that clears recorded statistics. Pressing Reset while the target is running could produce inaccurate data. The total Time may not reach 100% in this case. It is recommended to stop the target before resetting the view.
Show {Modules | Functions]
Switch the list of statistics based on the selection.
Module/Function
Lists the name of the module or function.
Calls
Shows how often the module or function was called.
Time(Sec)
Shows the time, in micro-seconds, spent in a module or function.
Time(%)
Shows the time, as a percentage of the total time, spent in a module or function.
  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.