Skip to main content

NVIDIA TAO

 https://www.youtube.com/watch?v=kErfKDZ50To

Note: there are two versions of tao 1 for tensorflow 2 and another for tensorflow 1 [Actually this is false - detectnet_v2 only has tf 1.15 version and should work well within automl]. careful:

TF1 looks like:

Configuration of the TAO Toolkit Instance

dockers: ['nvidia/tao/tao-toolkit']

format_version: 2.0

toolkit_version: 4.0.1

published_date: 03/06/2023


TF2 looks like: [if installed in automl when tf2 installed already probably]

(automl) rb@victus:~/eta$ tao info

Configuration of the TAO Toolkit Instance

task_group: ['model', 'dataset', 'deploy']

format_version: 3.0

toolkit_version: 5.2.0.1

published_date: 01/16/2024

older or newer version of tao is installed probably depending on python version
tao model or just tao - for inference python 2.6.9 worked best - see notebook aws

(base) rb@victus:~/eta$ curl https://get.docker.com | sh && sudo systemctl --now enable docker

[On AMI docker was already there so needed: sudo systemctl --now enable docker but this caused error so just wait for 20 secs and it will force install - force install worked fine but the main issue was ran out of disk space

Well the error was due to no space left

404 Client Error: Not Found ("No such image: nvcr.io/nvidia/tao/tao-toolkit:5.0.0-tf1.15.5")

If such you can also try to directly pull [worked for me]

docker pull nvcr.io/nvidia/tao/tao-toolkit:5.0.0-tf1.15.5

]

Command 'curl' not found, but can be installed with:

sudo snap install curl  # version 8.1.2, or

sudo apt  install curl  # version 7.81.0-1ubuntu1.14

See 'snap info curl' for additional versions.

[sudo] password for rb: 

Sorry, try again.

[sudo] password for rb: 

Failed to enable unit: Unit file docker.service does not exist.

(base) rb@victus:~/eta$ sudo snap install curl

curl 8.1.2 from Wouter van Bommel (woutervb) installed

(base) rb@victus:~/eta$ curl https://get.docker.com | sh  && sudo systemctl --now enable docker

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current

                                 Dload  Upload   Total   Spent    Left  Speed

100 21927  100 21927    0     0  20009      0  0:00:01  0:00:01 --:--:-- 20024

# Executing docker install script, commit: e5543d473431b782227f8908005543bb4389b8de

+ sudo -E sh -c apt-get update -qq >/dev/null

+ sudo -E sh -c DEBIAN_FRONTEND=noninteractive apt-get install -y -qq apt-transport-https ca-certificates curl >/dev/null

+ sudo -E sh -c install -m 0755 -d /etc/apt/keyrings

+ sudo -E sh -c curl -fsSL "https://download.docker.com/linux/ubuntu/gpg" | gpg --dearmor --yes -o /etc/apt/keyrings/docker.gpg

gpg: WARNING: unsafe ownership on homedir '/home/rb/.gnupg'

+ sudo -E sh -c chmod a+r /etc/apt/keyrings/docker.gpg

+ sudo -E sh -c echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable" > /etc/apt/sources.list.d/docker.list

+ sudo -E sh -c apt-get update -qq >/dev/null

+ sudo -E sh -c DEBIAN_FRONTEND=noninteractive apt-get install -y -qq docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-ce-rootless-extras docker-buildx-plugin >/dev/null

+ sudo -E sh -c docker version

Client: Docker Engine - Community

 Version:           24.0.7

 API version:       1.43

 Go version:        go1.20.10

 Git commit:        afdd53b

 Built:             Thu Oct 26 09:07:41 2023

 OS/Arch:           linux/amd64

 Context:           default


Server: Docker Engine - Community

 Engine:

  Version:          24.0.7

  API version:      1.43 (minimum version 1.12)

  Go version:       go1.20.10

  Git commit:       311b9ff

  Built:            Thu Oct 26 09:07:41 2023

  OS/Arch:          linux/amd64

  Experimental:     false

 containerd:

  Version:          1.6.27

  GitCommit:        a1496014c916f9e62104b33d1bb5bd03b0858e59

 runc:

  Version:          1.1.11

  GitCommit:        v1.1.11-0-g4bccb38

 docker-init:

  Version:          0.19.0

  GitCommit:        de40ad0


================================================================================


To run Docker as a non-privileged user, consider setting up the

Docker daemon in rootless mode for your user:


    dockerd-rootless-setuptool.sh install


Visit https://docs.docker.com/go/rootless/ to learn about rootless mode.



To run the Docker daemon as a fully privileged service, but granting non-root

users access, refer to https://docs.docker.com/go/daemon-access/


WARNING: Access to the remote API on a privileged Docker daemon is equivalent

         to root access on the host. Refer to the 'Docker daemon attack surface'

         documentation for details: https://docs.docker.com/go/attack-surface/


================================================================================


Synchronizing state of docker.service with SysV service script with /lib/systemd/systemd-sysv-install.

Executing: /lib/systemd/systemd-sysv-install enable docker





Step2:
distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
&& curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add - \
&& curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list


sudo apt-get update
sudo apt-get install -y nvidia-docker2
sudo systemctl restart docker

After restart you can verify using docker run command:
sudo docker run --rm --gpus all --runtime=nvidia/cuda:11.8-base nvidia-smi [some error]
instead run: [from official website]
sudo docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi


Get API key grom ngc catalog:
docker login nvcr.io

NGC Creds:
Login to NGC click account on top right > Setup > Generate API Key - then generate
https://ngc.nvidia.com/setup/api-key



If this error: permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/auth": dial unix /var/run/docker.sock: connect: permission denied
Do: sudo chmod 666 /var/run/docker.sock

https://docs.nvidia.com/tao/tao-toolkit-archive/tao-30-2205/text/tao_toolkit_quick_start_guide.html

wget --content-disposition https://api.ngc.nvidia.com/v2/resources/nvidia/tao/cv_samples/versions/v1.4.0/zip -O cv_samples_v1.4.0.zip
unzip -u cv_samples_v1.4.0.zip  -d ./cv_samples_v1.4.0 && rm -rf cv_samples_v1.4.0.zip && cd ./cv_samples_v1.4.0