モデルベース並列化 - s8764fb6234f9c41a.jimcontent.com · 化コード検証)...
Post on 15-Sep-2020
3 Views
Preview:
TRANSCRIPT
1Parallel & Distributed Systems Lab.
モデルベース並列化(Lab. URL: https://www.pdsl.jp/)
2018年11月
名古屋大学大学院情報学研究科
枝廣・本田研究室(お問い合わせは eda@ertl.jp 枝廣へ)
デモ動画2018: https://youtu.be/X3dpnmVj4Zk
2Parallel & Distributed Systems Lab.
アウトライン
• モデルベース開発(MBD)とクロスレイヤ設計
• クロスレイヤ設計に必要な技術
• 付録:組込みマルチコアコンソーシアムについて
3Parallel & Distributed Systems Lab.
モデルベース開発(MBD)
MATLAB/Simulink
1.数理モデル化
2.制御器の数理モデル設計(シミュレーションベース)
3.実装コード化
制御
制御対象(プラント)
制御器(コントローラ)
4Parallel & Distributed Systems Lab.
MBDの現状(レイヤード設計)
マルチ・メニーコア・ターゲットプラットフォーム上
実装設計
制御モデル設計(数式・アルゴリ
ズム設計)
モデル(シミュレーション可能な仕様)
5Parallel & Distributed Systems Lab.
MBDレイヤード設計:マルチコア化の課題(1)
マルチ・メニーコア・ターゲットプラットフォーム上実装設計(コードレベル並列化)
制御モデル設計(数式・アルゴリ
ズム設計)
モデル(シミュレーション可能な仕様)
別会社別部門
ターゲットプラットフォーム上での性能・並列動作未考慮性能未達時にモデル(=仕様)変更困難
6Parallel & Distributed Systems Lab.
MBDレイヤード設計:マルチコア化の課題(2)
マルチ・メニーコア・ターゲットプラットフォーム上実装設計(並列化コード検証)
制御モデル設計(数式・アルゴリ
ズム設計)
モデル(シミュレーション可能な仕様)
現在の設計手法
マルチコア化で実行順序の自由度が大幅増大。入出力値検査においてシミュレー
ション時間が大幅増加
7Parallel & Distributed Systems Lab.
MBDにおけるクロスレイヤ設計とは
ターゲット情報を利用しながら制御設計をおこない、その結果を用いて実装する協調設計手法
8Parallel & Distributed Systems Lab.
クロスレイヤ設計 手順とメリット
1. ハードウェア抽象化記述SHIMを用い、ターゲット情報を抽象化し、モデルレベルで利用可能にする
2. モデルベース並列化(MBP)により、ターゲット情報を用いてモデルレベルで自動並列化設計・検証、ターゲット向け並列化コード生成
3. 並列性能・動作をモデルにフィードバックし、並列動作を意識した制御設計を支援
• メリット– 協調設計による設計収束時間短縮– 上流での並列動作設計による検証容易化– 次世代ターゲット向け制御アルゴリズム開発加速
9Parallel & Distributed Systems Lab.
事例
モデルベース開発からTOPPERS搭載システムへのクロスレイヤ自動設計を利用したマルチコアモータ制御実装
~第7回TOPPERS活用アイデア・アプリケーション開発コンテスト 銅賞
~ 組込みシステムシンポジウム2017優秀ポスター賞
デモ動画: https://youtu.be/eszVE9wc__c
10Parallel & Distributed Systems Lab.
システム全体イメージ
• PS3コントローラで操作
• RH850/F1H(デュアルコア)を利用
• TOPPERS/ATK2-SC1-MC上で動作
• ブラシレスモータ制御はクロスレイヤ設計手法によってモデルから自動生成された並列タスクで実行
11Parallel & Distributed Systems Lab.
ハードウェア
F1Hボード(HSBRH850F1H176)
Bluetoothモジュール(SBDBT5V)
ブラシレスモータサーボモータ組込用小型
モータドライバボード
ボディ(ヘッドライト,ブレーキランプ,ブザー等が搭載)
本体PS3コントローラ
12Parallel & Distributed Systems Lab.
ブラシレスモータ制御モデル
• クロスレイヤ設計手法を用いて,制御設計および自動並列化したモデル10ms周期ブロック
※色分けはコア割当を表す
ベースレート : 100us
13Parallel & Distributed Systems Lab.
並列コードの性能評価
• 出力比較
シミュレーション結果 実際の結果
14Parallel & Distributed Systems Lab.
並列性能比較
• 実行時間
• 100us周期タスク 1.62倍• 100us周期タスク + 10ms周期タスク 1.82倍
15Parallel & Distributed Systems Lab.
アウトライン
• モデルベース開発(MBD)とクロスレイヤ設計
• クロスレイヤ設計に必要な技術
• 付録:組込みマルチコアコンソーシアムについて
16Parallel & Distributed Systems Lab.
クロスレイヤ設計に必要な技術
• 性能見積
– ハードウェア抽象化記述SHIMにより処理時間見積
• Simulinkブロックのコアマッピング
– 負荷分散,通信最小化を意識したコア割当を自動算出
• 並列コード生成
– コア割当をもとに並列実行可能なコードを自動生成
• 並列動作検証
– デッドロック,読み書き順序逆転等の並列動作による問題発生を検出
• 可視化
– コア割当をモデルに反映させ,更なる高並列制御設計につなげる
17Parallel & Distributed Systems Lab.
クロスレイヤ設計に必要な技術
• 性能見積
– ハードウェア抽象化記述SHIMにより処理時間見積
• Simulinkブロックのコアマッピング
– 負荷分散,通信最小化を意識したコア割当を自動算出
• 並列コード生成
– コア割当をもとに並列実行可能なコードを自動生成
• 並列動作検証
– デッドロック,読み書き順序逆転等の並列動作による問題発生を検出
• 可視化
– コア割当をモデルに反映させ,更なる高並列制御設計につなげる
SHIMとはSoftware-Hardware Interface for Multi-many-core• 多様なマルチコアチップを抽象化したXML記述
– コア種類・数、メモリ配置、アドレスマップ、通信、コア→メモリ性能情報等が、数百ページの説明書を読まずとも、機械的に読める
– 性能情報の例︓コアAからメモリ番地Xにアクセスしたときの(best, typ, worst)レイテンシ(右下図参照)
– ツール群、OS等がSHIM対応することにより、多様なマルチコアチップを共通的に扱えるようにすることが⽬的
SHIM仕様書 http://www.multicore-association.org/workgroup/shim.phpOpen SHIM Github https://github.com/openshim/shim
18
コア→メモリ性能情報SHIM記述例
SHIM対応ツール群並列化⽀援
システム解析 ・・・
SHIM対応マルチコアOS
マルチコアチップ
国際標準化
仕様検討SHIM WG
SHIMコア、メモリ、性能情報
SHIMのユースケースとメリット
• マルチコアにおけるアプリケーション実⾏性能⾒積• マルチコア選定時のアプリケーション実⾏性能⽐較• 異なるマルチコアへのアプリケーション移植の際の性能⾒積• 複数マルチコアをターゲットとしたソフトウェア部品開発• 特定アプリケーション向けに特化したマルチコアを企画する際の性
能評価• マルチコア向け開発⽀援を⾏う各種ツールの開発コスト低減と
SHIM対応ツールエコシステム
19
• システム性能⾒積• ハードウェアモデリング/
複数HWの対応• ツールコンフィギュレー
ション
20Parallel & Distributed Systems Lab.
SHIM見積精度評価実験
353.3
155.32
332.03
1141.67
0
200
400
600
800
1000
1200
実機 ALL BEST 提案手法 ALL WORST
Fibonacci
5381.76
2601.81
5493.42
14182.1
0
2000
4000
6000
8000
10000
12000
14000
16000
実機 ALL BEST 提案手法 ALL WORST
モータ制御
4.53E+063.67E+06
5.23E+06
1.24E+07
0.00E+00
2.00E+06
4.00E+06
6.00E+06
8.00E+06
1.00E+07
1.20E+07
1.40E+07
実機 ALL BEST 提案手法 ALL WORST
Dhrystone
誤差率 : -6.02%
誤差率 : 2.07%
誤差率 : 15.41%
Cyc
le
Cyc
leC
ycle
提案手法:メモリアクセス比率を用い、best, worst値から計算
実機と比較して平均絶対誤差 7.83%
上流工程としては精度の高い見積
誤差の要因
・未計測の命令が存在(擬似命令)
・標準ライブラリの考慮 など
21Parallel & Distributed Systems Lab.
SHIMulator
• SHIMのアーキテクチャ情報、性能情報を使って動作するISS(命令レベルシミュレータ)
• 動的見積、静的見積の双方に利用可能
LLVMフロントエンド
SHIMLLVM-IRシミュレータ
LLVM-IR
性能見積
モデルから
自動生成した汎用Cコード
メモリアクセスログ・カバレッジ結果
汎用PC上で動作
入力データセットが課題
22Parallel & Distributed Systems Lab.
ターゲットSHIMLLVM-IRコードプラントモ
デル制御
モデル
モーターPID制御モデル
SHIMulator
MATLAB/Simulink
TCPIP通信
ライブラリ
プラントモデル
TCPIP通信
ライブラリ
SHIMulator PILSプログラム
モーターPID制御モデルに対するSHIMulator PILSの実行
SHIMulator PILSデモ動画をご覧ください
入力データセットの課題をMATLAB/Simulinkとの連携により解決
23Parallel & Distributed Systems Lab.
クロスレイヤ設計に必要な技術
• 性能見積もり
– ハードウェア抽象化記述SHIMにより処理時間見積
• Simulinkブロックのコアマッピング
– 負荷分散,通信最小化を意識したコア割当を自動算出
• 並列コード生成
– コア割当をもとに並列実行可能なコードを自動生成
• 並列動作検証
– デッドロック,読み書き順序逆転等の並列動作による問題発生を検出
• 可視化
– コア割当をモデルに反映させ,更なる高並列制御設計につなげる
24Parallel & Distributed Systems Lab.
モデルベース並列化
• Simulinkブロックレベルでの並列化– 新規開発アルゴリズム:二重階層クラスタリング法
• eSOL社から製品化– https://www.esol.co.jp/embedded/mbp.html
25Parallel & Distributed Systems Lab.
Renesas RH850マルチコアPILSとの連携
RH850 マルチコア・モデルベース開発環境紹介動画https://www.youtube.com/embed/hVZz244-NZE
Renesas社 “RH850 マルチコア・モデルベース開発環境“ より引用https://www.renesas.com/mbd-rh850-multicore
26Parallel & Distributed Systems Lab.
性能情報等フィードバック
モデルベース並列化(MBP)設計検証フロー
Simulink
ハードウェア抽象化記述SHIM
ブロックレベル実装中間言語/コード生成/ユーザ作成コード
BLXML&BL-GRAPH
並行動作振る舞い検証
性能等実測
コアへのブロック配置
コード生成可能モデル
ブロックレベル構造情報
並列化コード生成
並行モデル生成 (CSP生成ツール)
性能見積
実装最適化ループ
制御モデル設計ループ
デモ動画をご覧ください
27Parallel & Distributed Systems Lab.
4コア配置の例
28Parallel & Distributed Systems Lab.
コア割当の色分け表示
29Parallel & Distributed Systems Lab.
実験結果(1)
• 4種のデータ(パワートレイン制御)
– DATA1 (143ブロック)
– DATA2 (502ブロック)
– DATA3 (2158ブロック)
– DATA4 (177ブロック)
• 2コアと4コアで実験
• 3種のアルゴリズム
– 高速化クリティカルパス法(高速化CP)
– 階層クラスタリング法 (hMETIS)
– 二重階層クラスタリング法(提案手法)
30Parallel & Distributed Systems Lab.
実験結果(2)
• 提案手法により10~30%性能向上
• 計算時間は、すべて1秒未満
2コア配置 4コア配置
0
0.5
1
1.5
2
2.5
3
DATA1 DATA2 DATA3 DATA4 DATA1 DATA2 DATA3 DATA4
各手法の比較(性能向上)
高速化CP hMETIS 提案手法
31Parallel & Distributed Systems Lab.
実験結果(3)
• Karp-Flattの指標(実行時間中の逐次動作率)
– 高速化CP法と比べ29%~95%減少
– 階層クラスタリング法と比べ4%~80%減少
2コア配置 4コア配置
0
10
20
30
40
50
60
70
80
90
DATA1 DATA2 DATA3 DATA4 DATA1 DATA2 DATA3 DATA4
実行時間中の逐次動作率[%]
高速化CP hMETIS 提案手法
45%減
72%減
51%減
95%減 56%減 29%減
37%減
45%減
32Parallel & Distributed Systems Lab.
ツール実行時間
• 前記実験データでは1秒未満
• 約10,000ブロックで10秒
• 約24,000ブロックで18秒
33Parallel & Distributed Systems Lab.
クロスレイヤ設計に必要な技術
• 性能見積もり
– ハードウェア抽象化記述SHIMにより処理時間見積
• コアマッピング
– 負荷分散,通信最小化を意識したコア割当を自動算出
• 並列コード生成
– コア割当をもとに並列実行可能なコードを自動生成
• 並列動作検証
– デッドロック,読み書き順序逆転等の並列動作による問題発生を検出(CSPによるモデル検査、産総研と共同研究)
• 可視化
– コア割当をモデルに反映させ,更なる高並列制御設計につなげる
34Parallel & Distributed Systems Lab.
並列化コードに対する課題
• 並列・並行実行により、タイミングに関する自由度が指数関数的に増大
タスク1(DataStore)
タスク2(DataStore)
タスク3(DataStore)
コア1 コア2 コア3
デッドロック? 読み書き順序逆転?
35Parallel & Distributed Systems Lab.
自動コード生成ツールに対する課題
• もとのSimulinkモデルと並列化コードは等価なのか?
36Parallel & Distributed Systems Lab.
a. 並列化が原因で発生する問題の検証
• 生成されたCSPモデルを用いてモデル検査
– 機能要件• デッドロック:deadlock-freeを利用して検証
• 読み書き順序逆転:LTL(線形時相論理)を利用した順序保証検証
– 非機能要件• デッドラインミス:時間情報付CSPモデルとdeadline制約で検証
(deadline制約:deadline以内に終了しないとデッドロックする)
Simulinkモデル 逐次コード
BLXML(*)
並列コード
実行順序ファイル
実行順序付きBLXML
並列コードのCSPモデル
Mathworks社ツール
XML生成(独自)
実行順序埋め込み
並列コード生成(独自)
シミュレーション
CSP生成(独自)
(*) BLXML: Block-Level-structure XMLブロック構造とコードを結合したMBPの内部表現
37Parallel & Distributed Systems Lab.
CSP生成ツール
• 「コア割当て」と「実行順序情報」を保持するXML(BLXML: MBPの内部データ表現)からCSPモデルを自動生成するツール
– デッドロック、実行順序逆転、デッドラインミスの検証モデルを自動生成が可能
– 生成されたCSPモデルを検証ツールに通すことでデッドロックなどの検証が可能
– 検証を行う際の状態爆発の対応策として、AtomicSubsystemによる分割を行った状態で検証を行える階層分割が可能
38Parallel & Distributed Systems Lab.
CSP生成ツール
• 生成されたCSPモデルをPATに通すことで自動的に検証を行うことが可能
デモ動画をご覧ください
39Parallel & Distributed Systems Lab.
CSP生成ツール
• 現在、CSP生成ツールにおける2つの課題を検討中
1. 大きなモデルに対する検証の高速化について
• AtomicSubsystemごとに階層化を行い、各サブシステムごとに検証を実施
2. データ依存関係を使用するモデルの実行順序取得について
• データ読み書きの並列化アルゴリズムを明確化
40Parallel & Distributed Systems Lab.
並列化アルゴリズムの正当性の証明
• 並列化アルゴリズム自身をCSPで厳密に記述し、その正当性を証明する
– 機能要件• 並列コードはSimulinkモデルのブロック間依存関係を満たすこと
• 逐次コードと並列コードの出力が等しくなること
Simulinkモデル 逐次コード
BLXML
並列コード
並列化アルゴリズムのCSPモデル
Mathworks社ツール
XML生成(独自)
並列コード生成(独自)
形式化
並列化アルゴリズムの正当性証明(現在産総研と共同で推進中)
関係の明確化
41Parallel & Distributed Systems Lab.
並列化の例
• 並列化アルゴリズム
タスクブロック依存関係グラフ
モデルベース並列化システム
依存関係に基づく並列化
タスクマネージャー1
タスクマネージャー2
1
4
5
2
3
B1 B12 バッファ
コア2
コア1
並列化アルゴリズム:依存グラフからタスクマネージャを生成する
並列化アルゴリズムを形式仕様記述言語CSPで形式的に記述状態遷移図を比較し確認しながら証明を行う
42Parallel & Distributed Systems Lab.
並列化アルゴリズムの証明
• 任意の依存グラフの状態遷移図を比較概要
任意の依存グラフDGのCSPモデル
S 並列化アルゴリズム
DGの並列実行モデルのCSPモデル
コア1 コア2
S1 S2
S,S1,S2:各モデルにおける実行済みのタスクの集合
(S1,S2)
並行合成コア間通信により実行済みのタスクの情報を共有
並列実行モデルにおいてあるタスクを実行する際にそのタスクの前に実行されるべきタスクが実行済みタスク集合に含まれていることを証明
www.embeddedmulticore.org
組込みマルチコアコンソーシアムハードベンダ/ソフトベンダ/メーカを繋ぎマルチコア活⽤を⽀援
2018-11名古屋⼤学 枝廣 正⼈イーソル(株) 権藤 正樹
ガイオテクノロジー(株) 岩井 陽⼆
Agenda• インテリジェント化する組込みシステム• 海外の組込みマルチコア活動• 組込みマルチコアの課題• 組込みマルチコアコンソーシアム 活動と会員メリット• これまでの成果• 今後の活動• メンバーシップ
Embedded Multicore Consortium44
インテリジェント組込みシステム⾃動運転システム
Embedded Multicore Consortium45
「JETSON TK1」を搭載した⾞両による⾃動運転デモ
Mercedes Future Track2025 ⾃動運転
※⽇経エレ2014年10⽉13⽇号
• ⾃動運転技術はロボット技術とも多くの共通要素を持つ、今後有望視されるインテリジェント組込みシステムの⼀つ
• ⾃動運転に⾄るまでの多くの技術が段階的に実⽤化されつつある
• ⾃動運転における認知、判断では⾮常に⼤きなコンピューティングパワーが必要
• 操舵においても、例えば欧州OEMでは3コアは量産済み、次は6コアと述べている
インテリジェント組込みシステム医療機器におけるリアルタイム画像処理
Embedded Multicore Consortium46
• 多くの先端診断⽀援機能が⾼度かつリアルタイムな画像処理技術によって実現されている
• アルゴリズムの多様化、複雑化、機器の間での部分的再利⽤などの開発効率向上などの課題がある
• 現在ハードウェアで実現しているものをソフトウェアで実現することで解決する課題は少なくない
• それには強⼒で信頼性の⾼いマルチコアが必要
海外での組込みマルチコア活動• EUのマルチコア向けプロジェクト(⾃動⾞/航空/鉄道)
– ARAMIS II︓安全系マルチコアプラットフォーム(24Mユーロ)– APP4MC︓オープン・マルチコア開発環境(旧AMALTHEA)– PROXIMA: マルチコア・確率的時間解析(7Mユーロ)– ALMA: 並列アルゴリズム(3Mユーロ→スピンアウト)など
• Multicore Association︓⽶国中⼼のマルチコア技術標準化団体
47
組込みマルチコアの課題• マルチコアプロセッサはアーキテクチャの⾃由度が⾼く、
各種ツールやプラットフォーム⽀援が重要• 様々な並列化⼿法、ライブラリ、ツールを組合せるには
様々な知⾒が必要• システムベンダから半導体ベンダまで、すべての関連技
術の協働が必要• 関連業界で協⼒・連携し、(1) 活⽤⽀援、(2) ビジネ
ス推進、(3)市場の活性化貢献を実現することが必要様々なベンダや⼤学が集まり連携するための場が求められている→2014年10⽉組込みマルチコアコンソーシアムを設⽴
48
コンソーシアム活動• マルチコア向け開発⽀援ツールのためのハードウェア抽象
化記述SHIM標準化と導⼊⽀援(SHIM委員会)– SHIM (Software-Hardware Interface for Multi-Many-Core) – SHIM WG, Multicore Association (Chair: M. Gondo (eSOL))– NEDO省エネPJから仕様提案、2015年2⽉公開
• リファレンスとしてSHIMを利⽤したマルチコア向け設計⽀援ツール群を開発– MCAとしても公開するSHIM Editorと性能計測ツールに加え、設
計⽀援ツール群を会員向けに無償公開。所定の期間経過後に⼀般にも公開する可能性有
– モデルベース並列化委員会• 様々な並列化⼿法の知⾒共有とガイドラインの検討
– マルチコア適⽤委員会• セミナー開催、技術情報提供、MCAとの連携
49
SHIM委員会• WG構成
– 委員⻑︓権藤(イーソル)• 活動計画
– 定例委員会を開催• 期間︓2015/3〜2019/3(原則として継続)• 対象︓SHIM仕様及びその適⽤• 最近の話題
– SHIM v2.0– 講演で紹介
「産業⽤途のマルチコア解析と最適化ツールのためのSHIM2.0適⽤と重要性」
50
SHIMとはSoftware-Hardware Interface for Multi-many-core• 多様なマルチコアチップを抽象化したXML記述
– コア種類・数、メモリ配置、アドレスマップ、通信、コア→メモリ性能情報等が、数百ページの説明書を読まずとも、機械的に読める
– 性能情報の例︓コアAからメモリ番地Xにアクセスしたときの(best, typ, worst)レイテンシ(右下図参照)
– ツール群、OS等がSHIM対応することにより、多様なマルチコアチップを共通的に扱えるようにすることが⽬的
SHIM仕様書 http://www.multicore-association.org/workgroup/shim.phpOpen SHIM Github https://github.com/openshim/shim
コア→メモリ性能情報SHIM記述例
SHIM対応ツール群並列化⽀援
システム解析 ・・・
SHIM対応マルチコアOS
SHIM対応マルチコアOS
マルチコアチップ
国際標準化
仕様検討SHIM WG
SHIM
情報
SHIMコア、メモ
リ、性能情報
51
SHIMのユースケースとメリット
• マルチコアにおけるアプリケーション実⾏性能⾒積• マルチコア選定時のアプリケーション実⾏性能⽐較• 異なるマルチコアへのアプリケーション移植の際の性能⾒積• 複数マルチコアをターゲットとしたソフトウェア部品開発• 特定アプリケーション向けに特化したマルチコアを企画する際の性能
評価• マルチコア向け開発⽀援を⾏う各種ツールの開発コスト低減と
SHIM対応ツールエコシステム
• システム性能⾒積• ハードウェアモデリング/
複数HWの対応• ツールコンフィギュレー
ション
52
SHIM委員会と会員メリット
SHIM標準ドラフト / 関連標準化WG
EMC会員
EMC SHIM WG
SHIM標準へのインプット
SHIM、その他関連標準化動向情報収集
権藤⽒(MCA SHIM WG Chair)、安積先⽣(埼⽟⼤、IEEEへWG設⽴提案中) 他
53
モデルベース並列化委員会 (MBP)• WG構成
– 委員⻑︓枝廣(名⼤)• 活動計画
– 定例委員会を開催• 期間︓2015/3〜2019/3(原則として継続)• 対象︓Simulinkモデルベースからマルチコア向けの設計⽅法論
• 資料参照(名古屋⼤学ブースB-16-⑨で紹介)
54
モデルベース並列化 (MBP)
制御設計での並列性考慮が実機での制御性能・実装性能の鍵
モデルレベルで並列性を抽出し、並列化コード⽣成
制御設計にフィードバック
MBP委員会と会員メリットEMC会員
EMC MBP WG
研究へのインプット並列化, SHIM⾒積他研究成果情報収集
共同研究各社共同研究各社共同研究各社
個社依存秘密情報を除いた形で発表許諾
OEM、サプライヤ、ツール、半導体他
他レイヤの専⾨家からのコメント
(実⽤化促進)
背景︓研究資⾦は、基盤事業的に分配される時代から調達(成果利⽤に制約発⽣)する時代に56
マルチコア適⽤委員会 (WG3)• WG構成
– 委員⻑︓岩井(ガイオテクノロジー)• 活動計画
– 定例委員会を開催• 期間︓2017/1〜2019/3(原則として継続)• 対象︓マルチコアを積極的に活⽤する⽅法やマテリアル• 最近の話題
– 「はじめてのマルチコア」– 講演で紹介
「『マルチコア技術導⼊ガイド』の紹介」「⾃動⾞機能安全でのマルチコア適⽤」
57
マルチコア適⽤委員会と会員メリットEMC会員
EMC WG3 WG
⼀部貢献(執筆)他レイヤの専⾨家との議論、情報収集、会員公開版⼊⼿
利⽤事例、ツール情報、海外情報
(現在は会員にのみ公開)
⾃社で調べたいことは、多くの場
合、他社でも調べたい、かつ⾮競争
領域
58
これまでの⼀般向け公開成果• MCA MPP和訳 (Multicore Programming Practice)
– マルチコアを利⽤するための基本知識とベストプラクティス集– 2017.3組込みマルチコアコンソーシアム ダウンロードページに公開– 2018.10末現在 約2300アクセス、443ダウンロード– 新版にはモデルベース並列化採⽤→今年末和訳公開予定
• モデルベース並列化サンプル– 簡単なサンプルモデルと結果
並列化モデル MPP
データ読み書き間の依存性は計算の部分的な順序を決定する。順序を制限するデータ依存には3つのタイプがあり、真のデータ依存、逆依存、出力依存がある。(図8)真のデータ依存は、あるデータ値への書き込みが終
わるまでは読み込みができないような操作間の順序を示す。これはアルゴリズム内の基本的な依存であるが、このデータ依存性の影響を最小化するようアルゴリズムを改良することもできる場合もある。
59
これまでの会員向け公開成果• SHIM利⽤⽂書およびサンプルプログラム類
– SHIM仕様(⽇本語版)– アクセス関数、SHIM利⽤性能⾒積サンプルプログラム– SHIM Editor, 性能計測ツール(評価環境での性能⾃
動計測、SHIMへの⾃動⼊⼒)• モデルベース並列化プログラム類
– 簡単なモデルで動作する評価版バイナリ
SHIM Editor性能計測ツール
60
今後のEMC• SHIM2.0の公開、普及、標準化、さらなる改良
• MBPをはじめとしたツール類の試作
• マルチコア設計ガイドの改良、海外動向調査
• マルチコア設計に関する仮想プロジェクト
61
メンバーシップ• 会員(2018年11⽉現在15団体)
– アイシン精機、dSPACE、ルネサス エレクトロニクス、NSITEXE、eSOL、ガイオテクノロジー、CATS、萩原エレクトロニクス、⼤阪⼤学、埼⽟⼤学、名古屋⼤学、早稲⽥⼤学アドバンスドマルチコアプロセッサ研究所、他
– 相互協⼒︓JASA、MCA(Multicore Association)• メンバーシップ構成
– 正会員(⼊会⾦なし、年会費20万)準会員、特別会員– 詳細は http://www.embeddedmulticore.org/
• (参考)SHIM WG Primary Contributing Members– Cavium Networks, CriticalBlue, eSOL, Freescale, Nagoya
University, PolyCore Software, Renesas, Texas Instruments, TOPS Systems, Vector Fabrics, and Wind River.
62
www.embeddedmulticore.org
www.embeddedmulticore.org
top related