Product Details Supplier Info More products

Enea has launched a tools solution for ‘bare metal’ multicore implementations on the Netlogic Microsystems XLP multi-core processor, called the Enea Bare Metal Performance Tools (Enea BMP Tools).

The term ‘bare metal’ refers to multicore applications whereby a given processor core executes a function or application without any sort of multitasking executive – usually a simple control loop that runs in an OS-free environment for minimal overhead and maximum processing bandwidth.

Enea Bare Metal Performance Tools consists of an Eclipse-based host tools suite called Enea Optima, a set of runtime libraries and agents for data collection, and an IPC mechanism called Enea Linx for transport of the collected profiling and logging data to the Optima host tool, or to an external file for later analysis.

The Enea Bare Metal Performance Tools solution is designed as an extension to Netlogic Microsystems’ SDK so that all characteristics of the SDK’s software build, boot/load and bare metal execution environment (NetOS) performance are maintained.

Enea Bare Metal Performance Tools focus on the two most useful types of runtime tools that can aid developers for performance optimisation: performance profiling and logging.

Profiling helps developers optimise a slow performing application by visualising runtime hardware constraints caused by the non-optimised source code.

Enea Bare Metal Performance Tools provide two types of performance profiling visualisation tools.

Source Code Profiling identifies at the source code level where constraints such as pipeline stalls, TLB misses and cache misses are causing sub-optimal performance by matching these hardware events/counters to the source code at any level of the application function call tree, even down to individual lines of code in any given function.

This includes overall CPU utilisation of any function or line of code.

Bare Metal Performance Tools offer complete user configuration control of all Netlogic Microsystems’ XLP multi-core processor hardware counters.

Application Profiling creates and analyses application software level statistics with the purpose of profiling the applications overall performance and behaviour.

Such statistics could be idle time, throughput statistics, extraneous hardware events or any other user-defined statistics that make sense for the application.

Logging refers to the ability of the user to insert notifications of interesting events in the application software.

Logs are suitable tools for finding and correcting bugs and otherwise identify faulty behaviour in an application, even after a software crash, thereby increasing the quality of the software and ultimately enhancing the end-user experience.

In Enea’s Bare Metal Performance Tools, both text and binary information may be collected in a single circular buffer that may be extracted either continuously or by discreet command.

Log data may be forwarded directly to the host Optima tools suite for analysis or to an external termination point (file system) for later analysis.

Log data may also be extracted ‘post mortem’ after a crash to help debug the cause of the crash.

The logging facility in Enea Bare Metal Performance Tools may be employed in both development and in operational deployment for field debugging and troubleshooting.

According to Enea, providing some sort of host tool for display of profiling and logging data is easy, while presenting the information in an accessible manner so that the user does not have to view and analyse the data manually is more difficult.

Current profiling and logging tools for bare metal applications often present the information in simple text views.

Enea Optima goes one step further with 2D-3D performance profiling views and its graphical log analysis views with time-sequenced fusion of logs with filtering and display via log source, log type, or even individual log data entries from multiple cores in a multicore device or even multiple multicore devices.

With Optima, developers can quickly visualise and find the serious issues or problems in the system and not ‘hunt’ for them.

Further plans for development of the Enea Bare Metal Performance Tools include integration with the recently announced Enea Linux Platform Builder (ELPB-NE) for Netlogic Microsystems’ multi-core, multi-threaded processors and also with the 6Windgate multicore packet processing software from 6Wind.

The ELPB-NE is a full featured Linux development environment for Netlogic Microsystems’ multi-core, multi-threaded processors that guides the developer from jumpstarting their project into development and through to deployment.

ELPB-NE includes build and configuration of Netlogic Microsystems’ NetOS environment.

Future integration of ELPB-NE with the Bare Metal Performance Tools will include the Bare Metal Performance target side components in the overall build and development framework.

Enea Software

Enea is a global software company delivering customized operating systems solutions for communication-driven products. We are world leaders in the development of software platforms with extreme demands on high-availability and performance, including Linux, RTOS, and middleware. We have offices in Europe, North America and Asia.

For more information please visit or contact us at

Enea Realtime Operating Systems

Optimized for multicore and complex distributed systems, our family of Realtime Operating Systems (RTOS) provides a foundation of portability, scalability and reliability.

The Enea RTOS family shares a high-level programming model and an intuitive API to simplify programming. It consists of two products, each optimized for a specific class of applications:

  •        Enea OSE is a robust, high-performance, RTOS optimized for multicore and distributed, fault-tolerant systems.

  •        Enea OSEck is a compact, multicore DSP-optimized version of ENEA’s full-featured OSE RTOS.

Enea Linux

Enables Realtime and Linux Implementations in Next Generation Networking Infrastructure

Enea Linux is powered by the Yocto Project ( open source configuration and build technology, and contains 120 packages specifically selected for telecom needs. Yocto brings standardized features and tools, and ensures quick access to the latest Board Support Packages (BSPs) for the most common HW architectures.

Enea Linux provides a comprehensive cross-development tool chain and runtime environment for common networking target architectures. It is an integrated, modular, solution, which can be combined with proprietary technologies from us or other sources, depending on the specific use cases and requirements.

Development Tools

Enea offers tools for development, test, integration and maintenance of embedded systems software, ranging from single microcontrollers to large multicore, multiple board, and distributed systems.

Enea Polyhedra In-Memory Database (IMDB) and Polyhedra FlashLite

The Enea Polyhedra products are relational database systems designed for embedded systesm. Both Polyhedra IMDB and Polyhedra FlashLite share the same SQL engine, the same client server architecture and protocols, and both support the hot-standby model for use in high-availability systems.

Polyhedra is designed for high-performance, high-availiblity systems including communications, militaryand industrial automation among others.  Polyhedra software runs in ‘user space’ and does not need any kernel modifications, special privileges or special installation.

Enea LINX Interprocess Communication (IPC)

Enea LINX provides transparent, reliable, high-performance, interprocess communications services that make complex distributed systems easier to conceptualize, model, partition, and scale.

LINX is the only IPC technology that scales from DSPs and microcontrollers to 64-bit CPUs. This is thanks to the use of a direct message-passing model.

Embedded Telecom/Networking and Systems Management Middleware

The Enea Systems Management Middleware delivers the robustness, scalability, efficiency and portability needed to realize the potential of Next Generation Network applications.

Communications Protocols and Services for Distributed Systems

Enea offers a wide range of highly portable telecom protocol stacks for signaling in networks, as well as for fax and data transfer. Signal processing and non-intrusive analysis software are also available.

All Enea Netbricks protocols stacks are compliant with ITU, ETSI, ANSI, IETF, 3GPP, and specifications of many other standards bodies. The protocols are supplied as source code.

Multicore Simplified

The Enea Hypervisor enables system consolidation and greater design freedom by allowing multiple high performance systems on multicore processors.

The Enea Hypervisor is based on OSE micro kernel technology and runs Enea OSE applications at native processor speeds without compromising any real-time critical properties.

It takes as guests Linux Operating System and optionally semiconductor specific executive environments for bare-metal speed packet processing.

Enea Multicore Migration Platform

The Enea Multicore Migration Platform is the answer to how to take an existing unicore based system, and port it to a given multicore device. Either a single device or multiple devices, possibly with multiple OS’s.

We offer a platform approach containing a technical solution, but also offer actual guidance on how to effect a migration of legacy systems into the new multicore world.


Enea Services & Training

With more than 500 Software Engineers, Enea offers expertise across the entire product life cycle, from strategy to support and maintenance, including chip design and software development. Their competence includes M2M, Embedded Linux, Android, Agile Testing, Software Quality, Mobile Applications and DO-178B/DO-254 Certification Services.

Enea has created the Expert Hubs, a virtual meeting point that enables to learn and to share with the professionals. Come on and visit the Android Hub, the Embedded Linux Hub, the M2M hub, the Mobile Appls Hub, the Agile Testing Hub and the Software Quality Hub.

Enea Blog

Enea Linkedin

View full profile