昨年買った NVIDIA Jetson Nano の使用頻度が高くない理由は、はっきり言って時間がないからだと主張したいのですが、持っている情報が少なくて前へ進めないのかもしれない、とも感じています。そこで入門書(右)を買ってみました。
本についての第一の感想は、買って良かった良かった、ということです。一番の理由は、グラフィック関連とはいえいままでサンプルプログラムさえ試していなかったことに気づいたからなのですが、その他に基本的なことで知らなかったということがいくつもありました。そのひとつがスワップの領域を追加する設定です。
ふだん Fedora や CentOS を使っているから、というのは全くの言い訳になってしまうのですが、これらのディストロのインストーラは、デフォルトでストレージのパーティション設定に LVM を使っているため、容量の追加についての心配をしたことがありませんでした。
ところが、Jetson Nano 用の Ubuntu では(LVM は使用せず)スワップ領域が無い、あるいは 2GB しか設定されておらず、メモリ不足になる場合があるとのことです。買った入門書では、スワップ領域をファイルで追加していました。目から鱗です。いや、まあ、確かにできるよなあ、などと強がりを言っても試すしかありません。
ということで、自分の環境でスワップ領域を増やしたので備忘録にしました。使用環境は以下のとおりです。
Ubuntu 18.04 LTS | GNU/Linux 4.9.140-tegra aarch64 |
スワップ領域の追加
スワップ領域の現状は次のようになっています。
(venv) bitwalk@jetson-pc:~$ free total used free shared buff/cache available Mem: 4051216 1013848 1729228 20568 1308140 3226852 Swap: 2025600 0 2025600 (venv) bitwalk@jetson-pc:~$ /sbin/swapon -s ファイル名 タイプ サイズ 使用済み 優先順位 /dev/zram0 partition 506400 0 5 /dev/zram1 partition 506400 0 5 /dev/zram2 partition 506400 0 5 /dev/zram3 partition 506400 0 5
zram で 500MB ずつが 4 つ(ARMコア数分)、計 2GB がスワップ領域として確保されています。この領域はメモリ上にあります。
さらにスワップ領域をストレージ上に作りますが、とりあえず zram 分と同じ 2GB を /var/swapfile 作成して様子を見ることにします。
(venv) bitwalk@jetson-pc:~$ sudo dd if=/dev/zero of=/var/swapfile bs=1G count=2 [sudo] bitwalk のパスワード: 2+0 レコード入力 2+0 レコード出力 2147483648 bytes (2.1 GB, 2.0 GiB) copied, 28.1978 s, 76.2 MB/s (venv) bitwalk@jetson-pc:~$ sudo mkswap /var/swapfile mkswap: /var/swapfile: パーミッション 0644 は安全な値ではありません。 0600 をお勧めします。 スワップ空間バージョン 1 を設定します。サイズ = 2 GiB (2147479552 バイト) ラベルはありません, UUID=739207c1-88c1-4c2c-98d4-e35abb36cd49 (venv) bitwalk@jetson-pc:~$ sudo chmod 600 /var/swapfile
/etc/fstab を編集して、作成した /var/swapfile をマウントするようにします。
(venv) bitwalk@jetson-pc:~$ sudo vi /etc/fstab
下記の、黄色にマーキングした行を追加して保存します。
# /etc/fstab: static file system information. # # These are the filesystems that are always mounted on boot, you can # override any of these by copying the appropriate line from this file into # /etc/fstab and tweaking it as you see fit. See fstab(5). # #/dev/root / ext4 defaults 0 1 /var/swapfile none swap swap 0 0
swapon コマンドで /var/swapfile をスワップに追加します。
(venv) bitwalk@jetson-pc:~$ sudo swapon /var/swapfile
あらためてスワップ領域を確認しました。
(venv) bitwalk@jetson-pc:~$ free total used free shared buff/cache available Mem: 4051216 720708 1225392 19964 2105116 3211648 Swap: 4122748 232 4122516 (venv) bitwalk@jetson-pc:~$ /sbin/swapon -s ファイル名 タイプ サイズ 使用済み 優先順位 /dev/zram0 partition 506400 60 5 /dev/zram1 partition 506400 60 5 /dev/zram2 partition 506400 56 5 /dev/zram3 partition 506400 56 5 /var/swapfile file 2097148 0 -1 (venv) bitwalk@jetson-pc:~$
まとめ
インターネットから情報を得られるとは言え、調べかたが悪いと情報が偏る場合があります。ケチらずに必要な情報を効率的に集めるために、専門家のノウハウが詰まった書籍を買うことも重要です。今回、書籍の良さをあらためて認識しました。書籍といっても Kindle で欲しいときにすぐ読めます。😁
参考サイト
にほんブログ村
0 件のコメント:
コメントを投稿