[PYTHON] Verwendung von Chainer mit Jetson TK1

1. Monitor- und Tastaturverbindung

(Unterstützt nur HDMI)

2. Schalten Sie das Gerät ein

3. Stellen Sie die Tastatur auf Japanisch

sudo dpkg-reconfigure keyboard-configuration

4. Grundeinstellung

Auf dem Ubuntu-Bildschirm Einloggen Führen Sie das Installationsprogramm aus

cd ~/NVIDIA-INSTALLER
sudo ./installer.sh
sudo reboot

Nach dem Neustart können Sie Ubuntu in der GUI verwenden.

5. Aufbau der mütterlichen Umgebung (Ubuntu 14.04)

Es scheint, dass das Jetson TK1-Entwicklungskit nur von Ubuntu 14.04 installiert werden kann. Installieren Sie daher Ubuntu 14.04 in der Virtual Box.

Einführung des Erweiterungspakets, damit USB in der Virtual Box verwendet werden kann https://www.virtualbox.org/wiki/Downloads

Siehe unten, wenn Sie die Bildschirmauflösung erhöhen möchten http://mogi2fruits.net/blog/os-software/windows/2389/

6. Machen Sie Tk1 von der Mutter Ubuntu erkannt

Verbinden Sie Mac und TK1 mit einem USB-Kabel, halten Sie die Force Recovery-Taste gedrückt und drücken Sie die Reset-Taste. Wenn der Bildschirm schwarz wird, können Sie im Wiederherstellungsmodus starten. In diesem Zustand über Virtual Box-Einstellungen → Port → USB Wenn Sie rechts auf das zusätzliche USB-Aincon klicken und die Zeichen "NVIDIA Corp. ~" angezeigt werden, können Sie es von Ihrem Mac aus erkennen. (Wenn Sie zu diesem Zeitpunkt nicht einmal auf "NVIDIA Corp. ~" klicken und es überprüfen, können Sie es vom Host Ubuntu nicht sehen. Seien Sie also vorsichtig.)

7. Laden Sie Jetpack für L4T herunter

https://developer.nvidia.com/embedded/jetpack

8. Erteilen Sie die Ausführungsberechtigung

Außerdem scheint die Ausführung im japanischen Verzeichnis fehlgeschlagen zu sein Erstellen Sie ein englisches Verzeichnis und verschieben Sie Dateien oder erteilen Sie die Ausführungsberechtigung.

chmod +x jetpack-${VERSION}.run

9. Führen Sie aus

Führen Sie das heruntergeladene Jetpack aus.

Unterwegs werden Sie nach dem Netzwerklayout gefragt. Ich konnte es normal mit "Gerätezugriff auf das Internet über Router / Switch" machen. (Es ist erforderlich, die Netzwerkumgebung des PCs anzupassen.)

Wenn das Blinken beendet ist, wird Jetson neu gestartet und der normale Bildschirm wird angezeigt.

Da der Bildschirm mit den Informationen zum Eingabegerät auf der Mutterseite angezeigt wird, Stellen Sie die Jetson-IP ein. (Verwenden Sie arp-scan, um die verbundene IP zu identifizieren.)

sudo arp-scan -I xxxx -l

Wenn Sie gut vorgehen, ist das L4T-Setup abgeschlossen. (Beenden Sie das Programm, wenn die GUI auf dem Jetson-Bildschirm angezeigt wird.)

10. Stellen Sie in Jetson eine feste IP für ssh ein

Fügen Sie Folgendes zu / etc / network / interfaces hinzu

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 192.168.xxx.xxx
netmask 255.255.255.0
gateway 192.168.xxx.xxx
dns-nameservers 192.168.xxx.xxx

Neu laden

sudo /etc/init.d/networking restart

Jetzt haben Sie eine feste IP.

11.git installieren

Bitte geben Sie Folgendes ein https://git-scm.com/book/ja/v1/%E4%BD%BF%E3%81%84%E5%A7%8B%E3%82%81%E3%82%8B-Git%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB

12. Aufbau der Python-Umgebung

Installieren Sie pyenv

git clone https://github.com/yyuu/pyenv ~/.pyenv

Installation abhängiger Bibliotheken

sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev
sudo apt-get install -y libreadline-dev libsqlite3-dev wget curl llvm

Übergeben Sie den Pfad zu .bash_profile, .zshenv usw.

export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"

Übrigens werde ich auch den CUDA-Pfad passieren. (Es sollte cuda-7.0 für TX1 sein)

export PATH=/usr/local/cuda-6.5/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-6.5/lib64:$LD_LIBRARY_PATH

Python-Installation

pyenv install 2.7.12

Erstellen Sie ein geeignetes Verzeichnis, wechseln Sie dorthin und legen Sie Python fest

pyenv local 2.7.12

OK, wenn 2.7.12 in der Versionsprüfung angezeigt wird

python -V

Installation verwandter Bibliotheken

pip install --upgrade pip
pip install numpy
sudo apt-get install libatlas-base-dev gfortran
pip install scipy
pip install matplotlib
pip install scikit-learn
pip install pillow

13.chainer Installation

sudo apt-get install python-dev python-virtualenv
pip install cython
sudo apt-get install libhdf5-dev
pip install chainer

Laden Sie den Beispielcode herunter https://github.com/mattya/chainer-gogh

Gehen Sie zum Chainer-Gogh-Verzeichnis und führen Sie es aus

python chainer-gogh.py -m nin -i input.png -s style.png -o output_dir -g 0

Das nin-Modell schien normal zu funktionieren, i2v und so weiter werden getötet, also probieren Sie es aus.

Zum Zeitpunkt der Ausführung

modprobe: FATAL: Module nvidia not found.

Wenn Sie keinen solchen Fehler erhalten möchten, siehe unten. http://qiita.com/suisuina/items/e1ce1d9805f4d8772594

Ergänzung

Überprüfen Sie den Swap-Status

sudo cat /proc/swaps

Swap-Erstellung (Überprüfen Sie beim Tauschen mit USB usw. den USB-Pfad mit sudo fdisk -l und ersetzen Sie das unten stehende Teil / var / swap /)

sudo mkdir /var/swap/
sudo dd if=/dev/zero of=/var/swap/swap0 bs=2M count=2048
sudo chmod 600 /var/swap/swap0

Weisen Sie dem Swap eine Auslagerungsdatei zu

sudo mkswap /var/swap/swap0
sudo swapon /var/swap/swap0

Stellen Sie es beim Start als Auslagerungsdatei ein

 sudo vi /etc/fstab

Fügen Sie Folgendes hinzu /var/swap/swap0 swap swap defaults 0 0

Auspacken

sudo swapoff -a

Ändern Sie den Benutzer in root

sudo su -

ausschalten

sudo shutdown -h now

Starten Sie neu

sudo shutdown -r now

Systemlayout system_layout.jpg

In Bezug auf den Fehler bei der Verwendung von i2v, als ich den Speicher ausgetauscht habe, scheint es, dass er nicht mit "Speicherfehler" ausgeführt wird. Vielleicht ist es 32bit, also frage ich mich, ob es mit der Obergrenze von 4G gemacht wird. ..

Referenz http://qiita.com/ktyubeshi/items/847b05b7879e2f45da54

http://developer.download.nvidia.com/embedded/jetson/TK1/docs/2_GetStart/Jeston_TK1_QuickStartGuide.pdf#nameddest=Introduction

http://qiita.com/0x0c@github/items/bc2683b00617981e4468

http://vboxmania.net/content/%E3%82%A8%E3%82%AF%E3%82%B9%E3%83%86%E3%83%B3%E3%82%B7%E3%83%A7%E3%83%B3%E3%83%91%E3%83%83%E3%82%AF%E3%81%AE%E5%B0%8E%E5%85%A5

http://mogi2fruits.net/blog/os-software/windows/2389/

USB-Format http://qiita.com/suisuina/items/690feac29bbfeec2da64 swap http://qiita.com/scleen_x_x/items/f3fc492bcbf0f6c2896c

Recommended Posts

Verwendung von Chainer mit Jetson TK1
Verwenden Sie Tensorboard mit Chainer
Verwenden Sie PX-S1UD / PX-Q1UD mit Jetson Nano
Seq2Seq (1) mit Chainer
Verwenden Sie mecab-ipadic-neologd mit igo-python
Verwenden Sie ansible mit cygwin
Verwenden Sie pipdeptree mit virtualenv
[Python] Verwenden Sie JSON mit Python
Verwenden Sie Mock mit Pytest
Verwenden Sie den Indikator mit pd.merge
Verwenden Sie Gentelella mit Django
Verwenden Sie Mecab mit Python 3
Verwenden Sie DynamoDB mit Python
Verwenden Sie pip mit MSYS2
Verwenden Sie Python 3.8 mit Anaconda
Verwenden Sie Copyright mit Spacemacs
Verwenden Sie Python mit Docker
Verwenden Sie TypeScript mit Django-Kompressor
Verwenden Sie WENIGER mit Django
Verwenden Sie MySQL mit Django
Verwenden Sie Enum mit SQLAlchemy
Verwenden Sie Tensorboard mit NNabla
Verwenden Sie GPS mit Edison
Verwenden Sie nim mit Jupyter
Verwenden Sie den Scikit-Learn-Trainingsdatensatz mit Chainer (für Training / Vorhersage).
Autoencoder im Chainer (Hinweise zur Verwendung von + Trainer)
Verwenden Sie die Trello-API mit Python
Verwenden Sie gemeinsam genutzten Speicher mit gemeinsam genutzten Bibliotheken
Verwenden Sie benutzerdefinierte Tags mit PyYAML
Verwenden Sie Richtungsdiagramme mit networkx
Verwenden Sie TensorFlow mit Intellij IDEA
Versuchen Sie, RBM mit Chainer zu implementieren.
Verwenden Sie die Twitter-API mit Python
Verwendung des Python-Wrappers PyRealsense von Realsense mit Jetson Nano
Verwenden Sie pip mit Jupyter Notebook
Verwenden Sie DATE_FORMAT mit dem SQLAlchemy-Filter
Verwenden Sie TUN / TAP mit Python
Lernen Sie mit Chainer elliptische Bahnen
Seq2Seq (3) ~ CopyNet Edition ~ mit Chainer
Verwenden Sie SSL mit Sellerie + Redis
Verwenden Sie Cython mit Jupyter Notebook
Neuronales Netz beginnend mit Chainer
Verwenden Sie Maxout + CNN mit Pylearn2
Bedingte GAN mit Chainer implementiert
Bildunterschriftengenerierung mit Chainer
Verwenden Sie WDC-433SU2M2 mit Manjaro Linux
Verwenden Sie OpenBLAS mit numpy, scipy
Verwenden Sie die Unterschall-API mit Python3
SmoothGrad mit Chainer v2 implementiert
Verwenden von Sonicwall NetExtener mit Systemd
Deep Embedded Clustering mit Chainer 2.0
Ein bisschen im Kettenschiff stecken
Verwenden Sie prefetch_related bequem mit Django
Verwenden Sie einen AWS-Interpreter mit Pycharm
Verwenden von Bokeh mit IPython Notebook
Verwenden Sie Python-ähnliche Bereiche mit Rust
Verwenden Sie MLflow mit Databricks ④ - Anrufmodell -
Verwenden Sie pyright mit CentOS7, emacs lsp-mode
Python: So verwenden Sie Async mit
Verwenden der SQL-Datenbank von Azure mit SQL Alchemy