hlchen1043 / Jetson-Nano-Ubuntu-20-image

Jetson Nano with Ubuntu 20.04 image

Home Page:https://qengineering.eu/install-ubuntu-20.04-on-jetson-nano.html

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Jetson Nano with Ubuntu 20.04 OS image

output image

output image

output image

A Jetson Nano - Ubuntu 20.04 image with OpenCV, TensorFlow and Pytorch

License

Update 7-30-2022.

  • Added bare overclocked Ubuntu 20.04 image.

Update 7-26-2022.

  • Refresh Ubuntu 20.04
  • Update OpenCV (4.6.0)
  • Update PyTorch (1.12.0)
  • Update TorchVision (0.13.0)
  • New xz achive (size reduction 26%)
  • New download site (Gdrive has a limited number of downloads per day).

Update 1-30-2022.

Add Jtop (thanks to SkrilaxCZ)


Installation.

  • Get a 32 GB (minimal) SD-card which will hold the image.
  • Download the image JetsonNanoUb20_2.img.xz (7.9 GByte!) from our Sync.
  • Flash the image on the SD card with the Imager or balenaEtcher.
  • According to issue #17 only flash the xz directly, not an unzipped img image.
  • Insert the SD card in your Jetson Nano and enjoy.
  • Password: jetson
  • sha256sum: 492d6127d816e98fdb916f95f92d90e99ae4d4d7f98f58b0f5690003ce128b34
  • md5sum: f2181230622b81b6d882d4d696603e04

Split image.

Due to the large image (7.9 GB), the download may take quite some time. It makes downloading vulnerable.
That's why we split the file into smaller chunks. These are more manageable than one huge download.
If you prefer this partial download over one large one, download the following 8 files (1 GB each) and place them in one folder.

Once you have all the files run

7z x JetsonUb20_2.7z.001

7Z will start extracting the first file (*.001) and then automatically the next files in order.
You will endup with JetsonNanoUb20_2.img.xz, the original image which you now can flash on a SD card with Imager or balenaEtcher.

If you get the error '7z' is not recognized as an internal or external command, operable program or batch file. please give the full path to 7z. For instance,

"C:\Program Files\7-Zip\7z.exe" x JetsonNanoUb20_2.7z.001

Bare image.

For those who want a bare-bones Ubuntu 20.04 OS with JetPack 4.6.1, without TensorFlow and PyTorch, you can download the image here (5.6 GB).
The Nano is overclocked at 1900 MHz. See https://qengineering.eu/overclocking-the-jetson-nano.html for more information.
By the way, the image with TensorFlow and PyTorch is not overclocked and runs at the regular 1479 MHz.
output image


Archive.

The previous Ubuntu 20.04 image, with OpenCV 4.5.3, TensorFlow 2.4.1 and PyTorch 1.9.0 can be downloaded here.


Warnings.

  • Do not install Chromium as it will interfere with the Snap installation. Use the preinstalled Morzilla Firefox.
  • Corrupted lavapipe You may encounter a warning during booting that the lavapipe is broken.
    The solve the issue remove the /usr/share/vulkan/icd.d folder $ sudo rm -rf /usr/share/vulkan/icd.d
    See issue #173.

Upgrading.

You may encounter issues when upgrading ($ sudo apt-get upgrade) this Ubuntu 20.04 version. It has to do with a conflicting /etc/systemd/sleep.conf file, which blocks the upgrade. Follow the instructions on our website to resolve this issue.


Tips.

Use a tool like GParted sudo apt-get install gparted to expand the image to larger SD cards. We recommend a minimum of 64 GB. Deep learning simply requires a lot of space.

Many CUDA related software needs gcc version 8.
We have installed gcc and g++ version 8 alongside the preinstalled version 9.
You can select your choice with $ sudo update-alternatives --config gcc and $ sudo update-alternatives --config g++.

output image


Pre-installed software.

Tensorflow 2.5 and above require CUDA 11. CUDA version 11 cannot be installed on a Jetson Nano due to incompatibility between the GPU and low-level software at this time, hence Tensorflow 2.4.1. Only when NVIDIA releases a JetPack for the Jetson Nano with CUDA 11 will we be able to upgrade Tensorflow.

output image
output image


OpenCV + TensorFlow.

Importing both TensorFlow and OpenCV in Python can throw the error: cannot allocate memory in static TLS block.
This behaviour only occurs on an aarch64 system and is caused by the OpenMP memory requirements not being met.
For more information, see GitHub ticket #14884.

output image

There are a few solutions. The easiest is to import OpenCV at the beginning, as shown above.
The other is disabling OpenMP by setting the -DBUILD_OPENMP and -DWITH_OPENMP flags OFF.
Where possible, OpenCV will now use the default pthread or the TBB engine for parallelization.
We don't recommend it. Not all OpenCV algorithms automatically switch to pthread.
Our advice is to import OpenCV into Python first before anything else.

Please visit https://qengineering.eu/install-ubuntu-20.04-on-jetson-nano.html for more information.


paypal

About

Jetson Nano with Ubuntu 20.04 image

https://qengineering.eu/install-ubuntu-20.04-on-jetson-nano.html

License:BSD 3-Clause "New" or "Revised" License