^

A holistic approach to embracing the adoption of MCPs

13th March 2025
  • Blog
  • A holistic approach to embracing the adoption of MCPs

Whether on the factory floor, in a medical device, or in an aircraft, real-time critical systems demand quick decision-making processes. They deploy closed-loop control, allowing only a tight time window to gather data, process that data, and update the system. The challenge for developers lies in proving that execution times never exceed their allotted window.

Worst-Case Execution Time analysis is critical in hard real-time systems

Multicore Processors (MCPs) introduce an extra level of complication compared to SCPs in that they genuinely do run multiple processes in parallel. Unlike single processor applications, the task of finding a schedule of X tasks on Y processor cores such that all tasks meet their deadline has no efficient algorithm.

Exacerbating that problem, in multicore processors hardware interference can occur anywhere hardware is shared between processes. For example, often an entire hierarchical memory is shared so that interference is possible in many places. These interference channels cause the execution-time distribution to spread. Instead of a tight peak, the distribution of execution times becomes wide with a long tail.

Outside the realm of safety critical applications, these issues are of little consequence. But where functional safety is paramount, it is critical. Small wonder, then, that the subject often becomes the primary focus of developers faced with the adoption of MCPs

Interference channels make WCET analysis challenging

But the adoption of MCPs impacts the whole development lifecycle.

  • Static analysis can be leveraged to highlight challenging paths in the codebase, providing focus for execution time analysis.
  • Parts of the development process become iterative, heightening the importance of requirements traceability.
  • The removal of possible causes of execution time variability and unpredictability becomes paramount which makes correct data and control coupling analysis (DCCC) and state-of-the-art coding standards checking even more important.
  • Efficient instrumentation techniques that minimise the impact on executing software become doubly important when more processors are active simultaneously.

That is why a holistic approach to the adoption of MCPs and their impact throughout the development life cycle – and the adoption of a tool chain that supports such an approach – will likely yield a better outcome than losing sight of the bigger picture by disproportionately heightening the significance of timing analysis in isolation.

Closing thoughts

Successfully adopting multicore processors (MCPs) in real-time critical systems requires more than just addressing worst-case execution time (WCET) challenges—it demands a holistic, system-wide approach. While interference channels and execution time variability are significant concerns, focusing solely on timing analysis risks overlooking other crucial aspects of development.

By integrating static analysis, iterative development cycles, traceability, and efficient instrumentation, developers can create a more robust foundation for MCP adoption. that aligns with these principles will not only help mitigate timing unpredictability but also enhance overall system reliability and safety.

Ultimately, embracing MCPs is not just about managing interference—it’s about refining the entire development process to ensure efficiency, predictability, and long-term success in real-time critical applications.

More information on the challenges of safely designing hard real-time applications for MCPs and LDRA’s contribution to a solution can be found here:

Blog: A holistic approach to embracing the adoption of MCPs

Blog: Why hardware interference poses a challenge to the adoption of MCPs

Website: Multicore processors and critical embedded systems: WCET, interference research, and other challenges

Website: Worst-Case Execution Time (WCET) and execution time analysis in critical embedded systems

 

About the Author
Mark Pitchford

Mark Pitchford has over 30 years’ experience in software development for engineering applications. He has worked on many significant industrial and commercial projects in development and management, both in the UK and internationally. Since 2001, he has worked with development teams looking to achieve compliant software development in safety and security critical environments, working with standards such as DO-178, IEC 61508, ISO 26262, IIRA and RAMI 4.0.

Mark earned his Bachelor of Science degree at Nottingham Trent University, and he became a Chartered Engineer over 35 years ago. He now works as Technical Specialist with LDRA Software Technology.

FREE 30 Day
TRIAL

Email Us

Email: info@ldra.com

Call Us

EMEA: +44 (0)151 649 9300

USA: +1 (855) 855 5372

INDIA: +91 80 4080 8707

Connect with LDRA