本レポートは、2020年2月6日(木)にマクニカ品川オフィスで開催したイベント「[Jetson Nano ハンズオン] AIエッジコンピューター開発のための組み込みLinux講座」について、当日の様子をご紹介します。
本イベントは、弊社マクニカが主催となり、日本システム開発株式会社(以下NSK社)とエヌビディア合同会社(以下エヌビディア社)にご協力いただきました。
ハンズオンのアジェンダ
時間 |
講演タイトル |
講演者 |
10:00 - 10:05 |
開会のあいさつ |
株式会社マクニカ クラビスカンパニー 戸羽 健夫 |
10:05 - 10:20 |
Jetson製品アップデート |
エヌビディア合同会社 自律動作マシンプロダクトマネジメント テクニカルマーケティング マネージャー 橘 幸彦氏 |
10:20 - 15:55 |
Linux講座 - AIエッジコンピューター Jetsonを活用した製品開発フロー概要 - Linuxの基礎となるアーキテクチャー - Linuxディストリビューションにおけるソフトウェアコンポーネント - Linuxの歴史 - 「オリジナルUbuntu」と「JetsonシリーズUbuntu」の違い - 各レイヤの開発方法
ハンズオン - CPU/GPU 使い分けの基礎 - Jetson Nanoを使ったGPU活用 - Linuxにおける機能実装の選択肢 - デバッグ方法 |
日本システム開発株式会社(NSK) インテリジェントテクノロジー部 石原 正樹氏 |
15:55 - 16:00 |
閉会のあいさつ |
株式会社マクニカ クラビスカンパニー 戸羽 健夫 |
12:00-13:00はお昼休憩で、軽食を召し上がっていただきました。
なぜJetson Nano Linuxハンズオンを開催したのか?
冒頭はマクニカの戸羽よりご挨拶させていただきました。今回のイベントを企画した背景について、「AIエッジコンピューター開発の、本当の課題を知ってもらいたくて開催しました。近年、ハイパフォーマンスな小型コンピューターが次々とリリースされ、AIを活用したサービスがエッジコンピューター上で実現されている事例が増えました。AIモデルをエッジコンピューター上に実装する方法は、インターネット上で多く公開されており、様々な業種の企業が自社サービスを組み込み環境で実現しようと活動しています。
しかし、いざ組み込み環境へ実装しようとしてもPOCで終わってしまう会社も少なくありません。要因は複数あるものの、弊社がサポートしている中で感じた大きな要因の一つは、組み込み製品を作るための基礎知識が不足していることでした。
そこで、今回はAIエッジコンピューターをJetsonで製品化されたNSK社に講演いただき、組み込み開発に必要な基礎知識をお客様が習得できる機会を設けたいと考えました。」
ご参加いただいたみなさまの期待が、ぐっとあがった瞬間だったのではないでしょうか。

Jetson最新製品アップデート
エヌビディア社 橘様より、エヌビディア社の最新動向やJetson シリーズの最新製品Jetson Xavier NXについてなど、ここでしか聞けない情報をご紹介いただきました。

"I am ai"というキャッチフレーズから始まる動画をいくつかご紹介いただき、「一部の動画で使用されるBGMもAIによって作曲したものだ」、という大変面白いお話をいただきました。スマートシティーの実現に向けた交通量の判定、ドローン・サービスロボット、製造業の検査機器や建設機械など、様々な場面で活用されているエヌビディア製品ですが、今やクリエイターとしてもなくてはならない存在になっていることが分かりました。
最新製品紹介では、Jetson シリーズの最新情報をお話いただきました。すでにリリースされているハイエンドモデルJetson AGX XAVIERには、世界初の自律動作マシン用のハイパフォーマンスプロセッサが搭載されています。そのプロセッサチップをJetson Nanoとピンコンパチの小ぶりなフォームファクターに搭載されたのがJetson Xavier NXです。Jetson Nanoで開発を始めて、さらにスペックを求められる方には最適な製品です。

Linux講座、始まる!
NSK社 石原 正樹様は、Linuxアプリケーション開発に20年従事されてきたご経験を元に、AIエッジコンピューター開発者のための組み込みLinux講座の講師をしていただきました。およそ3時間にわたる講義でしたが、開発フローや専門用語、組み込みLinux開発で必要となる基礎知識を、丁寧に解説していただきました。

ハンズオン開始
今回のハンズオン実習に向けて、参加者のみなさまには事前に下記をご準備のうえご持参いただきました。
当日の持ち物
・ノートPC(Surface以外、Jetson Nanoの制御用)
・SDカード(64GB以上、Jetson Nano用OSインストール済み)
・Jetson Nano用ACアダプター(5V/4A以上推奨)
・マイクロUSB-USBケーブル
配布物
・Jetson Nano
・ソフトウェア書き込み済みのマイクロSDカード
いよいよJetson Nanoのキットを開封し、ご自身のPCと接続して実習が始まります。
講師やマクニカのサポートメンバーと相談しながら、またお隣同士の方で声を掛け合いながら、実習のテキストを元に進めていただきました。参加者のかたからいただいたご質問とあわせて実習の概要をご紹介します。
Jetsonの起動とPC接続
Jetson Nanoの給電方法
Jetson Nanoは初期状態でマイクロUSB給電の設定になっています。ソフトウェア処理の軽いアプリケーションの場合はUSB給電でも問題ありませんが、自動走行の処理や今回のハンズオンなどの処理負荷が重い場合は、ACアダプター給電をお勧めしています。ジャンパーピンで給電方法をACアダプターに変更し、始めていただきました。
PCとの接続
ご自身のPCとJetson NanoをUSBケーブルで接続する際、PCでJetson Nanoを認識しない場合がありました。このとき一度Jetson Nanoを起動し直すと、正常に起動しました。

画像処理プログラム(Sobel filter)を、CPU/GPUで実行
画像に含まれる境界部分を強調する画像フィルター処理を実行する、Sobel filterのサンプルプログラムを、まずはCPU上で実行しました。その後、GPUで実行するように変更し、その際のCPU/GPU使用率と性能差を確認しました。Sobel filterを1000回かけた計測時間と処理結果画像を比較すると、GPUの処理時間はCPUの約4倍に向上していました。

実習のテキストは1時間程で、全員が完了し順調に進みました。
実習内容の復習と補足
短い実習プログラムでは伝えきれないノウハウを、NSK社石原様より補足してくださいました。中でも、「CPU/GPU 使い分けの基礎」のセッションでは、GPU特有のプログラミング特性について、ホワイトボードを使って熱く解説いただきました。熱心にメモを取られている方も多く、GPUが得意とする画像フィルター処理、演算処理をCUDAに渡すときの制約や、効率よく実行させる方法などを説明いただきました。

組み込みLinux開発のサポートが必要でしたら、是非お問い合わせください
ハンズオンの様子をご紹介しましたが、いかがでしたでしょうか。
マクニカはエヌビディア社の製品販売代理店としてだけでなく、様々なパートナーと協業しお客様の課題解決のサポートをさせていただいております。Jetsonを活用した組み込み開発を始められる方でお困りのことがあれば、ぜひお問い合わせください。