NVIDIA Jetson Nano 開発者キットは、組込み設計者や研究者、個人開発者がコンパクトで使いやすいプラットフォームに本格的なソフトウェアを実装して最先端の AI を活用できるようにするコンピューターで、64 ビット クアッドコア ARM CPU と 128 コアの NVIDIA GPU により 472 GFLOPS の演算性能を発揮します。
偶然 Amazon.jp で見つけて、9 月の後半三連休にセットアップしようと即注文してしまいました。使いこなせるようになるまでの試行錯誤をまとめていきます。
Jetson Nano 開発者キットとは
GPU Technology Conference (GTC) 2019 において、NVIDIA が発表した Jetson Nano 開発者キットは、組込み設計者や研究者、個人開発者がコンパクトで使いやすいプラットフォームに本格的なソフトウェアを実装して最先端の AI を活用できるようにするコンピューターです。Jetson Nano は 64 ビットクアッドコア ARM CPU と 128 コアの NVIDIA GPU を搭載しています。
新たにリリースされた JetPack 4.2 SDK は、Ubuntu 18.04 をベースとした Jetson Nano 向けの包括的なデスクトップ Linux 環境を実現し、NVIDIA CUDA Toolkit 10.0 に対応しているほか、cuDNN 7.3 や TensorRT 5.0 といったライブラリを備えています。さらに、この SDK により、TensorFlow や PyTorch, Caffe, Keras, MXNet といったオープンソースの広く普及している機械学習 (ML) フレームワークだけでなく、OpenCV や ROS のようなコンピュータービジョンおよびロボティクス開発のためのフレームワークもネイティブにインストールすることができます。
NVIDIA Jetson Nano 開発者キットの技術仕様と I/O の仕様を、参考サイト [2] より抜粋しました。
技術仕様
GPU | 128 基の NVIDIA CUDA® コアを実装した NVIDIA Maxwell™ アーキテクチャ | |
CPU | クアッドコア ARM® Cortex®-A57 MPCore プロセッサ | |
メモリ | 4GB 64 ビット LPDDR4 | |
ストレージ | 16GB eMMC 5.1 フラッシュ | |
ビデオ エンコード | 4K @ 30 (H.264/H.265) | |
ビデオ デコード | 4K @ 60 (H.264/H.265) | |
カメラ | 12 レーン (3x4 または 4x2) MIPI CSI-2 DPHY 1.1 (1.5 Gbps) | |
コネクティビティ | ギガビット イーサネット | |
ディスプレイ | HDMI 2.0 または DP1.2 | eDP 1.4 | DSI (1 x2) の 2 つ同時 | |
UPHY | 1 x1/2/4 PCIE、1x USB 3.0、3x USB 2.0 | |
I/O | 1x SDIO / 2x SPI / 4x I2C / 2x I2S / GPIOs | |
サイズ | 69.6 mm x 45 mm | |
コネクタ | 260 ピン エッジ コネクタ |
開発者キット I/O
USB | 4x USB 3.0、USB 2.0 Micro-B | |
カメラ用コネクタ | 1x MIPI CSI-2 DPHY レーン | |
コネクティビティ | ギガビット イーサネット、M.2 Key E | |
ストレージ | microSD (別売) | |
ディスプレイ | HDMI 2.0 および eDP 1.4 | |
I/O | GPIO、I2C、I2S、SPI、UART |
Jetson Nano 開発者キットは本体ボードのみです。OS (Ubuntu Linux) は、インターネットに接続された PC (Windows/MacOS/linux) で microSD カードにイメージを書き込んでから、本体に挿入して使用します。キーボード&マウス、ディスプレイ、Micro-USB の電源は別に用意する必要があります。
Jetson Nano 開発者キットに含まれているもの
- Jetson Nano 開発者キット(本体)
- スタート/サポートガイド
- 紙製の設置台
Jetson Nano 開発者キットに含まれていないもの
- microSD カード(最低 16GB UHS-1)
- USB キーボード&マウス
- ディスプレイ (HDMI or DP)
- Micro-USB 電源 (5V⎓2A)
OS の準備
参考サイト [5] に従って、Jetson Nano 開発者キット用の OS (Ubuntu) を準備します。必要なものは以下のとおりです。
- OS イメージ (jetson-nano-sd-r32.2-2019-07-16.zip → sd-blob-b01.img)
- 参考サイト [5] で、Jetson Nano Developer Kit SD Card Image のリンクから zip ファイルをダウンロードして、解凍しておきます。
- microSD カード(最低 16GB UHS-1)
- ストレージの容量をあまり気にせずにいろいろ使いたいので、Sandisk の 128GB の microSDXC を用意しました。
- インターネットに接続された PC (Windows/MacOS/Linux)
- OS イメージを SDカードに書き込むソフトウェア balenaEtcher
- 自宅では Windows PC を利用できないので、メインの Linux PC (Fedora 31 beta) に、Linux x64 版の balenaEtcher (v1.5.57) をダウンロードして解凍して使いました。
balenaEtcher によるイメージの書き込み
ダウンロードしたファイルの解凍して、balenaEtcher を起動します。なお、イメージはダウンロードする zip ファイルのサイズが約 5.1GB、解凍後のイメージサイズが約 12GB あります。
$ ls balena-etcher-electron-1.5.57-linux-x64.zip jetson-nano-sd-r32.2-2019-07-16.zip $ unzip jetson-nano-sd-r32.2-2019-07-16.zip Archive: jetson-nano-sd-r32.2-2019-07-16.zip inflating: sd-blob-b01.img $ unzip balena-etcher-electron-1.5.57-linux-x64.zip Archive: balena-etcher-electron-1.5.57-linux-x64.zip inflating: balenaEtcher-1.5.57-x64.AppImage $ ./balenaEtcher-1.5.57-x64.AppImage ready-to-show: 2276.828ms Checking for update Update for version 1.5.57 is not available (latest version: 1.5.57, downgrade is disallowed). ... ...
Select Image をクリックしてsd-blob-b01.img を指定すると、書き込み先候補が表示されます。
この場合、一つの候補しかないのでそのまま Continue をクリックします。Flash! をクリックすると SD カード(USB スティック)にしては容量が大きすぎるという警告がでますが、構わず Continue をクリックします。
書き込みが始まり、終わると書き込んだ内容の確認が始まります。
イメージの書き込みが無事終了しました。
microSD カードをアンマウントして取り出し、Jetson Nano 開発者キットに挿入します。
ディスプレイ、キーボード、マウスを接続、Micro-USB [5V⎓2A]で給電すると、Ubuntu の起動が始まります。最初の起動では、下記を設定後、ログインになります。
- NVIDIA Jetson software の EULA の内容を確認・承諾
- システムで使用する言語の選択と、キーボードのレイアウト、タイムゾーンの設定
- ユーザーネーム、パスワード、コンピューター名の設定
- ログイン
USB 2.0 の Wi-Fi 無線 LAN 子機を挿して、デスクトップ PC (Fedora 31 beta) から ssh でリモートログインして、リソースを確認しました。
[bitwalk@fedora-pc ~]$ ssh -X 192.168.0.28 The authenticity of host '192.168.0.28 (192.168.0.28)' can't be established. ECDSA key fingerprint is SHA256:BwUqkaWycDsugD+6Zannl3lffsiHS15ojwU1MMVia+0. Are you sure you want to continue connecting (yes/no/[fingerprint])? yes Warning: Permanently added '192.168.0.28' (ECDSA) to the list of known hosts. bitwalk@192.168.0.28's password: Welcome to Ubuntu 18.04.2 LTS (GNU/Linux 4.9.140-tegra aarch64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage This system has been minimized by removing packages and content that are not required on a system that users do not log into. To restore this content, you can run the 'unminimize' command. 261 個のパッケージがアップデート可能です。 133 個のアップデートはセキュリティアップデートです。 The programs included with the Ubuntu system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. /usr/bin/xauth: file /home/bitwalk/.Xauthority does not exist To run a command as administrator (user "root"), use "sudo". See "man sudo_root" for details. bitwalk@jetson:~$ cat /etc/os-release NAME="Ubuntu" VERSION="18.04.2 LTS (Bionic Beaver)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 18.04.2 LTS" VERSION_ID="18.04" HOME_URL="https://www.ubuntu.com/" SUPPORT_URL="https://help.ubuntu.com/" BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" VERSION_CODENAME=bionic UBUNTU_CODENAME=bionic bitwalk@jetson:~$ df -h Filesystem Size Used Avail Use% Mounted on /dev/mmcblk0p1 118G 11G 102G 10% / none 1.7G 0 1.7G 0% /dev tmpfs 2.0G 13M 2.0G 1% /dev/shm tmpfs 2.0G 38M 1.9G 2% /run tmpfs 5.0M 4.0K 5.0M 1% /run/lock tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup tmpfs 396M 20K 396M 1% /run/user/120 tmpfs 396M 156K 396M 1% /run/user/1000 bitwalk@jetson:~$
欲を言えばパーティションを細かく設定したかったところですが仕方がありません。当面はストレージの容量を気にせずに使えそうです。
まとめ
長い間 Linux を使ってきましたが、廉価な PC に Linux をインストールすることはあっても、Raspberry Pi のようなシングルボードコンピュータには手を出しませんでした。シングルボードコンピュータは ARM 系 CPU を採用しているものが多く、廉価なものが多いので ARM 版の Linux に触れるには打ってつけだったのですが、手を出すだけの動機を持てずにいました。
NVIDIA Jetson Nano 開発者キットは、ディープラーニングに使うという明確な動機があったので、即決で買ってしまいました。そういうわけで、シングルボードコンピュータ初心者の取り組みをシリーズにしてまとめていきます。
参考サイト
- Jetson Nano であらゆる人が AI コンピューティングの利用が可能に | NVIDIA [2019-04-02]
- モダン AI のパワーを数百万のデバイスへ - NVIDIA Jetson Nano
- 小型の最新AIコンピュータ「NVIDIA Jetson Nano」レビュー(1) 開封の儀 | ロボスタ [2019-03-25]
- まずは「Jetson Nano」の電源を入れて立ち上げる (1/2) - MONOist(モノイスト) [2019-05-30]
- Getting Started With Jetson Nano Developer Kit | NVIDIA Developer
0 件のコメント:
コメントを投稿