Skip to content

Instantly share code, notes, and snippets.

@wtakuo
Last active January 10, 2024 01:22
Show Gist options
  • Save wtakuo/3f46b2e0a010092176785edfc3238e13 to your computer and use it in GitHub Desktop.
Save wtakuo/3f46b2e0a010092176785edfc3238e13 to your computer and use it in GitHub Desktop.
Jetson設定メモ

Jetson開発キット設定メモ

関連リンク

SDカード関連

セットアップ

セットアップ後の作業

SDカードイメージのサイズを小さくするため,セットアップ直後はmanページ等が入っていない. 以下を実行してインストールする.

sudo unminimize

アップデート

aptコマンドを用いる.

sudo apt update
sudo apt upgrade -y

バージョン確認

Jetpackのリリース番号等の確認

cat /etc/nv_tegra_release

パッケージの情報

apt show nvidia-jetpack

より詳細な情報の確認

git clone https://github.com/jetsonhacks/jetsonUtilities.git
cd jetsonUtilities
python jetsonUtilities.py

起動モードの設定

非GUIモード(コマンドラインモード)で起動すると使用メモリの節約になる.

非GUIモードで起動する設定(ヘッドレスで使う場合はこちら)

sudo systemctl set-default multi-user.target

GUIモードで起動する設定(ディスプレイとキーボード,マウスが必要)

sudo systemctl set-default graphical.target

現在の設定を確認

systemctl get-default

非GUIモードからGUIモードを起動

sudo systemctl start gdm3.service

最初のセットアップはGUIモードが楽. WiFiの設定や不要なソフトウェア(LibreOffice等)の削除を行う. WiFiを使わない場合はコントロールパネルで無効にしておく.

リモート接続

JetPackにはAvahi daemonが最初から入っている. これによりマルチキャストDNS(mDNS)が利用可能になるため,同一ネットワーク内ではセットアップ時に設定したホスト名(仮にmyjetsonとしておく)に.localをつけたアドレス(myjetson.local)でアクセスできる.

VSCodeの Remote-SSH 拡張も利用可能.

パワーモデルとクロックの設定

パワーモデル

コア数やクロック等の設定の組をパワーモデルという. GUIモードの場合はメニューから設定できる. パワーモデルの設定は電源を切っても維持される.

現在のパワーモデルを確認

sudo nvpmodel -q

パワーモデルを2(15W, 6コア)に設定

sudo nvpmodel -m 2

パワーモデルの番号(Jetson Nano)

  • 0: MAXN
  • 1: 5W

パワーモデルの番号(Jetson Xavier NX)

  • 0: MODE_15W_2CORE
  • 1: MODE_15W_4CORE
  • 2: MODE_15W_6CORE
  • 3: MODE_10W_2CORE
  • 4: MODE_10W_4CORE
  • 5: MODE_10W_DESKTOP

パワーモデルの番号(Jetson AGX Xavier)

  • 0: MAXN (8 cores)
  • 1: MODE_10W (2 cores)
  • 2: MODE_15W (4 cores)
  • 3: MODE_30W_ALL (8 cores)
  • 4: MODE_30W_6CORE
  • 5: MODE_30W_4CORE
  • 6: MODE_30W_2CORE
  • 7: MODE_15W_DESKTOP (4 cores)

パワーモデルの定義は /etc/nvpmodel.conf に書かれている. このファイルを編集してパワーモデルの変更や追加が可能.

クロック

CPU/GPUのクロックは負荷によって変動する. クロックの最小・最大値はパワーモデルで定義されているが,以下のコマンドでクロック数を最大値に固定することができる.

sudo jetson_clocks 

現在のクロック数の設定を確認する

sudo jetson_clocks --show

ベンチマークを取る場合はjetson_clocksでクロック数を最大値に固定する.

nvpmodelでパワーモデルを変更するとjetson_clocksの効果(クロックを最大値に固定)を無効にできる.

システムステータス

CPU/GPUを含むシステム状態の表示

tegrastats

デフォルトでは1秒間隔.--interval 5000 で5秒間隔になる.

サンプルプログラム

ほとんどのサンプルプログラムはGUIモードで(HDMI端子にディスプレイを接続して)実行する必要がある. 外部Xサーバから接続したり,VNCやリモートデスクトップで接続した場合,コンパイルはできるが実行に失敗する.

CUDAのサンプルプログラムのコンパイルと実行例

cp -a /usr/local/cuda/sample .
cd samples/5_Simulations/nbody 
make
./ndoby
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment