Quickly address performance bottlenecks
“We leveraged the capabilities of Mentor Embedded’s Sourcery Analyzer and Sourcery CodeBench tools to bring our advanced lightRadio ™ eNodeB high-capacity application portfolio into market more quickly and efficiently.”
R&D NodeB/eNodeB Software Platform Senior Manager
Efficiently design today's complex embedded systems that include single and multicore CPUs and integrate data from multiple operating systems by taking advantage of an embedded design analysis solution that combines powerful data visualization capabilities with a unique performance analysis engine. With the powerful trace correlation in Sourcery Analyzer you can unlock new insights from the sea of data that modern system architectures generate. With Sourcery Analyzer you can get up and running quickly with pre-built Analysis Agents that provide library of popular and intuitive system analysis routines.
Sourcery Analyzer Overview
See our award-winning Sourcery Analyzer identify and address multicore performance bottlenecks.
“At the heart of Alcatel-Lucent’s R&D effort is ensuring that we deliver to our customers the most reliable, highest-quality and highest-capacity products for their networks. Mentor Embedded’s Sourcery Analyzer technology, combined with ease-of-use and innovative features such as Waveform Calculator and Measurement tools, helps us accomplish that in just days instead of weeks.”
—Pascal Bourrier, Alcatel-Lucent
- Dynamic system analysis views enable visual debug of hard to uncover bugs
- Collect trace data from multiple sources and formats, including LTTng's standard CTF format
- Built-in analysis of LTTng 0.x and 2.0 Linux kernel trace events
- Display synthesized data in a time correlated view
- Advanced computation of data via built-in Waveform Calculator
- Efficiently handle multi-gigabyte datasets
- Support for bare-metal, RTOS and Linux
- Develop custom Java-based application-specific analysis plug-ins
- Jump Start Program enables enterprise deployment and customization
The process & thread view displays when each process came to life and finished, including information about the state it was in.
Provides details on when cores are running, idle or processing.
See how your software works
Whether you are targeting high performance or low power, to improve your system you must first determine where to invest time, and so Sourcery Analyzer collects data from a variety of tracing facilities. First, for Linux® developers, Sourcery Analyzer leverages the popular and efficient LTTng (Linux Trace Toolkit, next generation) tracing system to record system level behavior. Second, for application level tracing, Mentor Embedded Sourcery™ CodeBench compilers are able to automatically instrument function entries and exits. And third, users are provided with a simple facility for manually instrumenting relevant trace points into their application whether running on an OS, a light-weight executive, or running on bare metal.
Far more powerful than printf() or log-files
Sourcery Analyzer allows you to use the popular and comfortable printf() based debug method, but also improves upon it. Applications can be annotated with simple LTTng trace markers, which are automatically tagged with a time stamp and the process or task ID. These statements can still be read as formatted text, but Sourcery Analyzer can also easily search, sort, filter, and visualize this data – much more easily than the inevitable collection of spaghetti scripts that accumulate to parse plain text log files.
Hunt down and kill multicore bugs
Multicore programs introduce new classes of software challenges - race condition, deadlocks, and non-deterministic behavior - which are notoriously difficult to find. With SMP programs, thread interactions can produce different results from one run to another. In these cases the traditional “stop and stare” approach to debugging is no longer applicable.
Underutilization of cores in a multicore system could be considered a bug, too. As your system incorporates more cores, you need to make sure that all the cores are being utilized completely. Sourcery Analyzer allows you visualize which processes are running on each of the cores and understand where core utilization falls below optimum values. Sourcery Analyzer assimilates complex, system level interactions and helps determine the underlying reasons for performance problems.
A built-in trace Measurement Tool allows the user to analyze and measure the system with the help of one of several setups. User inserted cursors measure ranges for the corresponding data.
Convert low-level data into insights
No matter how much data you've collected, Sourcery Analyzer sifts through it quickly to expose the patterns. Start with Sourcery Analyzer's wide variety of built-in analysis logic, which offers one-click access to information such as core utilization, scheduling decisions, memory allocations, and more. Next, dig deeper by using Sourcery Analyzer's unique Waveform Calculator to perform complex computations on numeric fields, such as computing a running total, counts, averages, and standard deviations with a few mouse clicks. Finally, after interactively exploring the data, develop your own analysis plug-ins in Sourcery Analyzer's Java environment to programmatically analyze behavior specific to your unique application
Deploy with confidence with the Jump Start program
Sourcery Analyzer is offered with a Jump Start program to ensure successful adoption of the technology. In addition to delivering the Sourcery Analyzer product, our experts work closely with your engineers to understand available data sources and create data interpretation, analysis, and visualization plugins to properly apply Sourcery Analyzer to your application and analysis needs.