NVIDIAの小型の最新AIコンピュータ「Jetson Nano」のレビュー連載の第2回。
「Jetson Nano」は早くも日本のメイカーズの中で話題となっています。
今回は第1回目の「開封の儀編」に続いて「セットアップ・ベンチマーク編」をお送りします。
前回も紹介しましたが、「Jetson Nano」はNVIDIAが開発・販売しているAIエッジコンピュータJetsonシリーズのエントリーモデルです。詳しい内容は既報の記事を参照ください。
小型の最新AIコンピュータ「NVIDIA Jetson Nano」レビュー(1) 開封の儀
【速報:GTC2019基調講演】超小型のAIコンピュータ「Jetson Nano」発表!開発キットは99ドル、NVIDIAのCEOジェンスンフアンが披露
Jetson Nano Deep Stream SDK デモ
早速ですが、Jetson Nanoで動作した「Deep Stream SDK」のデモを見てみましょう。
■ Deep Stream SDKのデモ動画
Jetson AGX Xavierの時にも同様のデモを確認しましたが、サムネイル動画の同時再生本数は、Jetson AGX Xavierの25に対して、Jetson Nanoは8となっています。同時再生が軽くなっているものの、人物、自動車などの認識スピードは遜色ないものになっています。
SoCのスペック的にはJetson TX1と同じNVIDIA Maxwell architectureで、CUDAが半分の128コアであるにもかかわらず、これだけのスムーズさでリアルタイム物体認識ができています。この性能で開発者用キットが$99で販売されているのは驚きです。
ラズパイを意識した作り
Jetson AGX Xavierの時の第一印象は「豪華なラズパイ」だと感じた筆者ですが、Jetson Nanoはラズパイの良いところをお手本にしたエントリーモデル、という感想です。
ハードウェアのサイズはラズパイのひと回り大きいくらいのサイズで、40pinのGPIOをはじめCSI、SDカードがそろっています。後述するセットアップ方法も過去のJetsonシリーズより敷居が下がっているので、Jetsonシリーズをはじめて使うのにはもってこいのモデルではないでしょうか?
セットアップはマイクロSDカードにイメージを焼くだけ
通常JetsonシリーズはセットアップにJetPackというツールをLinux Host PCから起動し、USB経由などでOSイメージやSDKを書き込んでいました。しかし、Jetson Nanoの場合はmicro SDカードにイメージを焼いてJetson Nanoに書き込むだけなので、Windows PCやMacを愛用しているユーザーもセットアップが可能です。Linux Host PCが不要という点でも初期導入時のハードルが下がっていると思います。
また、これはラズベリーパイのOS imageの書き込み方法と同じなので、ラズパイの経験者であればなおのこと迷うことはないでしょう。今回、筆者はWindows PCから「Win32DiskImager」というツールを使って書き込み作業を行いました。
OSイメージの書き込みが完了したら、Jetson Nanoのmicro SDソケットに差し込みHDMI、キーボード、マウスとmicro USBインターフェイスに電源を差し込むと起動が始まりubuntu18.04のセットアップに入ります。
セットアップが完了して、初回ログインすると以下のような画面になります。
各種ベンチマーク
それではJetson AGX Xavier同様にUnixBench5.1.3(https://github.com/kdlucas/byte-unixbench)でCPUのスピード計測を計測してみます。
今回はJetson Nanoの他,、RaspberiPi3+、Host PC、Jetson AGX Xavier(30Wモード)の3台で整数演算(Dhrystone)、浮動小数点演算(Whetstone)のベンチマークを比較してみます。
特にJetson Nanoとラズパイとの比較に注目すると、浮動小数点ではJetson Nanoが1.2倍程度の優位性ですが、整数演算に関しては5.8倍という大きな差になりました。
Jetson NanoはGPUがあるので、基本性能の整数演算に重きを置いてチューニングしてるのかもしれません。
機械学習以外の通常処理、たとえばubuntu18.04のデスクトップもストレスなく動いていますので、この辺が良い影響を与えていそうです。
次にGPU性能の計測を行いましょう。giexecというツールで学習モデルにGoogleNetを使って秒間何イメージ計算できるか計測した結果です。
Jetson AGX XavierだけDLA0、DLA1があるのは、GPU以外に2つのDeep Learning Acceleratorが搭載されておりgiexecでは同時計測できないため個別に計測して積み上げた形で比較しています。
GeForce GTX 1050 Ti搭載のホストPC、Jetson AGX Xavierと比較すると、Jetson Nanoの数値は当然低く出ていますが、それでも秒間80 image/secは出ています。実際にはカメラデバイスの転送やI/Oなどで、ここまでの性能は出ないと思いますが、Deep Stream SDKのデモを見た限りではかなりのポテンシャルがわかります。価格、消費電力を含めたコストパフォーマンスを加味すれば、とても評価は高いと感じています。
JetsonシリーズはSDKやライブラリも共通なので、はじめにJetson Nanoでプロトタイプを作成して、パフォーマンス要件に応じてJetson TX2やJetson AGX Xavierへとアップグレードしていくのがスマートな開発手法のように感じます。
実際に動かしてみた所感
今回、実際にJetson Nanoを動かしてみて、ハードの構成やセットアップ方法など予想以上にラズパイを意識して作りこまれていると感じました。また、Jetsonシリーズの持ち味であるエッジAIデバイスとしての性能の良さを残し、よい形で昇華した製品だと感じました。今までArduinoやラズパイで電子工作をしてきたメイカーズの人々にDeep Leaningを使ったAI機能を使ってほしいという本気度も伝わってくるように感じました。これは廉価な価格設定にも表れています。
またNVIDIAではJetsonシリーズ向けのAI関連ライブラリや、これから出てくるロボティクス向けのSDKである「Issac SDK」(アイザックSDK)も準備しているので、AIエッジのミニコンピューティング分野は今年はさらに熱を増しそうで楽しみです。
このあたりの情報はまた追ってお伝えしたいと思います!
ABOUT THE AUTHOR /
高橋一行Forex Robotics株式会社 代表取締役。AI、機械学習、ロボット、IoTなどのシステム開発を行いながら、コミュニティ活動やLTにも精力的に活動。 参加コミュニティ: 「ソフトバンクロボティクス公認コミュニティーリーダー」「 Creator's NIGHT eXtreme」 2020年のロボット業界を考える飲み会 共同主催 他