ソフト開発者も自分の半導体チップを持てるようになる
2019年10月 4日 14:41

ソフトウエア開発者が自分のチップを持ちたい、と考えてもそう簡単には設計できるものではない。ところが、ソフトウエア開発の要領でチップを作れるようになる。これが、Xilinxが発表したVitis(バイティスと読む)という統合ソフトウエアプラットフォーム(Unified Software Platform)である。作る半導体チップは、プログラム可能なFPGAField Programmable Gate Array)という半導体。

FPGAは電子機器やシステム、クラウドそのものでさえも、外から遠隔で回路構成を変えられるようになってきた。2~3年前にXilinxが発表した、SDAccelというソフトウエア開発ツールは、データセンターやクラウド内に設けたFPGAを遠隔地から操作してFPGAのプログラムを書くツールである。FPGAの内容を書き換えられるため、Xilinxは自分らを、FaaSFPGA as a Service)と呼んできた。

Fig1.JPG

 1 XilinxXDF開発者会議の開催直前

 

このほど、Xilinxが米国シリコンバレーの中心地のひとつサンノゼで、101日~2日に開催したXDFXilinx Developer Forum)(図1)でVitisを発表した。Vitisには、これまでXilinxが開発してきたソフトウエアツールのOSやファームウエア、SDKに加え、組み込み用のSDSoCSDAccelを統合化し、さらにAI専用の開発ソフトも統合化している。マイコンの統合開発ツールのようなコンパイラやアナライザ、デバッガなども含まれているが、何よりもオープンソースの最適化されたアプリケーションソフトウエアが400以上も揃っている。

Xilinxは昨年発表し今年出荷を開始した最上位のハードウエアである、VERSAL ACAPAdaptive Compute Acceleration Platform:適応型演算加速プラットフォーム)では、CPUに加えDSPAIエンジン、そしてFPGAを組み込んでいる。特にAIエンジンはディープラーニングに特化したDNN(ディープニューラルネットワーク)を完全に別回路で用意している。

なぜ、DNNに特化したか。半導体業界ではシリコンサイクルはかつて4年に一度と言われ、最近でも数年ごとに好不況の波がやってきているが、「実はDNNの新しいアルゴリズムの革新は3~4カ月ごとに起きており、シリコンサイクルよりも速い急速に進化している分野である」とXilinx社ソフトウエア、IPAIソリューション部門、製品マーケティング担当VPRamine Roane(ラミーン・ローアン)氏は述べている。AIの応用はさまざまな分野で見られるが、その80~90%DNNであるという。

精度の高いAIのアルゴリズムは、2012年のAlexNetがきっかけになり、GoogLeNetで飛躍したが、すぐにResNetが登場し、その後さまざまなアルゴリズムが生まれた。学習アルゴリズムはすでにピークを超え、学習データも十分溜まった。しかし推論用では豊富な学習データをいかに短時間で推論用に変換するか、応用ごとに対処していく必要があり、テクノロジーの進化は続いている。推論手法の次々と生まれてくるスピードは、かつての半導体勃興期やムーアの法則が全盛だったころに近い。当初のムーアの法則は、市販のシリコンチップに集積されるトランジスタ数は毎年2倍増えている、というものだった。それが18~24カ月に2倍から、さらに24~36カ月に2倍へと伸びていき、進化のスピードは緩まった。

DNNの学習ではこれまでGPUがこれまで最もよく使われてきたが、DNNでは多数のMAC(積和演算)からなるアーキテクチャをGPUも持っていたためだ。しかし、GPUや汎用のMAC演算を揃えた半導体チップだと効率が悪く、推論用には電力をたくさん消費しすぎており、電力効率は20~30%しかないとRoane氏は言う。しかし、DNN専用のアクセラレータを構成するなら効率は80~90%に改善するという。FPGADNN専用回路を作るが容易になるのが今回のVitisだ。

Vitisソフトウエアプラットフォームの構造に関しては、半導体の業界人向けのウェブサイトセミコンポータルに紹介した(参考資料1)。Xilinxはなぜ、このような統合ソフトウエア開発環境を作ったのか。AIを使おうと思っている企業はDNNを使ったソリューションを外部企業に委託するケースが多い。もし簡単にDNNの推論機能を実現できたら、外部に依頼する必要はなくなる。Vitisには30以上のニューラルネットワークモデルを準備しており、TensorFlowに加え、ビデオエンコーディング、ゲノム解析など今後用意していく。

Vitisは、VitalVitalityなど活力のあるという意味に加え、Vitesse(フランス語で高速という意味)の意味も含むことから、この開発ソフトウエアツールを命名した、とフランス生まれのRoane氏は述べている。

 

 

参考資料

1.XilinxAIを含めた統合ソフトウエアプラットフォームVITISを発表(2019/10/01

 

2019/10/04