MAGAZINE ARTICLES

Pulse

並列化コンパイラ「OSCAR」向けのAPI、
各社マルチコア用にコードの自動生成が可能に

[issued: 2009年1月号]


写真1 早稲田大学の笠原博徳氏

早稲田大学は2008年11月、マルチコアプロセッサ向けにプログラムの自動並列化を行うためのAPI(Application Programming Interface)仕様「OSCAR(Optimally Scheduled Advanced Multiprocessor) API」を開発したと発表した。情報家電用アプリケーションプログラムや科学技術計算プログラムをマルチコアプロセッサで高効率かつ低消費電力で実行するためのものである。

 このAPIは、プロセッサ技術で情報家電製品の差異化を図り国際競争力を強化することを目的とした、NEDO(新エネルギー・産業技術総合開発機構)の「リアルタイム情報家電用マルチコア技術の研究開発」プロジェクトで開発された。このプロジェクトで開発された自動並列化コンパイラ「OSCAR Parallelizing Compiler(以下、OSCARコンパイラ)」とともに用いる。同プロジェクトには、東芝、NEC、パナソニック、日立製作所、富士通研究所、ルネサス テクノロジらが参画している。

 NEDOプロジェクトのリーダーを務める早稲田大学理工学術院教授の笠原博徳氏(写真1)は同プロジェクトの背景について、「今やマルチコアプロセッサは情報家電から自動車、スーパーコンピュータなどに至るまで、さまざまな分野で利用されており、半導体メーカー各社は独自のマルチコアプロセッサを開発/製造している。しかし、市場競争力を維持するためには、アプリケーションソフトウエアの充実/システム開発期間の短縮/高機能化/低消費電力化/低コスト化などが必要となる。これを実現するためには、異なるアーキテクチャの各社マルチコアプロセッサ向けに作成されたソフトウエアプログラムを自動的に並列化するコンパイラが必要だ」と説明する。

 OSCAR APIは、低消費電力制御/メモリー配置/データ転送などの最適化を行う15種の指示文のみから成るコンパクトな仕様となっている。そのため、指示文を解釈する小規模なソフトウエアを開発することで、逐次プログラム(非並列型のプログラム)用の既存のコンパイラを用いて並列マシンコードを作成することが可能である。具体的には、アプリケーションプログラムに対し、OSCARコンパイラによって並列性の抽出/データ配置の最適化を行い、OSCARAPIで記述したタスク制御/データ転送/電力制御の指示文を埋め込んだコードを生成する。そのコードを、各メーカーのコンパイラによって、それぞれのマルチコアプロセッサ向け並列マシンコードに変換する仕組みである。OSCAR APIを介すことで逐次プログラムから並列化プログラムを自動生成することが可能となり、これまで人手で数カ月ほどかけて行っていた並列化プログラムの作成を、わずか数分で行えるようになるという。

 実際、OSCARコンパイラおよびOSCARAPIを用いて自動並列化したプログラムによって、8コアのマルチコアプロセッサの自動電力制御に成功し、オーディオデータのリアルタイム圧縮処理時の消費電力を88%削減でき、映像データのデコード時の消費電力を74%削減できることも実証した。また、異なるメーカーの4コアのマルチコアプロセッサにおいてもマルチメディア処理の自動並列化に成功し、それぞれ1コアと比べて並列処理性能が3倍以上に向上することが確認できたという。

 NEDOプロジェクトでは、参加各社のマルチコアプロセッサのいずれにも対応したコードをOSCARコンパイラによって生成できるよう、共通のマルチコアアーキテクチャのモデルを考案した。OSCARAPIは、このアーキテクチャモデルに対応するものとして策定されており、同アーキテクチャのサブセットと見なせるプロセッサであれば、OSCARコンパイラ/APIを適用できるという。なお、OSCAR API(Version 1.0)の仕様書は、http://www.kasahara.cs.waseda.ac.jp/api/regist.htmlからダウンロード可能となっている。

(鉄井 亮一)

Sponsor Links [ PR ]

関連情報  by  Supplier Showcase

EDN RESOURCE CENTERpowered by Supplier Showcase

  • ZeBu-UF Ultra Fast Emulator ZeBu-UF Ultra Fast Emulator

    新しい検証アプローチEVE は、ハードウェアに支援された、全く新しい検証アプローチを切り開いてきました。これは、従来のエミュレーションとラピッド・プロトタイピン…[日本イヴ]


  • AHB Master Transactor AHB Master Transactor

    システムレベル・仮想プラットフォームを手早く構築するためのトランザクタからなる仮想コンポーネント・ライブラリをご紹介します。ZeBuの仮想プラットフォームは、M…[日本イヴ]


SPECIAL CONTENTS [ PR ]

最新ニュース

このコーナーのバックナンバー

キーワードタグ一覧