6
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

jetsonで深層学習をする環境を整える

Last updated at Posted at 2021-03-29

#はじめに

  • jetsonはarmアーキテクチャなので環境構築が面倒くさい
  • nvidia公式のjetson用深層学習イメージがある nvidia NGC
  • vscodeを使って快適に開発を行いたい

#流れ

  • vscodeのインストール
  • vscodeにdocker extentionをインストール
  • dockerhubからimageをpullする
  • コンテナを立ち上げる
  • vscodeでコンテナにアタッチする

#vscodeのインストール
ここからダウンロードしてインストールできます.
Screenshot from 2021-03-29 17-01-26.png
jetsonはarmアーキテクチャなのでARM64を選択してください

#docker extentionのインストール
vscodeの拡張機能からdockerをインストールします.
Screenshot from 2021-03-29 17-14-52.png

#imageをpullする
nvidia NGCからjetson用のimageをpullします.今回はpytorchを使いたいのでこれを使います.
jetpackのバージョンに合わせないといけないのでjetpackのバーションを確認します

> dpkg-query --show nvidia-l4t-core
nvidia-l4t-core	32.4.4-20201016123640

このバージョンにあったものをpullします

docker pull nvcr.io/nvidia/l4t-pytorch:r32.4.4-pth1.6-py3

#コンテナを立ち上げる
ターミナルから

docker run --rm --runtime nvidia --network host -v /home/user/project:/location/in/container nvcr.io/nvidia/l4t-pytorch:r32.4.4-pth1.6-py3

と入力するとコンテナが立ち上がります
--rm はコンテナ終了時に自動的にコンテナを削除するコマンド (削除したくない場合は--rmコマンドをつけない)
--runtime nvidia これをつけるとjetsonのcuda環境をdockerに提供することができる
-v : 左がマウントしたいホストのファイルパス(絶対パスでないといけないらしい)。右がコンテナ内のファイルの置き場。

Screenshot from 2021-03-18 19-14-19.png

docker extentionからもコンテナが立ち上がっていることが確認できる.

#vscodeでコンテナにアタッチする
vscodeのdocker extensionからcontainersの起動中のコンテナ上で右クリックしattach visual studio code を選択
Screenshot from 2021-03-18 19-35-08.png

vscodeで開発する環境が整いました

#実際に動くかの確認
GPUが認識されているか確認しましょう

import torch
# GPUの確認
use_cuda = torch.cuda.is_available()
print('Use CUDA:', use_cuda)

実行結果は以下のようになります

Use CUDA: True

dockerコンテナでGPUを使った深層学習の開発ができます.

6
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?