EDGE Profiler
There are times when troubleshooting embedded development is like a black art, where problems occur mysteriously and for no apparent reason. The EDGE Profiler was introduced to demystify these cases by allowing you to see what the underlying OS and application code are doing. In addition, we added performance-measuring capability to the product, allowing you to see what is happening inside the black box.
The EDGE Profiler consists of two software components: an embedded agent running on the target and a GUI-based analysis residing on your host PC. The EDGE Profiler does not require additional hardware like trace buffers or specialized connection modules to run, which also means that it is easily portable across a wide variety of processors.
The EDGE Profiler already knows about the Nucleus OS, and can let you monitor OS status and performance history. By extending the capability to insert user-defined events into application code, developers can get a quantitative measurement of how well their algorithm is tuned. In addition, event capture filters can be set and downloaded to the target without recompiling the code.
Benefits
System OS Analysis
The EDGE Profiler allows you to perform an analysis of OS and application events such as task, interrupts, semaphores, and other system objects while allowing you to measure CPU usage, memory utilization by task, memory leak detection, and detailed timing displays.
User Defined Events
The EDGE Profiler enables users to define custom events and associated attributes by writing simple XML snippets.
Compelling Graphical Representation
The host side of the EDGE Profiler is a plug-in into the Eclipse framework, which gives users a defined image into their displaying events, memory allocations, and insight into the inter-workings of their application.
Nucleus OS Integration
The EDGE Profiler already knows about the Nucleus OS and can let you monitor the status and performance history of all Nucleus systems objects as well as application specific APIs.
Selective Filtering
Filers can selectively capture the events of interest without having to recompile the target application code.
Real-time Display of Collected Data
Users can inspect various values in their application via a graphical representation. The graph updates itself automatically when data is collected.
Broad Processor Support
Broad CPUs are supported enabling support for most mainstream requiring minimum effort from the developer.
EDGE Profiler Features
- TPTP support
- Rich reports utilizing BIRT
- Quickly pin point bottlenecks
- Granular control of elements
- Logging of events
- Searching of logged events
- Inspect attributes of events
- Broad CPU support
- Ethernet communication
- Eclipse plug-in
The EDGE Profiler Memory View shows OS memory allocations and deallocations.
- Blue dots represent match memory pool allocations and deallocations.
- A green dot represents memory pools that have been deallocated without a matching allocation. These areas could represent bad pointers.
- A red dot represents memory pools that have been allocated without a matching deallocation. These dots could be memory leaks.
Figure 2 - EDGE Profiler Tasks View displays OS and user-defined events shown in the order in which they occur.
