MATLAB/Simulinkで設計されたエンジン制御Cコードのマルチコア用自動並列化

Bibliographic Information

Other Title
  • Automatic Parallelization of Designed Engine Control C Codes by MATLAB/Simulink

Search this article

Description

近年の自動車では安全性・快適性・環境適合性が求められ,これらを実現するために自動車制御系のソフトウェアが年々より高度化している.制御の高度化と同時に,これらを実現するソフトウェアをリアルタイムで動作させるために,プロセッサの高速化が必要である.しかし,シングルコアの動作周波数の向上が困難であることから,1コアによる処理性能向上が限界となり,今後の自動車制御系でマルチコアへの移行が進んでいくと考えられる.また,自動車制御系において開発期間の短縮および信頼性の向上のためにMATLAB/Simulinkによるモデルベース設計が普及している.しかし,現時点でこのようなモデルベース設計で自動的にコード生成されるソースコードはマルチコア上で自動的に並列処理できるまでには至っていない.そこで,本論文ではMATLAB/Simulinkによって設計された制御モデルからEmbedded Coderにより自動生成されたエンジン制御Cコードをマルチコア上で動作するための並列化手法を提案する.提案手法を用いて,従来手動ではタスク粒度が細かく並列化が困難であった条件分岐と算術代入文からなるエンジン制御CコードをOSCAR自動並列化コンパイラにて自動並列化した.RP2やV850E2R等の組み込みマルチコア上で実行したところ,2コアで最大1.91倍,4コアで最大3.76倍の性能向上が得られた.

Recently, more safety, comfort and environmental feasibility are required for the automobile. Accordingly, control systems need performance enhancement on microprocessors for real-time software which realize that. However, the improvement of clock frequency has been limited by power consumption and the performance of a single-core processor which controls power has reached the limits. For these factors, multi-core processors will be used for automotive control system. Recently Model-based Design by MATLAB and Simulink has been used for developing automobile systems because of elimination time of development and improvement of reliability. However, auto-generated-code from MATLAB and Simulink has been functioned on only single core processor so far. This paper proposes a parallelization method of engine control C codes for a multi-core processor generated from MATLAB and Simulink using Embedded Coder. The engine control C code which composed of many conditional branches and arithmetic assignment statements and are difficult to parallelize have been parallelized automatically using OSCAR automatic parallel compiler. In this result, it is succeeded to attain performance improvement on RP2 and V850E2R. Maximum 1.9x speedup on two cores and 3.76x speedup on four cores are attained.

Journal

Details 詳細情報について

Report a problem

Back to top