FPGAを利用したハードウェア・アクセラレータ/コンピューティング・エンジンのメーカーは数多くある。米Maxeler Technologies, Inc.もその1社である。創業は2003年で,それほど新しい企業というわけではない。これまで,あまり目だたなかったのは,製品やビジネス・モデルが,多くのFPGAベースのアクセラレータ・メーカーと異なるからだ。

Maxelerが提供するハードウェア製品 同社のデータ。
Maxelerが提供するハードウェア製品
同社のデータ。
[画像のクリックで拡大表示]

 同社のFounderでCEOのOskar Mencer氏によれば,HPC(high performance computing)市場で,高速化のためならば,カネを積極的に払ってくれる(例えば,2倍高速にしたら2倍払う)のは,5%の顧客だけだという。その5%の顧客を狙って,事業を始めた。この5%に入り,Maxelerの顧客として名前が公表されている企業には,法人向け金融サービスの米J.P.Morgan(持ち株会社JPMorgan Chase & Co.の傘下の企業)と,石油メジャーの米Chevron Corp.がある。

金融や石油の分野で実績

MaxCompiler実行画面例 Maxelerのデータ。
MaxCompiler実行画面例
Maxelerのデータ。
[画像のクリックで拡大表示]

 J.P.Morganは各種金融指標や金融商品の予測システムに,Chevronは油田探索の海底地質調査のシステムに,Maxelerのアクセラレータを利用しているという。汎用のMPUを使ったサーバーをMaxelerのアクセラレータに置き換えたところ,エンド・ユーザー視点の処理時間(アクセラレータ単体の処理時間ではなく,システムのHDDからデータをアクセスして演算を実行し,HDDにデータを格納するまでの一連の処理にかかる時間)が1/30~1/40に短縮したという。消費電力も同時に10%程度削減できたとする。

 価格に関しては,市販のスーパーコンピュータに匹敵する性能で,1/100~1/1000の価格になるとの説明だった。「なぜ,安価にできるのか」と聞くと,Maxelerのアクセラレータはある問題に特化したコンピュータだからだという答えが返ってきた。ある問題とは,基本的に制御が必要でない大規模なデータフロー・グラフに帰着できる問題をいう。ハードウェアとしては,非常に段数の大きなパイプラインになる。J.P.MorganやChevronの適用例では,400~500段のパイプラインが複数のFPGAに実装されているという(なお,規模の小さなパイプラインだと,Maxelerのアクセラレータを導入する効能はあまりない)。

プログラムをハードウェアに合わせる

 Maxelerは開発用のコンパイラ「MaxCompiler」を用意しているが,制御のないデータフロー・グラフを複数のFPGAに自動的に実装する作業を行うだけだ。すなわち,ハードウェアの詳細に関しては気にしなくともいいが,高速化したいアルゴリズムなりプログラムなりを,制御のないデータフロー・グラフにするまでは,基本的に人手の作業となる。Maxelerはハードウェアのアクセラレータと開発用のコンパイラを販売するだけではなく,顧客のアルゴリズムやプログラムをデータフローに変換するためのエンジニアをかかえており,変換サービスを有償で提供している。サービスの価格はケースバイ・ケースだが,数人が数カ月従事したとして,数千万円になるという。