やってみた!

やってみた!

試したことを中心に、書評や興味のあること、思ったこととか

Jetson Nanoのセットアップ

NVIDIA Jetson Nanoを購入したので色々試してみます。

まずはセットアップ。以下はWINDOWSでの手順です。

1.micro SDカードの作成

  micro SDカードは32GB以上(64GB推奨)、スピードはUHS-1以上推奨です。

  • 次のリンク先からJetPackのSDカードイメージをダウンロードします。

 2019年10月現在、JetPackのバージョンは4.2.2 2019.8.26版、ダウンロード容量5GBあります。4.2.2ではメモリ使用量が改善され、DeepStream 4.0.1に対応、Dockerにもベータ版ですが対応しています。

  Jetson Download Center

  • 次のリンク先からSDカードフォーマッタをダウンロード、インストールしてフォーマットします。

  SD Memory Card Formatter for Windows

  •  Etcherをダウンロード、インストールしてSDカードに書き込みます。

  balenaEtcher - Home

  f:id:akifukka:20191010213842j:plain

2.Jetson Nanoの電源投入、初期化

  • micro SDカードをJetson Nanoに挿入します。


  f:id:akifukka:20191010222114j:plain

  • ディスプレイ、キーボード、マウス、wifi子機を接続します。キーボード、マウスはワイヤレス(logicool MK270等)が便利。
  • 5V4AのACアダプタ(センタープラス、5.5mm×2.1mm)で電源投入します。ジャンパーキャップでJ48をジャンパーするのを忘れずに。
  • マウスを操作してacceptにチェック、continue

  f:id:akifukka:20191010222726j:plain

  • 「ようこそ」、「キーボードレイアウト」画面で日本語を選択

    f:id:akifukka:20191010223118j:plain

  • wifi接続画面が出てくるので自宅のwifiに接続
  • 時計をTokyoに設定した後、ユーザ名、パスワードを設定します。忘れないように共にjetsonとしました。無事起動しました。

    f:id:akifukka:20191010223952j:plain

 3.JETCARDのインストール

 JETCARDをインストールします。JETCARDはNVIDIAの中の人が作ったセットアップ用のスクリプト集でJupyterLab、tensorflow、pytorchをインストールしてくれます。python3ベースです。swapfileの設定もしてくれます。

 全て込みのSDイメージもあるのですが、JetPackのバージョンがはっきりしない(たぶん古い)、キーボード日本語設定やらで多少コツが必要のため、SDイメージは使わず手動でインストールします。

  • ctrl+alt+dもしくはマウス右クリック、Open Terminalでターミナルを開きます。
  • JetPack 4.2.1用のJETCARDブランチをダウンロードします。-bはブランチです。最新のJetPack4.2.2にも問題なく適用できました。
    *2019/10/27修正 jetpack 4.2.2用が公開されました。

         git clone -b jetpack_4.2.2 https://github.com/NVIDIA-AI-IOT/jetcard

  • JETCARDのスクリプトを起動させます。<password>は初回起動時に設定したパスワードです。しばらくかかりますので一服しましょう。

         cd jetcard

         ./install.sh <password>

  • cudaへのpathを設定しておかないと後々、 "nvcc not found  build CUDA app Error"などに泣かされます。以下の2行を~/.bashrcに加えます。

         export PATH=${PATH}:/usr/local/cuda/bin

         export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/usr/local/cuda/lib64

 

   上記2行をviエディタで追加します。

         vi ~/.bashrc

 .bashrcの内容が表示されるので、最後の行に移動して i キーを押し 、矢印キーで右端に移動してEnterで改行してから上記2行を入力します。

 Escで入力モードから抜けて:(コロン)で左下に移動するので続けてwqを入力してEnterで書き込まれます。次のコマンドで.bashrcを再読み込みしてPATH設定完了です。次回以降はTerminalを起動する時に自動的に.bashrcが読み込まれます。

         source ~/.bashrc 

4.サンプルプログラムを動かしてみる

 cudaのサンプルを動かします。

  • /usr/local/cuda-10.0/samplesにcudaのサンプルがありますのでコピーしてmakeします。30分ほどで終了します。

         cd ~

         cp -a /usr/local/cuda-10.0/samples/ ./

         cd samples

         make -j4

  • 実行ファイルのあるフォルダ(~/samples/bin/aarch64/linux/release)に移ります。

         cd bin/aarch64/linux/release

 lsでフォルダにできあがった100以上のサンプルプログラムのリストが表示されます

  • ./ファイル名で実行されます。うにょうにょ。

         ./smokeParticles

   f:id:akifukka:20191011232756p:plain

  • ./volumeRender マウスで動かせます。

         f:id:akifukka:20191011232742j:plain

  • ./nbody -numbodies=20224

   ボディを増やしてみました。

  f:id:akifukka:20191011232749j:plain

  •  shift+PrintScreenで範囲を指定しての画面コピーがピクチャフォルダに作られます。
  • TerminalでIPアドレスを調べます。wifiならwlan0に表示されると思います。

          ifconfig

  •  同じネットワークに接続されているPCのウェブブラウザに上記で調べたアドレス+ポート8888を入力

          IPアドレス:8888

          例:192.168.2.109:8888

  • JETSON nano上のJupiterLabの画面が表示されるので、パスワード(JETSONに設定されているパスワードを入力。次の画面が表示されるので、、ピクチャ(赤で囲ったところ)をダブルクリック

   f:id:akifukka:20191011234253j:plain

  • ピクチャフォルダ内のファイルが表示されるので右クリックしてダウンロードを選ぶとパソコンにダウンロードされます。

   f:id:akifukka:20191011234954j:plain


5.まとめ

  • Jetson Nanoを最新のJetPack4.2.2でセットアップしてサンプルを動かしました。
  • JupitorLabを使ってJETSON nanoからファイルをダウンロードしました。

たったこれだけをまとめるのに、数日かかってしまいました。結構大変ですね。

ブロガーの皆さんご苦労様です・・・。

次回は先達様方を追いかけてdarknet YOLOv3-tinyを動かしてみます。

YOLO: Real-Time Object Detection

おしまい。

 Jetson Nano カテゴリーの記事一覧へ