Runtime System

Efficient Middleware

Typical abstraction layers in modern embedded automotive software.

Middleware is an important building block in modern system architecture. It provides complex services like scheduling of tasks and communication in-between them. App­li­ca­tions typically use it exclusively and do not directly bind to the operating system. In automotive, one example of a standardized middleware interface is the AUTOSAR™ Adaptive Platform.

We helped our customer to make their middleware implementation more efficient. They provided simplified test setups that included typical use cases. We analyzed the middleware and optimized the code base, especially we reduced the number of expensive OS calls and synchronization primitives to the necessary minimum. This way, we provided the customer a 2× speedup in their typical use cases. Atop that, we helped our customer to formulate guidelines for their product on how to use it most efficiently.

Quick facts

Hardware:

  • CPU: Arm® Cortex®-A72

Operating System:

  • Blackberry® QNX®

Compiler:

  • Blackberry QNX compiler (GCC-based)

Summary of our results:

  • Analysis and optimization of middleware
  • Reduced number of OS calls and synchronization primitives to necessary minimum
  • 2× speedup in provided evaluation application
  • Guidelines for customer usage to further increase efficiency
All referenced product or service names and trademarks are the property of their respective owners.