EETJ FPGAのOpenCL対応を可能にしたSDKの提供開始から1年ほど経過しましたが、市場の反応はいかがでしょうか。
Seynhaeve氏 とても好評だ。OpenCLが主にターゲットとしているハイパフォーマンスコンピューティング(HPC)分野でも採用が進んでいる他、意外にもHPC分野以外でも実績が多く生まれている。
EETJ SDK、コンパイラによりFPGAはGPUなどと同じようにC言語で扱えるようになりましたが、依然としてGPUなどと比べ割高なFPGAが選択される理由は、どのあたりにありますか。
Seynhaeve氏 FPGAが支持されている理由は、効率の良さ、消費電力の低さだ。FPGAは、処理内容に応じて最適なハードウェアを構成し無駄がない。そのため、CPUやGPUに比べ効率が良く、消費電力も抑えられる。
HPC分野は、多くのデバイス、ボードを並べた大規模なシステムが構築される。そうなれば、システムを冷却する空調システムも大規模で電力代が大きくなる。そのため、デバイスコストよりも電力効率が重視されるようになる。もちろん、FPGAよりも最適化が行えるASICの方が効率が良いが、最先端プロセスを使用したASICは多額の開発費、初期コストが掛かる訳であり、多くの用途で現実的な解ではなく、FPGAが選ばれている。
その顕著な例が大規模な並列コンピューティングが必要な「ビットコインの採掘(マイニング)」でのFPGAの採用だ。ビットコインは相場で価値が乱高下するため、せっかく採掘したものの、冷房コストの方が高かったということもあり得る。特にコストにシビアなこのビットコインの採掘でFPGAが利用されていることで、FPGAの利点が分かってもらえるだろう。
また、消費電力だけでなく、性能面でもFPGAは優位性を発揮している。金融システム向けのテストベンチの結果、FPGAはGPUよりも消費電力が半分ながら、処理速度は8倍速いという結果も出ている。そうした結果からも“OpenCL+FPGA”への支持が広がっている。
EETJ HPC分野以外での、“OpenCL+FPGA”の応用とはどのようなものですか。
Seynhaeve氏 1つは、多機能プリンタ(MFP)だ。MFPは、機能は多いが、各ベンダーともに似た機能を搭載し、差異化が難しくなっている。そのため、MFPベンダーは、新機能を一刻も早く実装し、市場投入したいというニーズがある。これまで、量産数量の多いMFPにはASICが用いられてきたが、ASICの開発期間は18〜24カ月程度は必要で時間がかかる。そこで、短期間で開発可能なOpenCLとFPGAの組み合わせで採用が進んでいる。
もう1つ、面白いHPC以外での採用事例が、自動車の歩行者検知システムだ。これまで歩行者検知はDSPベースのソリューションが多かったが、検知用のカメラの台数が増えるにしたがいDSPだけでは処理が追い付かない状況になり、FPGAへのニーズがあった。DSPに慣れている設計者はFPGAの使いこなしが難しかったが、OpenCL対応SDKによりFPGAの採用が可能になった分野だ。
これらHPC以外の分野は共通して、デバイスコストも抑える必要がある。単に、CPUとFPGAの構成では、価格は見合わない。しかし、われわれの高性能なARMプロセッサコアをハードIPとして集積するFPGA製品群「SoC FPGA」により、CPUとハードウェアアクセラレータをシングルチップで実装できる。先に挙げたMFPでは、ローコストFPGA製品である「Cyclone V SoC」を使用しシングルチップで実現している。SoC FPGAにより、従来、OpenCLを使ってこなかった非HPC分野でも、コストに見合う形で、OpenCLを利用できるようになった。
EETJ “OpenCL+FPGA”の利用拡大もあってか、他のFPGAベンダーもOpenCL対応の動きを活発化していますが、アルテラとしての強みなどはありますか。
Seynhaeve氏 アルテラは先行してOpenCLに取り組んできており、いろいろな面で先行できている。その1つがOpenCL対応で最も基本的で重要な、規格への順守。規格適合テストは8500項目以上あり、簡単ではない。また、OpenCLに関するエコシステムも時間を掛けて広げてきており、アルテラの優位性になっている。最近でもIBMのPOWER マイクロプロセッサ・アーキテクチャを利用したオープンなアライアンスである「IBM OpenPOWER Foundation」に参加して次世代POWERベース・システムに向けた開発に着手するなど、いろいろな企業との連携が図れている。アルテラ製FPGAをベースにした並列コンピューティング、OpenCL向けボード製品も多くの企業から提供されている。
製品や開発環境などでも先行できている。OpenCL対応で重要なC言語からHDLへのコンパイルはどうしても数時間単位の時間が必要になる。数時間も掛かるコンパイルを繰り返して、開発するのは現実的ではない。アルテラのOpenCL SDKは、シミュレータやエミュレータにより、数分間で行える簡易的なコンパイルで、大部分のデバッグ/検証が行える機能を搭載している。こうした機能はアルテラ独自のものであり、大きな強みになっている。
さらに、このほど発表した通り、20nmプロセスで製造される「Arria 10」FPGA&SoCと、14nmトライゲートプロセスで製造される「Stratix 10」FPGA&SoCで、ハードウェア浮動小数点DSPブロックを内蔵した製品を投入する(関連記事:FPGAにハードウェア浮動小数点DSP内蔵、電力効率でGPGPUの上を行く)。より並列コンピューティングの分野で、FPGA、アルテラの優位性が高まるだろう。
Copyright © ITmedia, Inc. All Rights Reserved.