(邦訳:ヘテロジニアスマルチコア及びホモジニアスマルチコアに対する自動並列化に関する研究)
林 明宏 早稲田大学基幹理工学部情報理工学科 助教 |
[背景]マルチコアプロセッサが爆発的に普及
[問題]マルチコアを有効活用するためには並列化という困難な課題がある
[貢献]貢献:これらをアプリケーションを問わず自動的に行うソフトウェアを開発すること/応用:理論的にはどのようなアプリケーションでも並列化可能である.
コンピュータの頭脳であるプロセッサコアを複数個搭載したマルチコアプロセッサは幅広い分野で活用されている.マルチコアプロセッサは同じプロセッサコアを複数個搭載したホモジニアスマルチコア,特定処理を高効率で処理可能なアクセラレータを搭載したヘテロジニアスマルチコアの2種に分類可能である.アクセラレータの例としてはコンピュータグラフィックス(CG)の描画などで使用されるGPUなどが有名である.
また,マルチコアプロセッサ上で並列に計算可能なところを見つけ出し,各コアに役割分担を与え並列実行することにより高速化することを「並列化」という.たとえば,スマートフォンやPCで映画を見る場合,画面の上半分の描画はコア1に任せ,下半分の描画はコア2に任せることで処理を高速化することが可能である.
しかしながら,従来より並列化は非常に困難であると言われている.そのため,開発者はプログラムの作成に数ヶ月の時間を費やすことになり,開発期間が非常に長くなってしまうという欠点がある.
本論文では,ヘテロジニアスマルチコア,ホモジニアスマルチコアに対して自動的に並列化を実現し,同時にプロセッサコアの周波数及び電圧を制御することで低消費電力化を実現するヘテロジニアスマルチコア対応OSCAR自動並列化コンパイラを提案する.また,その効果をさまざまなアプリケーションの自動並列化を行い,性能評価を行うことで確認した.8個の汎用プロセッサコアと4個のアクセラレータコアを対象とした場合,iTunesなどでCDからの音楽の取り込みなどで使用されているAACエンコーダでは1つのプロセッサコアを用いる場合に比べて16倍の高速化,80%の電力削減,監視カメラなどで使用されている物体追跡アルゴリズムでは32倍の高速化,70%の電力削減を実現した.また,本手法は近年高い治療効果により注目されている重粒子線がん治療時に使用する線量計算エンジンという非常に重要なアプリケーションも自動化並列化可能である.このアプリケーションは従来,8個の汎用プロセッサコアを用いて2.8倍程度にとどまっていたが,64個の汎用プロセッサコアを対象とした場合,本手法により自動的に55倍という性能を実現した.自動並列化という技術により,さまざまなアプリケーションを自動的に高速化,低消費電力化することが可能であり,マルチコアプロセッサの恩恵を最大限に享受することができる.
また,マルチコアプロセッサ上で並列に計算可能なところを見つけ出し,各コアに役割分担を与え並列実行することにより高速化することを「並列化」という.たとえば,スマートフォンやPCで映画を見る場合,画面の上半分の描画はコア1に任せ,下半分の描画はコア2に任せることで処理を高速化することが可能である.
しかしながら,従来より並列化は非常に困難であると言われている.そのため,開発者はプログラムの作成に数ヶ月の時間を費やすことになり,開発期間が非常に長くなってしまうという欠点がある.
本論文では,ヘテロジニアスマルチコア,ホモジニアスマルチコアに対して自動的に並列化を実現し,同時にプロセッサコアの周波数及び電圧を制御することで低消費電力化を実現するヘテロジニアスマルチコア対応OSCAR自動並列化コンパイラを提案する.また,その効果をさまざまなアプリケーションの自動並列化を行い,性能評価を行うことで確認した.8個の汎用プロセッサコアと4個のアクセラレータコアを対象とした場合,iTunesなどでCDからの音楽の取り込みなどで使用されているAACエンコーダでは1つのプロセッサコアを用いる場合に比べて16倍の高速化,80%の電力削減,監視カメラなどで使用されている物体追跡アルゴリズムでは32倍の高速化,70%の電力削減を実現した.また,本手法は近年高い治療効果により注目されている重粒子線がん治療時に使用する線量計算エンジンという非常に重要なアプリケーションも自動化並列化可能である.このアプリケーションは従来,8個の汎用プロセッサコアを用いて2.8倍程度にとどまっていたが,64個の汎用プロセッサコアを対象とした場合,本手法により自動的に55倍という性能を実現した.自動並列化という技術により,さまざまなアプリケーションを自動的に高速化,低消費電力化することが可能であり,マルチコアプロセッサの恩恵を最大限に享受することができる.
(2012年8月30日受付)