Kumpulan Alat LUAR BIASA yang disesuaikan dengan Perangkat NVIDIA Jetson
Hak Cipta 2020-2024 @piyoki. Semua hak dilindungi undang-undang.
Repo ini bertujuan untuk memberi Anda petunjuk yang jelas tentang cara menginstal paket pada Platform AArch64(ARM), khususnya di keluarga Jetson. Semua paket telah diuji pada Jetson AGX Xavier dan Jetson Nano.
Repo ini menggunakan pra-komit untuk mengelola dan memelihara kait pra-komit multi-bahasa.
Sebelum melakukan instalasi apa pun, Anda mungkin perlu menginstal dependensi dasar berikut
$ sudo apt-get install -y nano curl
# python3
$ sudo apt-get install -y python3-pip python3-dev python3-setuptools
# python2
$ sudo apt-get install -y python-pip python-dev python-setuptools
$ sudo apt-get install -y libcanberra-gtk0 libcanberra-gtk-module
Catatan: Jika Anda ingin menetapkan python3
sebagai kompiler python default dan manajer paket pip
, lakukan hal berikut:
# python
$ sudo rm -rf /usr/bin/python && sudo ln -s /usr/bin/python3 /usr/bin/python
$ which python
# pip
$ sudo rm -rf /usr/bin/pip && sudo ln -s /usr/bin/pip3 /usr/bin/pip
$ which pip
Python-pip
# pip3
$ pip3 install -U pip
$ pip3 install setuptools wheel cython
Jika Anda belum menyetel Jalur CUDA, Anda mungkin perlu melakukannya.
Pengaturan dengan skrip
$ wget -qO- https://github.com/yqlbu/jetson-packages-family/raw/master/set_cuda.sh | bash -
Pengaturan secara manual
$ echo " export PATH=/usr/local/cuda/bin: $ {PATH} " >> ${HOME} /.bashrc
$ echo " export LD_LIBRARY_PATH=/usr/local/cuda/lib64: $ {LD_LIBRARY_PATH} " >> ${HOME} /.bashrc
$ echo " export CPATH= $CPATH :/usr/local/cuda/targets/aarch64-linux/include " >> ${HOME} /.bashrc
$ echo " export LIBRARY_PATH= $LIBRARY_PATH :/usr/local/cuda/targets/aarch64-linux/lib " >> {HOME}/.bashrc
$ source ~ /.bashrc
Dibandingkan dengan Jetson Nano, fitur penting yang hadir pada Jetson Xavier NX dan Jetson AGX Xavier adalah keduanya dilengkapi dengan konektor M.2 Key M. Menurut pengujian pihak ketiga, kecepatan membaca dari SSD saya 7 kali lebih cepat dibandingkan kartu SD. Jadi, melakukan booting dari SSD pasti akan mendongkrak performa Jetson Xavier.
Panduan untuk pengaturan
Repo Jetsonhacks RootOnNVMe
Sebuah skrip yang dapat mengontrol kipas PWM dengan perubahan suhu CPU Mesin Jetson mana pun (Jetson Nano, Jetson TX1, TX2, Jetson Xavier)
Panduan untuk pengaturan
PyTorch v1.8.0 (JetPack 4.4+)
Python 3.6 - torch-1.8.0-cp36-cp36m-linux_aarch64.whl
$ wget https://nvidia.box.com/shared/static/p57jwntv436lfrd78inwl7iml6p13fzh.whl -O torch-1.8.0-cp36-cp36m-linux_aarch64.whl
$ sudo apt-get install python3-pip libopenblas-base libopenmpi-dev
$ pip3 install Cython
$ pip3 install numpy torch-1.8.0-cp36-cp36m-linux_aarch64.whl
Torchvision v0.5.0 (kompatibel dengan PyTorch v1.4.0)
$ sudo apt-get install libjpeg-dev zlib1g-dev libpython3-dev libavcodec-dev libavformat-dev libswscale-dev
$ git clone --branch < version > https://github.com/pytorch/vision torchvision # see below for version of torchvision to download
$ cd torchvision
$ export BUILD_VERSION=0.x.0 # where 0.x.0 is the torchvision version
$ python3 setup.py install --user
$ cd ../ # attempting to load torchvision from build dir will result in import error
$ pip install ' pillow<7 ' # always needed for Python 2.7, not needed torchvision v0.5.0+ with Python 3.6
Verifikasi
$ python3 -c " import torch ; print(torch.__version__) "
Untuk menginstal PyTorch dan Torchvision versi lain, silakan kunjungi situs DI SINI
Python 3.6 + JetPack 4.5
sudo apt-get install libhdf5-serial-dev hdf5-tools libhdf5-dev zlib1g-dev zip libjpeg8-dev liblapack-dev libblas-dev gfortran
sudo apt-get install python3-pip
sudo pip3 install -U pip testresources setuptools==49.6.0
sudo pip3 install -U numpy==1.16.1 future==0.18.2 mock==3.0.5 h5py==2.10.0 keras_preprocessing==1.1.1 keras_applications==1.0.8 gast==0.2.2 futures protobuf pybind11
# TF-2.x
$ sudo pip3 install --pre --extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v45 tensorflow
# TF-1.15
$ sudo pip3 install --pre --extra-index-url https://developer.download.nvidia.com/compute/redist/jp/v45 ‘tensorflow < 2’
Jika Anda menemui kesalahan saat menginstal h5py, jalankan perintah ini untuk mengatasi ketergantungan:
$ sudo apt-get install libhdf5-serial-dev hdf5-tools
Untuk menginstal Tensorflow versi lain, periksa situs di bawah:
Jetson Xavier: DI SINI
Jetson Nano: DI SINI
Python3 v3.6.9
$ pip3 install scikit-learn
$ apt-get install libatlas-base-dev gfortran
$ pip3 install -U scipy --user
$ sudo apt install libfreetype6-dev -y
$ sudo apt install python3-matplotlib -y
pip3 install -U pycuda --user
# install jupyter
$ pip3 install jupyterlab
$ pip3 install --upgrade --force jupyter-console
# export environment path
$ echo ' export PATH=$PATH:~/.local/bin ' >> ~ /.bashrc
$ source ~ /.bashrc
# check installation version
$ jupyter lab -V
Instal dengan Docker
$ docker run --name jupyterlab -d
-e TZ=Asia/Shanghai
-p 8888:8888
-v /appdata/jupyterlab:/opt/app/data
hikariai/jupyterlab:latest
Jalankan aplikasi
$ jupyter lab --ip= * --port=8888 --no-browser --notebook-dir=/opt/app/data
--allow-root --NotebookApp.token= ' ' --NotebookApp.password= ' '
--LabApp.terminado_settings= ' {"shell_command": ["/bin/bash"]} '
Panduan Penggunaan: https://github.com/yqlbu/jetson_lab
$ pip3 install -U pillow --user
$ pip3 install -U pandas --user
$ pip3 install -U numpy --user
$ pip3 install -U seaborn --user
ONNX v1.4.1 (Python3.6.9 + JetPack 4.3/4.4/4.5)
$ sudo apt install protobuf-compiler libprotoc-dev
$ pip install onnx==1.4.1
LLVM v3.9 (Python3.6 + JetPack 4.3/4.4/4.5)
$ sudo apt-get install llvm-3.9
$ export LLVM_CONFIG=/usr/lib/llvm-3.9/bin/llvm-config
$ cd ~
$ wget https://github.com/numba/llvmlite/archive/v0.16.0.zip
$ unzip v0.16.0.zip
$ cd llvmlite-0.16.0
$ sudo chmod 777 -R /usr/local/lib/python3.6/dist-packages/
$ python3 setup.py install
Numba v0.31 (Python3.6 + JetPack 4.3/4.4/4.5)
**Catatan: Numba memerlukan **LLVM** yang sudah dibuat sebelumnya, jadi harap periksa instruksi untuk LLVM dan instal sebelum menginstal Numba.
$ pip3 install numba==0.31 --user
Jetson-stats adalah paket untuk memantau dan mengontrol NVIDIA Jetson Anda [Xavier NX, Nano, AGX Xavier, TX1, TX2] Bekerja dengan semua ekosistem NVIDIA Jetson.
$ sudo -H pip install -U jetson-stats
$ sudo jtop
NeoVim Server adalah editor teks mirip IDE dalam container yang berjalan di server web.
Dokumen: https://github.com/yqlbu/neovim-server/wiki
Pemasangan Font:
$ mkdir -p ~ /.local/share/fonts
$ cd ~ /.local/share/fonts && curl -fLo " Droid Sans Mono for Powerline Nerd Font Complete.otf " https://github.com/ryanoasis/nerd-fonts/raw/master/patched-fonts/DroidSansMono/complete/Droid%20Sans%20Mono%20Nerd%20Font%20Complete.otf
Instal Cepat:
$ docker run -d
--name nvim-server
-p 6080:3000
-p 8090:8090
-v ~ /workspace:/workspace
-v /appdata/nvim-server:/config
-e TZ=Asia/Shanghai
-e USER= < USER >
-e SECRET= < PASSWORD >
hikariai/nvim-server:latest
Tunggu beberapa detik hingga container menyelesaikan proses bootstrapnya, lalu kunjungi http://localhost:6080/wetty
Visual Studio Code adalah editor kode yang didefinisikan ulang dan dioptimalkan untuk membangun dan men-debug aplikasi web dan cloud modern.
$ curl -s https://packagecloud.io/install/repositories/swift-arm/vscode/script.deb.sh | sudo bash
$ sudo apt-get install -y code-oss
Code-server adalah instance Visual Studio Code yang berjalan di server jarak jauh yang dapat diakses melalui browser web apa pun. Ini memungkinkan Anda membuat kode di mana saja dan di perangkat apa pun seperti tablet atau laptop dengan lingkungan pengembangan terintegrasi (IDE) yang konsisten
Panduan Instalasi: [DI SINI
Archiconda3 adalah distribusi conda untuk ARM 64 bit. Anaconda adalah distribusi bahasa pemrograman Python dan R yang gratis dan bersumber terbuka untuk komputasi ilmiah (ilmu data, aplikasi pembelajaran mesin, pemrosesan data skala besar, analisis prediktif, dll.), yang bertujuan untuk menyederhanakan manajemen dan penerapan paket. Seperti Virtualenv, Anaconda juga menggunakan konsep pembuatan lingkungan untuk mengisolasi perpustakaan dan versi yang berbeda.
$ cd ${HOME}
$ curl -fsSL https://github.com/Archiconda/build-tools/releases/download/0.2.3/Archiconda3-0.2.3-Linux-aarch64.sh | sudo bash -
$ cd ~
$ sudo chown -R $USER archiconda3/
$ export " PATH=~/archiconda3/bin: $PATH " >> ~ /.bashrc
$ conda config --add channels conda-forge
$ conda -V
$ conda update conda
$ conda -V
Untuk mencegah conda mengaktifkan lingkungan dasar secara default
$ conda config --set auto_activate_base false
$ export " PATH=/bin:/usr/bin: $PATH " >> ~ /.bashrc
$ source ~ /.bashrc
Silakan checkout situs DI SINI untuk panduan penggunaan.
OpenCV v4.1.1 (Python2.7/3.6+ JetPack4.3/4.4/4.5)
# purge old-version
$ sudo apt-get purge libopencv *
# install
$ sudo bash <( wget -qO- https://github.com/yqlbu/jetson-packages-family/raw/master/OpenCV/install_opencv4.1.1_jetson.sh )
Catatan: Anda dapat memodifikasi skrip untuk menginstal OpenCV versi khusus
$ wget https://github.com/yqlbu/jetson-packages-family/raw/master/OpenCV/install_opencv4.1.1_jetson.sh
PyCharm adalah lingkungan pengembangan terintegrasi (IDE) yang digunakan dalam pemrograman komputer, khusus untuk bahasa Python. Ini dikembangkan oleh perusahaan Ceko JetBrains.
Profesional PyCharm
$ cd ~
$ sudo apt-get update && sudo apt-get install -y openjdk-8-jdk
$ wget https://download.jetbrains.com/python/pycharm-professional-2019.3.4.tar.gz ? _ga=2.42966822.2056165753.1586158936-1955479096.1586158936 -O pycharm-professional-2019.3.4.tar.gz
$ tar -xzf pycharm-professional-2019.3.4.tar.gz && cd pycharm-2019.3.4/bin
$ sudo chmod +x pycharm.sh && mv pycharm.sh pycharm
$ sudo rm -rf pycharm-professional-2019.3.4.tar.gz
$ cd ~
$ echo ' export PATH=/home/ ' $USER ' /pycharm-2019.3.4/bin:$PATH ' >> .bashrc
Komunitas PyCharm
$ cd ~
$ sudo apt-get update && sudo apt-get install -y openjdk-8-jdk
$ wget https://download.jetbrains.com/python/pycharm-community-2019.3.4.tar.gz ? _ga=2.42966822.2056165753.1586158936-1955479096.1586158936 -O pycharm-community-2019.3.4.tar.gz
$ tar -xzf pycharm-community-2019.3.4.tar.gz && cd pycharm-2019.3.4/bin
$ sudo chmod +x pycharm.sh && mv pycharm.sh pycharm
$ sudo rm -rf pycharm-community-2019.3.4.tar.gz
$ cd ~
$ echo ' export PATH=/home/ ' $USER ' /pycharm-2019.3.4/bin:$PATH ' >> .bashrc
berlari
$ pycharm
Catatan: Anda dapat menemukan versi lain DI SINI
Lazygit adalah UI terminal sederhana untuk perintah git, ditulis di Go dengan perpustakaan gocui.
$ sudo add-apt-repository ppa:lazygit-team/release
$ sudo apt-get update
$ sudo apt-get install lazygit
Ranger adalah pengelola file konsol dengan pengikatan kunci VI. Ini menyediakan antarmuka kutukan yang minimalis dan bagus dengan tampilan hierarki direktori. Ia dikirimkan bersama rifle, peluncur file yang bagus untuk secara otomatis mengetahui program mana yang akan digunakan untuk jenis file apa.
$ pip install ranger-fm
(Opsional) Instal perangkat ranger
$ git clone https://github.com/alexanderjeurissen/ranger_devicons ~ /.config/ranger/plugins/ranger_devicons
$ echo " default_linemode devicons " >> $HOME /.config/ranger/rc.conf
Contoh konfigurasi tersedia DI SINI
Lsd adalah perintah ls generasi berikutnya
Unduh paket .deb
terbaru dari halaman rilis dan instal melalui:
sudo dpkg -i lsd_0.20.1_arm64.deb # adapt version number and architecture
Ctop adalah antarmuka mirip Top untuk metrik kontainer. Ctop memberikan ikhtisar ringkas dan padat mengenai metrik real-time untuk beberapa container.
# echo "deb http://packages.azlux.fr/debian/ buster main" | sudo tee /etc/apt/sources.list.d/azlux.list
# wget -qO - https://azlux.fr/repo.gpg.key | sudo apt-key add -
# sudo apt update
# sudo apt install docker-ctop
Cointop adalah aplikasi UI berbasis terminal interaktif yang cepat dan ringan untuk melacak dan memantau statistik koin cryptocurrency secara real-time.
Dokumen: DI SINI
$ curl -o- https://raw.githubusercontent.com/miguelmota/cointop/master/install.sh | bash
Gotop Monitor aktivitas grafis berbasis terminal yang terinspirasi oleh gtop dan vtop
# install
$ curl -fsSL git.io/gotop.sh | sudo bash
# uninstall
sudo rm -f /usr/local/bin/gotop
Monitor Sumber Daya Bashtop yang menunjukkan penggunaan dan statistik untuk prosesor, memori, disk, jaringan, dan proses.
$ sudo add-apt-repository ppa:bashtop-monitor/bashtop
$ sudo apt update
$ sudo apt install bashtop
Httpie adalah klien HTTP baris perintah. Tujuannya adalah membuat interaksi CLI dengan layanan web senyaman mungkin bagi manusia. HTTPie dirancang untuk pengujian, debugging, dan secara umum berinteraksi dengan API & server HTTP. Perintah http & https memungkinkan untuk membuat dan mengirim permintaan HTTP sewenang-wenang. Mereka menggunakan sintaksis yang sederhana dan alami serta memberikan keluaran yang diformat dan berwarna.
$ apt install httpie -y
Neofetch adalah skrip shell sederhana lintas platform yang memindai informasi sistem Anda dan menampilkannya di terminal, bersama dengan gambar ASCII atau gambar apa pun yang diinginkan di samping keluaran.
$ sudo add-apt-repository ppa:dawidd0811/neofetch
$ sudo apt-get update
$ sudo apt-get install neofecth
Docker pada dasarnya adalah mesin kontainer yang menggunakan fitur Kernel Linux seperti namespace dan grup kontrol untuk membuat kontainer di atas sistem operasi dan mengotomatiskan penerapan aplikasi pada kontainer. Docker menggunakan sistem file gabungan Copy-on-write untuk penyimpanan backendnya.
$ sudo wget -qO- https://get.docker.com/ | sh
$ sudo usermod -aG docker $USER
$ sudo systemctl enable docker
$ sudo systemctl status docker
Untuk mengaktifkan akses ke compiler CUDA (nvcc) selama operasi docker build
, tambahkan "default-runtime": "nvidia"
ke file konfigurasi /etc/docker/daemon.json
Anda sebelum mencoba membuat container:
{
"runtimes" : {
"nvidia" : {
"path" : " nvidia-container-runtime " ,
"runtimeArgs" : []
}
},
"features" : {
"buildkit" : true
},
"default-runtime" : " nvidia "
}
Mulai ulang Docker Daemon
$ sudo systemctl restart docker
Verifikasi apakah runtime default diatur ke nvidia:
$ docker info | grep nvidia
Docker Compose adalah alat untuk mendefinisikan dan menjalankan aplikasi Docker multi-kontainer. Dengan Compose, Anda menggunakan file YAML untuk mengonfigurasi layanan aplikasi Anda. Kemudian, dengan satu perintah, Anda membuat dan memulai semua layanan dari konfigurasi Anda.
$ sudo apt-get update
$ sudo apt-get install -y python3 python3-pip libffi-dev libssl-dev
$ sudo pip3 install docker-compose
$ docker-compose -v
NVIDIA L4T-Docker
Repo Resmi: https://github.com/NVIDIA/nvidia-docker
Instal Waktu Proses NVIDIA-Docker
$ sudo apt install -y nvidia-docker2
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker
$ docker info | grep nvidia
Gambar L4T-Docker khusus tersedia DI SINI
DLib adalah pustaka C++ sumber terbuka yang mengimplementasikan berbagai algoritme pembelajaran mesin, termasuk klasifikasi, regresi, pengelompokan, transformasi data, dan prediksi terstruktur. ... Pengelompokan K-Means, Bayesian Networks, dan banyak lainnya.
Dlib v19.18
$ cd ~
$ wget https://raw.githubusercontent.com/yqlbu/face_recognizer/master/setup.sh
$ sudo chmod +x setup.sh
$ ./setup.sh
LabelImg adalah alat anotasi gambar grafis dan memberi label kotak pembatas objek dalam gambar.
$ sudo apt-get install pyqt4-dev-tools
$ sudo apt-get install python-lxml
$ sudo apt-get install python-qt4
$ sudo apt install libcanberra-gtk-module libcanberra-gtk3-module
$ git clone https://github.com/tzutalin/labelImg.git
$ cd labelImg
$ make qt4py2
$ python labelImg.py
Qt digunakan untuk mengembangkan antarmuka pengguna grafis (GUI) dan aplikasi multi-platform yang berjalan di semua platform desktop utama dan sebagian besar platform seluler atau tertanam. Sebagian besar program GUI yang dibuat dengan Qt memiliki antarmuka yang tampak asli, dalam hal ini Qt diklasifikasikan sebagai perangkat widget.
$ sudo apt-get install qt5-default qtcreator -y
$ sudo apt-get install pyqt5 *
$ sudo apt install python3-pyqt5.qtsql
Kubernetes dengan cepat menjadi unsur utama dalam komputasi edge. Dengan Kubernetes, perusahaan dapat menjalankan container di edge dengan cara memaksimalkan sumber daya, mempermudah pengujian, dan memungkinkan tim DevOps bergerak lebih cepat dan efektif seiring organisasi-organisasi ini mengonsumsi dan menganalisis lebih banyak data di lapangan.
K3S adalah distribusi Kubernetes ringan yang dikembangkan oleh Rancher Labs, cocok untuk kasus penggunaan Edge Computing di mana sumber daya komputasi mungkin agak terbatas.
Panduan instalasi dan penggunaan tersedia di SINI
Nomachine ARMv8 (kompatibel dengan Perangkat Jetson)
NoMachine adalah alat desktop jarak jauh gratis, lintas platform, tanpa server yang memungkinkan Anda mengatur server desktop jarak jauh di komputer Anda menggunakan protokol video NX. Klien dapat digunakan untuk terhubung ke server dari mana saja di dunia.
Situs Resmi: DI SINI
Resolusi desktop biasanya ditentukan oleh kemampuan layar yang dipasang pada Jetson. Jika tidak ada layar yang terpasang, resolusi default 640x480
dipilih. Untuk menggunakan resolusi yang berbeda, edit /etc/X11/xorg.conf
dan tambahkan baris berikut:
Section " Screen "
Identifier " Default Screen "
Monitor " Configured Monitor "
Device " Tegra0 "
SubSection " Display "
Depth 24
Virtual 1280 800 # Modify the resolution by editing these values
EndSubSection
EndSection
gotop
python2
code-server
pip3
untuk menginstal docker-compose
Logs
Archiconda3
hingga v0.2.3 Lisensi MIT (C) Kevin Yu