クラウドやネットサービスを手掛ける企業が、相次いでFPGAの導入を検討し始めた。大量データの高速処理や遅延時間の短縮、サーバー台数の削減などにFPGAが好都合だからだ。各社での事例からデータセンター分野でのFPGA利用動向を見る。

 データセンターでFPGAをコンピューティングデバイスとして使う主な目的は、性能の向上および電力効率の向上だ。CPUを撤廃する訳ではないが、FPGAを併用することで、データセンター全体の性能や電力効率をより高められる。

 ただし、細かく見るとFPGAの利用目的は企業ごとに異なっている。大量データの処理に向けてスループットを高めたり、比較的小規模なデータに対し処理の遅延時間をできるだけ短縮したりといったタイプがある(図1)。以下では、各社でのFPGA利用事例を見ていこう。

図1 データセンター分野でのFPGAの主な利用目的
クラウドやWebサービスにおいて大量データの処理を高速化したり、株式の自動取引(HFT)やインターネット広告の高速オークション(RTB)において遅延時間を短縮したりといった用途で使われる。

Microsoft社

 ネット企業によるデータセンターでのFPGA利用として最大の注目事例が、Microsoft社の取り組みだ。同社は2008年ころからFPGAなどハードウエア関連のスキルを持った人材を研究部門のMicrosoft Researchに集結させ、データセンターでのFPGA利用について着々と準備を進めてきた。

 2014年6月には1632個ものFPGAを用いたアクセラレーターシステム「Catapult」を試作。同システムを用いることで、同社のWeb検索エンジン「Bing」のスループットを約2倍にできるとの結果を発表した。同じスループットであれば、従来の半分のサーバー数で、サービスをまかなえることになる。FPGAを追加することによるコスト増は既存のサーバーの30%未満で済むという。用いるFPGAの数の多さやそれらを組み合わせるアーキテクチャーの点で、先進的な取り組みだ。2015年初頭にBingの本番環境に導入する計画である。

 数十~数百万台と膨大な数のサーバーを抱えるデータセンターでは、サーバーのハードウエア障害への自動対応など運用の負担をいかに減らせるかも重要だ。Catapultではそうした運用のしやすさも考慮してあるのが特徴だ。

 Microsoft社は以前から自社のデータセンターで用いるサーバーを自社設計してきており注1)、そうした経験を踏まえ、データセンターで使うFPGAシステムとして考え抜かれた設計になっている。

注1)Microsoft社は自社のデータセンターで使うサーバーを自社設計している。製造は、台湾Quanta Computer社などが請け負っている。今回のFPGA搭載サーバーも、Quanta社が製造を請け負った。