Jetson AGX Xavier開発者キットでHシリーズNVMe SSDを使う!

Jetson AGX Xavier開発者キットでHシリーズNVMe SSDを使う!

この記事で紹介している製品

はじめに

 NVIDIA社の組込み用AIコンピューティングプラットフォームJetsonシリーズには、M.2 SSDを装着可能な開発者キットがラインナップされています。

 このJetsonシリーズが使われるようなエッジデバイスでのAIコンピューティング(エッジAIコンピューティング)ではより大容量でより高性能なストレージの必要性も増しており、NVMe SSDはこの要求に応えられるものと期待されます。

 そこで今回、NVMe SSDを装着可能なJetson AGX Xavier開発者キットに当社製HシリーズNVMe SSDを装着して、(1) HシリーズNVMe SSDをシステムドライブとして使用しJetson用のソフトウェアキットJetPackをインストール、(2) HシリーズNVMe SSD内の動画を対象にJetPack同梱ソフトウェアを使用した物体認識が問題なくできること、の2点を確認しました。

 なお、この記事に記載の実験結果は当社の実験環境で得られた結果であり、どのような環境でもこの結果が得られることを保証するものではありません。ご注意ください。

まとめ

  • Jetson AGX Xavier開発者キットに当社製HシリーズM.2 NVMe SSDを装着して動作を確認した
  • NVMe SSDの性能と容量はエッジAIコンピューティングに適していると考えられる

NVMe SSDを装着する際の注意

 Jetson AGX Xavier開発者キットは、Jetson AGX Xavierを搭載した「Jetsonモジュール」と、NVMe SSDを装着するM.2スロットなどを備えた「キャリアボード」の2つから構成されています。

components of Jetson AGX Xavier developer's kit
図:Jetson AGX Xavier開発者キットのJetsonモジュールとキャリアボードを分離した様子

 写真中、右側(青枠)がJetson AGX Xavierモジュールとヒートシンクと冷却ファンから成るJetsonモジュール、左側(緑枠)がキャリアボードです。そしてキャリアボード中央付近(黄枠)がM.2 SSDです。Jetsonモジュールとキャリアボードを接続している黒いケーブルはおそらく冷却ファン制御用のケーブルです。

 Jetson AGX Xavier開発者キットのJetsonモジュールとキャリアボードは写真内に見える高密度コネクタで接続されており分離時は力をかけて引きはがしますが、その際に上記黒いケーブルとコネクタを傷めないよう気をつける必要があります。

 本節では、このキャリアボードにM.2 NVMe SSDを装着する際の注意を3点説明します。

注意点1:片面実装のM.2 SSDのみ装着可能

 このキャリアボードには片面実装のM.2 SSD(サイズは2280)のみ装着可能です。

 M.2 SSDには片面実装と両面実装の2種類存在します。両面実装の製品のほうが厚いです。この厚さのため、Jetson AGX Xavier開発者キットのキャリアボードには片面実装のM.2 SSDのみ装着可能です。

 当社製HシリーズM.2 NVMe SSDは最大容量の1,920 GBモデルでも片面実装ですので、本キャリアボードに装着可能です。実際、今回の動作確認でも1,920 GBモデルを使用しました。

注意点2:ヒートシンク装着不可

 SSDにはヒートシンクを装着できません。

 最近のNVMe SSDには、発熱対策用ヒートシンクを装着した状態で販売されている製品もあります。しかし、前節でご紹介した通りキャリアボードのM.2スロットには厚さの制約があるため、SSD用ヒートシンクの装着はできません。

 一方で、Jetsonモジュール(写真内青枠部)には冷却ファンと巨大なヒートシンクがあります。装着したM.2 SSDの部品実装面はこの冷却機構により十分な放熱および冷却効果が得られるため、別途ヒートシンクを装着する必要はありません。

注意点3:装着時に「ななめに挿入」しない

 M.2スロットにデバイスを装着する際、まずコネクタをスロットにななめに挿入し、次にデバイスの端を押しつけて基板の固定用ネジ穴に合わせる、という手順が一般的かと思います。

 しかしこのキャリアボードの場合、「ななめに挿入」する必要がありません。デバイスを基板面に平行に保ちながらコネクタをスロットに挿入することで装着可能です。日頃からM.2デバイスの装着に慣れていればいるほど戸惑いますので注意が必要です。

NVMe SSDへのJetPackインストール

 NVMe SSDを装着したら、次は開発者キットにJetPackをインストールします。今回の動作確認では、当時最新のJetPack 5.0.1 Developer Preview (DP)を選択しました。

 開発者キットのセットアップとJetPackのインストールは、それぞれNVIDIAの公式動画NVIDIAの公式ドキュメントが参考になります。

 最近のJetson開発者キットであれば、JetPackのインストールとそれに付随する処理はSDK Managerと呼ばれるツールで実行可能です。SDK Managerの指示通りに手順を進めればインストールできます。

 Jetson AGX Xavier開発者キットのJetPackインストール先デバイスは、標準ではeMMCとなります。このため、下図橙枠部分のようにインストール先としてNVMe SSDを指定します。

selecting an NVMe drive for installing JetPack
図:JetPackのインストール先としてNVMeドライブを指定する(画像は一部加工しています)

 JetPackインストール後に確認すると下図の通りでした。システムドライブの容量が2 TBと表示されています(下図中橙枠内)。

screenshot of "disk management" dialog in JetPack installed on NVMe drive
図:NVMe SSDにJetPackをインストールした様子(画像は一部加工しています)

 なおJetPackのインストール時、標準的な手順では、カーネルなどの基本的なソフトウェアのインストール後に各種ソフトウェア(パッケージ)をインターネットから取得して更新します。

 Jetsonが搭載するプロセッサ(CPU)はARMコアですので、取得するパッケージもARMコア向けにビルドされたものとなります。しかし、ARMコア向けにビルドされたパッケージを取得可能なサーバ(ミラーサイト)が少なく、このソフトウェア更新にとても時間がかかる可能性があります。所要時間はお使いのネットワーク環境に依存しますが、作業時間の見積もりにはご注意ください。

 ダウンロード元のミラーサイトを手動で変更するのもひとつの方法です。

NVMe SSD内の動画で物体認識

 インストールしたJetPackには、機械学習の代表的な複数のネットワークとそれらネットワーク向けの学習用データが準備されており、Jetsonを利用した機械学習処理を容易に実行できます。用意されている機械学習アルゴリズムの具体的な名称や特徴および詳細については、GitHub上のドキュメントをご参照ください。

 今回は、動作確認用に表のような動画を作成してNVMe SSD上に保存し、これらの動画に対して物体認識処理を実行しました。動画の撮影場所はオフィス周辺です(スマートフォンで撮影)。

解像度フレーム
レート(fps)
動画
コーデック
ビットレート
(Mbps)
ファイル
サイズ
動画長
(分)
動画(1)4K
(3840 x 2160)
30H.264402.78 GB10
動画(2)フルHD
(1920 x 1080)
60H.264181.19 GB10
動画(3)フルHD
(1920 x 1080)
30H.26512608 MB7
物体認識テスト用動画仕様

 物体認識プログラムは入力(認識処理対象)の動画に対して物体認識を行いその結果を動画ファイルとして出力します。その出力された動画から切り出した画像が下図になります。

図:Jetson上で実行したJetPack同梱物体認識プログラムによる処理結果例(使用した動画は表中(2))

 事前学習で使用されたデータセットの偏りのためか認識率はそこまで良くありませんが、冷却ファンを回さずに軽々とこの物体認識処理をこなすJetsonのパワーを再認識しました。

 さらに、NVMe SSDに保存した前表の3動画全てに対して同時に物体認識プログラムを走らせて、NVMe SSDの温度をS.M.A.R.T.属性から読み出した結果が下図になります。処理時間は1時間(動画をループさせる)、物体認識処理結果の動画(上図のような動画)もNVMe SSDに書き込み続けている状態での観測になります。

図:3動画同時物体認識処理実行時のNVMe SSDの温度変化

 この図の通り、3動画同時に読み出して認識結果動画を書き込む程度では、SSDの温度は摂氏51度程度までしか上昇していません。

 今回、3動画同時読みだし+物体認識結果3動画同時書き込み、という負荷をNVMe SSDにかけましたが、合計ビットレートはおよそ140 Mbps(≒ 17.5 MB/s)程度であり、他の処理による突発的な負荷を考慮してもNVMe SSDであれば十分な余裕を持ち対応できるバンド幅であることが、この程度の温度上昇で済んだ要因として考えられます。

 もちろん、Jetson開発者キットが備える大きなヒートシンクによる冷却効果も要因の一つです。

おわりに

 この記事では、Jetson AGX Xavier開発者キットに当社製HシリーズM.2 NVMe SSDを装着し、NVMe SSDへのJetPackインストール、および学習済みネットワークとJetPack同梱の物体認識プログラムを使用した動画内物体認識、という動作確認の実施結果をご紹介しました。

 エッジAIコンピューティングの計算能力向上と扱うデータサイズの増大に伴い、ストレージに求められる性能やサイズも増しており、ますますNVMe SSDが注目されています。この記事がJetsonモジュールと組み合わせて使用するストレージの選定において参考になれば幸いです。

 なお、Jetsonシリーズの最新機種Jetson Orinシリーズが先日発売されました。このJetson Orinシリーズの開発者キットを使用した今回と同様の動作確認も実施予定です。

他社商標について
記事中には登録商標マークを明記しておりませんが、記事に掲載されている会社名および製品名等は一般に各社の商標または登録商標です。

記事内容について
この記事の内容は、発表当時の情報です。予告なく変更されることがありますので、あらかじめご了承ください。

お問い合わせ