プロセッサ最新テクノロジ2015 シリーズ10
tag:
2016年5月24日
ロボット,ドローンのコンピュータ・ビジョンからディープ・ラーニングまで組み込み機器上で実現できる
NVIDIAのJetson TX1開発キット
NVIDIAは1993年に創業した半導体メーカで,GeForceシリーズなど高度な3Dグラフィックス機能をもつPC向けGPUを次々に開発し,グラフィック・プロセッサの代表的なメーカとして知られている.最近では,GPUのもつ高速演算性能を汎用計算処理に活用するGPGPUの技術を元に,組み込みからHPC(High-Performance Computing)まで,幅広い分野への展開を進めてきた.
組み込み市場で成長が注目されているロボット,ドローン,自動運転車などでは,視覚情報を高度に処理するコンピュータ・ビジョンや,それらの情報を自律的に学習・判断するディープ・ラーニングの技術が不可欠になると考えられる.NVIDIAでは,この用途に向けて小型・低消費電力の組み込み開発プラットフォームとしてJetson TX1開発キットの販売を開始した.
今回は,このJetson TX1開発キットと,組み込みからHPCまで統一的なアーキテクチャを実現しているNVIDIAのCUDAプラットフォームについてお話を伺った.
執筆:宮﨑 仁
![]() |
エヌビディア合同会社 テクニカルマーケティング エンジニア 矢戸 知得氏
1.さまざまな組み込み機器に活用できるJetson TX1開発キット
3Dグラフィックスでは,3D座標を2D座標に変換するジオメトリ処理や,光源に合わせて画像に陰影を付けていくシェーディングなど,多量の演算をリアルタイムに行う必要がある.そのための専用ハードウェアとして作られたものがGPUだったが,2000年代後半には,GPUのもつ高速演算性能を汎用の科学技術計算に活用しようというGPGPUの手法が普及してきた.
金融/経済,資源/エネルギ,天気予報,流体解析,新薬創生などさまざまな分野でのシミュレーションや,画像認識,音声認識,ディープ・ラーニングなどのAIにおいて大きな力を発揮している.
NVIDIAでは,PC向けGPUのGeForce,ワークステーション向けのQuadro,サーバ/HPC向けのTesla,モバイル/組み込み向けプロセッサのTegraなど幅広い製品ラインナップを実現している.その中で,新世代のモバイル/組み込み向けプロセッサとして2015年にTegra X1を発表した.
Tegra X1はCPUとしてARM Cortex-A57+Cortex-A53によるbig.LITTLEオクタル・コアを採用し,256個の演算コア(CUDAコア)をもつGPUを組み合わせた統合プロセッサだ.10Wの消費電力で1TFLOPSの処理性能が得られるという.LinuxやOpenGLなどの標準的な環境に対応しており,システム構築やアプリケーション開発も容易にできる.
モバイル・コンピューティング,車載インフォテイメント,ロボットやドローン,自動運転など幅広い用途での活用を可能にしている.
このTegra X1の高性能を十分に引き出し,かつ簡単にソフトウェア開発を始められるように,NVIDIAではJetson TX1開発キットの販売を開始した(写真1).Jetson TX1開発キットは,Tegra X1とメモリなどをカード・サイズにまとめたJetson TX1モジュールと,周辺機能や各種のI/Oコネクタを搭載したI/Oボードから構成されている.Linux環境があらかじめ書き込まれており,NVIDIAの開発ツールをダウンロードすればすぐに開発が始められる.
写真1 Jetson TX1開発キット
また,ミニPCIeコネクタに接続するHDMIキャプチャ・ボードなどの周辺ボードもサード・パーティから供給が予定されており,システムの拡張も容易だ.
NVIDIAではさまざまなデモを行っている.たとえば,救急車の画像とこれまでに学習したさまざまな要素を比較して対象を認識したり(写真2),走行している自動車から撮影した画像をリアルタイムで解析して駐車場の空きを自動認識している(写真3)組み込みながらも高い処理能力をはっきしていることが分かる.
写真2 ディープ・ラーニングによる自動認識
写真3 走行している自動車からの画像認識
2.組み込みからHPCまで活用できるCUDAとソフトウェア・ツール
GeForceシリーズのGPUは,Windowsグラフィックスの標準であるDirect3Dや,サーバ/ワークステーションを含む幅広いコンピュータで普及しているOpenGLに対応してきた.
その後NVIDIAでは2006年に,汎用計算向けプラットフォームのCUDA(Compute Unified Device Architecture)を発表した.CUDAは,Cベースの言語でソース・コードを記述でき,CPUとGPUに分けた実行コードを生成できる.科学技術計算に必要な各種ライブラリや,Direct3DやOpenGLを含むさまざまなAPIも利用できる.
Tesla,Quadro,GeForce,TegraなどのさまざまなGPUで,CUDAによる汎用コンピューティングを統一的に利用できる.
Jetson TX1開発キットの開発にも,CUDA対応のツールが取り揃えられている.たとえば,コンピュータ・ビジョン用ツール・キットとしてNVIDIAはVisionWorksを提供している(図1).VisionWorksは上流側のさまざまなパイプラインに対応する実行コードを生成し,それをCUDA対応のNVIDIAのすべてのハードウェアにインプリメントできる.
図1 コンピュータ・ビジョン用ツール・キットVisionWorks
また,ディープ・ラーニング用ライブラリとしてNVIDIAはcuDNNを提供している(図2).cuDNNはCaffe,torch,theano,Chainerなど既存のニューラル・ネットワーク・フレームワークに対応しており,学習や推論を大幅に高速化できる.さらに,TeslaやQuadroなどハイエンド・コンピューティングで十分な学習を行い,その成果をJetson TX1などの組み込みコンピューティングでの推論に活用できることも,大きな特徴となっている.
図2 ディープ・ラーニング用ライブラリcuDNN
NVIDIAのGPU製品とそれを活用するCUDAテクノロジは,IoTとともに大きく発展する今後の組み込み機器にとって不可欠の技術と言えるだろう.
----------------------------------------------------------------------------------------------
インターフェース誌 巻頭企画プロセッサ・メーカにテクノロジ・シリーズの
他の記事も読む
----------------------------------------------------------------------------------------------
この記事に関するお問い合わせ先
![]() |
エヌビディア合同会社 http://www.nvidia.co.jp/page/home.html
〒107-0052 東京都港区赤坂2-11-7 ATT新館13F