メディア

マルチコアCPUの“真価”を引き出す自動並列化ソフト30年の粘りが生んだ(2/4 ページ)

» 2018年08月09日 10時30分 公開
[村尾麻悠子EE Times Japan]

シングルコア用のソフトを自動で並列化する

 CPUがマルチコアの場合、シングルコア用のソフトをマルチコア用に直すという作業がどうしても必要になる。そうなると、エンジニアがコードを読んで、手動で割り付けなくてはならず、膨大なコストが掛かる上に、並列化がうまくいくかどうかがエンジニアの能力に左右されやすい。

 それに対して、OSCARTechコンパイラは、C言語で書かれた逐次のコードを入力すると、4コア、8コアなどコア数に合わせて並列化したコードを自動的にC言語で吐き出す。「コンパイラ」と名は付いているものの、入力も出力もC言語である。そこから先は、ごく一般的なコンパイラでC言語から機械言語に修正し、チップに実装することになる。「これにより、エンジニアが行うよりも大幅に高速に、安く、質も安定して並列化できる」と小野氏は強調する。

「OSCARTechコンパイラ」の概念。マルチコア向けにソフトウェアを自動で並列化する 出典:オスカーテクノロジー(クリックで拡大)

 小野氏は、「マルチコアプロセッサに向けたソフトウェアの自動並列化の研究は、難しさ故にほとんどの研究者たちがやめてしまったが、ごく近い将来、組み込み系ソフトウェアを全て並列化しないといけない時代がやってくるはずだ」と述べる。その時に、コストをいかに下げるかが肝心になってくる。

 オスカーテクノロジーの調査によれば、2009年における世界の組み込みソフトウェア開発費は約26兆円だった。そのうち、並列化に向けた開発費の投入率は0.001%と、ほぼゼロだという。それが、2020年には、開発費34兆円のうち0.2%に当たる680億円が、2030年には41兆円のうち0.6%に当たる2460億円が、並列化技術に投入されるのではないかと、オスカーテクノロジーは予測している。同社としては、OSCARTechを使うことで、並列化に掛かるコストを現在比で2分の1に、時間を5分の1にすることを目指している。

左=OSCARTechコンパイラは、粗粒度並列から近細粒度並列まで、全ての並列性を対象とした「マルチグレイン並列処理」を行うことができる/右=OSCARTechコンパイラの並列化手順 出典:オスカーテクノロジー(クリックで拡大)

 組み込みソフトウェアの並列化によって処理を高速化できる用途は、自動車、通信やIoT(モノのインターネット)、ロボティクス、画像処理や画像認識、ディープラーニングなどの要素技術など、さまざまな分野に及ぶ。オスカーテクノロジーは、これらのいくつかの分野でOSCARTechコンパイラを適用し、どのくらい処理を高速化できるか検証を続けている。

OSCARTechコンパイラを適用して、処理を高速化した事例 出典:オスカーテクノロジー(クリックで拡大)

Copyright © ITmedia, Inc. All Rights Reserved.

RSSフィード

公式SNS

All material on this site Copyright © ITmedia, Inc. All Rights Reserved.
This site contains articles under license from AspenCore LLC.