FPGAのXilinxが人工知能などのワークロードを包括するソフトウェアプラットフォームVitisを発表

2019年12月18日(水)
松下 康之 - Yasuyuki Matsushita
FPGAのXilinxが年次カンファレンスで、さまざまなワークロードに対応可能な無償のソフトウェアプラットフォーム、Vitisを発表した。

Xilinxの年次カンファレンス、XDF(Xilinx Developer Forum)では新しいソフトウェアフレームワーク、Vitisが発表された。これは初日のキーノートでは「オープンソース、無償」という一面だけが強調された形になったが、ここでは個別のセッションで紹介された解説の内容をお届けする。

参考:FPGAのXilinxが年次カンファレンスを開催。データセンター、5G、自動運転にフォーカスしたキーノートを紹介

スピーカーはXilinxのRob Armstrong氏、肩書はDirector of Technical Marketing, AI and Software Accelerationである。

コンピューティングの進化

コンピューティングの進化

最初に前提としてXilinxが定番として使っている「シングルコア、マルチコア、ヘテロジニアス、アダプティブ」に至るプロセッサーの進化を紹介。これはCEOのVictor Peng氏も強調するポイントで、Intelに代表されるプロセッサーの高密度化と微細化の限界、GPUによる並列化の限界などからそれぞれのアプリケーションドメインに合ったプロセッサーを組み合わせて使うというスタイルまでがヘテロジニアスの段階である。そこからさらなる高性能化を求めるために、ソフトウェアによる柔軟性とシリコンの速度を併せ持ったFPGAに移行する流れになった、というストーリーだ。ただXilinxとしては、すでに「FPGA」という単語を使わずにアダプティブアーキテクチャー、Xilinx用語で言えば、ACAP(Adaptive Compute Acceleration Platform)に移ったと言いたいところだろう。単なるゲートアレイではなく、CPUやメモリなどを積んだSoC(System on a Chip)として実装されていることで、差別化したいという意味も含まれている。

アプリケーションに合わせたアーキテクチャーが必要ということを強調

アプリケーションに合わせたアーキテクチャーが必要ということを強調

人工知能に代表される新しいアプリケーションやワークロードにおいては、日夜ソフトウェアが更新され、常に新しいコードが登場するという状況にある。この状況下で、ソフトウェアが更新されるたびに、シリコンを作ることが革新のスピードに合わない、だからシリコンを毎回作らなくても対応できる柔軟なプラットフォームが必要というのがXilinxのメッセージだ。

機械学習の革新のスピードに合わせられるASICは不可能

機械学習の革新のスピードに合わせられるASICは不可能

そこで紹介されたのがVitisだ。Unified Software Platformとサブタイトルが付いているように「これまでバラバラだったものを統合したプラットフォーム」というのが正しい意味合いだろう。

次のスライドはVivado、Embedded、Vitisがどの開発者に向けたプラットフォームなのかを明確に説明するものだった。つまりVivadoはハードウェアのエンジニア、Embeddedは文字通り組込系もしくはSoCを使うエンジニア向け、そしてVitisはソフトウェアデベロッパー向けであることを解説した。

それぞれの開発者向けのプラットフォームを展開

それぞれの開発者向けのプラットフォームを展開

そのVitisを構成するコンポーネントとして、ターゲットシステムのためのランタイム、コンパイラー、アナライザー、デバッガー、その上にライブラリー群、そしてユーザーが開発するアプリケーションという構成になることが紹介された。

Vitisの構成

Vitisの構成

Xilinx Runtime(XRT)と呼ばれるランタイムについても詳細に解説が行われた。

XRTの詳細。すでに利用されているものをまとめたもの

XRTの詳細。すでに利用されているものをまとめたもの

またアプリケーション開発のワークフローについても、FPGAのロジック部分の開発とアプリケーション部分の開発はまったく同じように行われるとして紹介されたのが次のスライドだ。Xilinxとしては、多くのソフトウェアデベロッパーをACAPの世界に引き込むために、この部分のハードルをなるべく低くしようと工夫していることがわかる。

ハードとソフトは同じようなワークフローになる

ハードとソフトは同じようなワークフローになる

そしてアプリケーション固有の機能を実装するためのライブラリーが充実していることを、強みとして紹介した。人工知能、画像処理、データ分析、データ圧縮、暗号化などについてライブラリーを提供することで、それぞれの業務に特化したアプリケーション開発でき、GPUやCPUに比べて高速に実行できるというのがXilinxのメッセージだ。

ドメインごとのライブラリーによってアプリケーション開発が行われる

ドメインごとのライブラリーによってアプリケーション開発が行われる

特にXilinxが推論部分において圧倒的に有利である人工知能については、TensorFlow、Caffe、PyTorchのフレームワークに対応することが発表された。

途中にWebIDEのデモを見せながら、これまでの開発手法と変わらないことを強調したArmstrong氏だった。

WebIDEのデモ

WebIDEのデモ

プレゼンテーションを行うRob Armstrong氏

プレゼンテーションを行うRob Armstrong氏

セッション自体はあくまでもイントロダクションとして、Vitisの全容を紹介したものというイメージだった。とはいえ、このVitisが無償で公開されることは画期的だろう。

XilinxのGitHubレポジトリー

またデベロッパー向けのサイトもベータという扱いながらすでに公開されている。興味のあるエンジニアはぜひ、参照していただきたい。

Xilinx Developer

公開されている開発者向けサイトの紹介

公開されている開発者向けサイトの紹介

著者
松下 康之 - Yasuyuki Matsushita
フリーランスライター&マーケティングスペシャリスト。DEC、マイクロソフト、アドビ、レノボなどでのマーケティング、ビジネス誌の編集委員などを経てICT関連のトピックを追うライターに。オープンソースとセキュリティが最近の興味の中心。

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています