Jetson nanoは、クアッドコアでGPUも搭載した高性能なコンピュータです。今後このコンピュータを動作させていく際に、プログラムなどを組んでAIによる制御などを行う時に気になるのが「負荷」です。負荷が多くかかると消費電力などにも影響するため、電池などで稼働させようと考えているときにはとても重要な指標になります。ここではその負荷の状況を見るための便利なコマンドの入手方法をご紹介します。
※クアッドコアー4つのCPUで1つのCPUとして計算しているようなイメージ
2つの方法を紹介しますが、結論から言うと「jtop」というコマンドを入手してインストールしておくことで、とても見やすくなりますので、先にそちらを紹介します。
「jtop」コマンドの入手とインストール
jtopコマンドはシェル上で動作する、Jetson nanoのCPUやGPUの稼働状況やRAMの使用率、チップの温度などコンピュータの様々な負荷情報を一覧表示で見やすく表示してくれます。jtopコマンドはjetson-statsとうプログラムを実行するためのもので、これはPythonで記述されているため、Pythonで作られたプログラムをインストールするための「pip」というパッケージのインストールが先に必要です。
python-pipをインストール
まずはpython-pipをインストールするために以下のコマンドを端末(terminal)に入力します。
~$ sudo apt install python-pip
このコマンドは管理権限での実行ですからパスワードの入力を求められますので管理者パスワードを入力して「Enter」で進みます。インストールをすすめるとディスク容量の確認があるので[Y/n]の問いに対してyまたは空欄のままEnterを押します。
インストールが完了したら続けてpipコマンドにて「jetson-stats」をインストールします。
jetson-statsのインストール
~$ sudo -H pip install jetson-stats
sudoの後に-Hというオプションを付けたのは環境変数を管理者のものでインストールしようと思ったのでこのようにしました。そうでないとpipのキャッシュがパーミッションの関係で利用できないというエラーが出てしまいます。
これで、コマンドにjtopと入力すれば、現在の負荷情報が表示されます。
~$ jtop
jtop画面の詳細(ALL表示)
jtopコマンドを流すと以下のように細かく詳細が表示されています。0.5秒ごとにデータが交信されるため、視覚的にリアルタイムで負荷状況が把握できます。
- CPU1~CPU4はクアッドコアのCPUであるため、それぞれのコアの稼働状況が表示されます。
- Mem はメモリの使用量でJetson nanoは4GB搭載していてそのうち何%使っているかが見れます。
- Swpは仮想メモリのような場所でデフォルトで2GBが設定されています。EMCは外部のメモリコントローラの仕様状況です。
- GPU:GPUの使用率
- Disk:ディスク容量をどれくらい消費しているかが表示されています。(今回は64GBのSDカードの内容が表示されています。)
これらの情報の下にはCPUやGPUの温度[Temp]や消費電力[Power/mW]とその平均値[AVr]などが表示されています。
GPU表示
キーボードの「2」キーを押すと、より詳しく時系列のGPUの状況をグラフ化してみる事が可能です。
CTRL表示
キーボードの「3」キーを押すとコントローラー表示になり、FANの稼働状況やNVPmodelの設定などにより電源の詳細が見れます。
INOFO表示
キーボードの「4」キーを押すと、JETSON NANOで使われているシステムのバージョンやソフトウェアなどのフレームワークのバージョンなどの一覧を見る事ができます。
「Q」キーを押せば元のコマンド入力待ち状態に戻ります。
[adcode]
標準搭載の「tegrastats」コマンド
terminalに「tegrastats」コマンドを入力して実行
端末(terminal)を起動して以下のように「tegrastats」コマンドを実行すると1秒ごとにログが出力されます。
~$ tegrastats
これは、デスクトップ画面右上の「MAXN」メニューの「RUN TEGRASTATS」からも同様に実行できます。
自作のプログラムを動作させる場合などはコンピュータにどれくらい負荷をかけているのかなどを見ていく事も重要です。jtopコマンドは最初のうちに入れておくようにしましょう。