Workflow enables Simulink models to run on many-core processors
Model-Based Retargeting to Many-Core CPS: Simulink-to-OpenCL Workflow
Software Engineering
Summary
Many engineers use Simulink to design control systems, but making these designs run efficiently on advanced many-core processors is hard and usually requires rewriting code. The authors present a method that automatically converts Simulink models into code that runs on many-core devices using OpenCL, preserving the original workflow. They tested this approach on a complex trajectory planner and showed it works on a real many-core processor. This method helps save time and effort when adapting models to new hardware.
What this means in practice
- •For embedded system engineers: Translate existing Simulink CPS applications to run on many-core processors without manual recoding by using this automated conversion workflow.
- •For robotics developers: Deploy computationally intensive trajectory planning software designed in Simulink efficiently onto many-core processors using the toolchain demonstrated.
Authors
Ryuga Chiba, Hiroshi Fujimoto, Takuya Azumi
Abstract
This paper addresses the software portability gap between Model-Based Development (MBD) and advanced many-core execution for Cyber-Physical Systems (CPS). We present a workflow-preserving retargeting approach for Simulink-based CPS applications with candidate-wise data parallelism to OpenCL-based many-core processors. Rather than manually rewriting models for new platforms, our toolchain uses MathWorks GPU Coder to extract data-parallel CUDA code, which is then translated into OpenCL host and device code via a custom framework. The conversion handles syntax rewriting, API emulation, and platform-specific argument packing. We deployed this workflow for a computationally intensive Frenet-frame trajectory planner on the Kalray MPPA Coolidge2. The results demonstrate the feasibility of a workflow-preserving retargeting pipeline for the evaluated CPS workload and platform.