Data plane applications performance optimization solutions
Our Bare Metal Performance Tools optimize the performance of your multicore, packet processing applications by profiling and debugging code running on bare metal cores.
Optimizing and maximizing hardware performance in IP packet processing applications on multicore processors is a significant challenge. Most software tools focus only on debugging of applications in development, failing to address the big questions regarding the performance and optimal core utilization of data plane processing applications.
Our Bare Metal Performance Tools solve this problem by providing robust, low overhead runtime profiling and logging support, visualized by our Optima graphical debugging tools. This allows you to analyze and visualize runtime hardware constraints, so that your data-intensive applications reach their highest potential.
- Designed for high performance bare metal applications like packet processing
- Profile source code
- Profile application events and statistics
- Full logging support
- No impact on normal performance (on/off)
- Post-mortem log retrieval and analysis
- Intuitive 2D-3D performance profiling views
- Tight integration with semiconductor vendor SDKs
- Java and Eclipse-based host interface
The Enea Bare Metal Performance Tools provide a unique combination of ultra-lightweight runtime libraries and agents that collect profiling and logging information about your multicore application. This data is transported via Enea’s high performance interprocess communications software to the host to be saved for later review. Or outputed in real-time to our graphical analysis and debugging tool, Enea Optima.
Both source code and application profiling options are available to developers. Source code profiling provides visibility into constraints such as pipeline stalls, TLB misses, and cache misses that are inhibiting performance by matching hardware events/counters to the source code at any level of the application function call tree. Application or system level profiling, to measure behavior of applications via statistics or event counters, is also available.
Logging and log analysis are essential tools in developing and improving the quality of complex, multicore applications. Software bugs are often found after a crash where post-mortem analysis can be critical. Utilizing Enea Bare Metal Performance Tools’s advanced logging, filtering, exploration and post processing facilities can result in better system availability, fewer dropped packets, and overall software quality improvements.
FEATURES AND BENEFITS
- Ensures maximum performance for multicore, bare metal applications
- No impact on normal performance (on/off)
- Aids in locating and fixing difficult to find bugs and performance problems
- Provides visibility into “black box” system execution
- Correlate hardware counters with source code at function or line level
- Highly granular visibility into overall CPU utilization of any function or line of code
- User-defined statistics against which applications are profiled
- System-wide logging framework, including post mortem support
- Collect, filter, correlate and visualize data from multiple log sources
- Log visualization - synchronized Gantt charts, textual browsers, plot views, state-charts, sequence charts
- Intra-core, inter-core, inter-device process communications software is available to application
- Industry-standard Eclipse-based host tools
Reference material
Whitepapers