Development System#

The table below lists the system requirements for UCS Tools for development:

Platform

x86_64

OS

Ubuntu 22.04

GPU

CUDA-capable GPU, iGPU 1,2

Helm

3.11

1 (Alpha) With remote access only

2 (Alpha) Need Vulkan support (Intel Iris Graphics 540 or later)

These instructions require having Ubuntu Server LTS 22.04 on your system.

Install the Ubuntu Operating System#

The Ubuntu Server can be downloaded from http://cdimage.ubuntu.com/releases/22.04/release/.

For more information on installing Ubuntu server refer to the Ubuntu Server Installation Guide.

Install CUDA Drivers#

CUDA installation instructions are available from https://developer.nvidia.com/cuda-downloads?target_os=Linux&target_arch=x86_64&Distribution=Ubuntu&target_version=22.04&target_type=deb_local.

Once the NVIDIA Drivers installed, please reboot the system and run the below command to validate NVIDIA drivers are loaded:

nvidia-smi

Expected Output:

+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 535.104.05             Driver Version: 535.104.05   CUDA Version: 12.2     |
|-----------------------------------------+----------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |
|                                         |                      |               MIG M. |
|=========================================+======================+======================|
|   0  NVIDIA GeForce RTX 4090        On  | 00000000:65:00.0 Off |                  Off |
|  0%   30C    P8               5W / 450W |    133MiB / 24564MiB |      0%      Default |
|                                         |                      |                  N/A |
+-----------------------------------------+----------------------+----------------------+

+---------------------------------------------------------------------------------------+
| Processes:                                                                            |
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
|        ID   ID                                                             Usage      |
|=======================================================================================|
|    0   N/A  N/A      1119      G   /usr/lib/xorg/Xorg                          107MiB |
|    0   N/A  N/A      1239      G   /usr/bin/gnome-shell                         13MiB |
+---------------------------------------------------------------------------------------+

Install Docker CE#

  1. Set up the repository and update the apt package index:

$ sudo apt-get update
  1. Install packages to allow apt to use a repository over HTTPS:

$ sudo apt-get install -y \
   apt-transport-https \
   ca-certificates \
   curl \
   gnupg-agent \
   software-properties-common
  1. Add Docker’s official GPG key:

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
  1. Verify that you now have the key with the fingerprint 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88 by searching for the last 8 characters of the fingerprint:

$ sudo apt-key fingerprint 0EBFCD88

 pub   rsa4096 2017-02-22 [SCEA]
 9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88
uid           [ unknown] Docker Release (CE deb) <docker@docker.com>
sub   rsa4096 2017-02-22 [S]
  1. Use the following command to set up the stable repository:

$ sudo add-apt-repository \
  "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) \
  stable"
  1. Install Docker Engine - Community Update the apt package index:

$ sudo apt-get update
  1. Install Docker Engine:

$ sudo apt-get install -y docker-ce docker-ce-cli containerd.io
  1. Verify that Docker Engine - Community is installed correctly by running the hello-world image:

$ sudo docker run hello-world

More information on how to install Docker can be found at https://docs.docker.com/install/linux/docker-ce/ubuntu/.

Install NVIDIA Container Toolkit#

  1. Setup the package repository:

distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
     && curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
     && curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | \
           sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
           sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
  1. Update the package index:

sudo apt update
  1. Install NVIDIA Container Toolkit:

sudo apt-get install -y nvidia-docker2
  1. Update the Docker Default Runtime.

  2. Edit the docker daemon configuration to add the following line and save the file:

"default-runtime" : "nvidia"

Example:

$ sudo nano /etc/docker/daemon.json

{
  "runtimes": {
       "nvidia": {
           "path": "nvidia-container-runtime",
          "runtimeArgs": []
       }
  },
  "default-runtime" : "nvidia"
}
  1. Now execute the below commands to restart the docker daemon:

sudo systemctl daemon-reload && sudo systemctl restart docker
  1. Validate docker default runtime.

  2. Execute the below command to validate docker default runtime as NVIDIA:

$ sudo docker info | grep -i runtime

Output:

Runtimes: nvidia runc
Default Runtime: nvidia

Install Helm#

Execute the following command to download and install Helm 3.11.0:

wget https://get.helm.sh/helm-v3.11.0-linux-amd64.tar.gz && \
tar -zxvf helm-v3.11.0-linux-amd64.tar.gz && \
sudo mv linux-amd64/helm /usr/local/bin/helm && \
rm -rf helm-v3.11.0-linux-amd64.tar.gz linux-amd64/

Refer to the Helm 3.11.0 release notes and the Installing Helm guide for more information.