Skip to content

Linux Installation

This document covers the install process in a generic linux system running a qualcomm SoC with a Snapdragon CPU, Adreno GPU and / or Hexagon DSP. Compatible parts are usually from QCS and QRB family of products.

Compatibility

Currently CVEDIA-RT can be deployed within docker standalone or with a VMS system.

We only support Ubuntu 18.04 with Meta build 1.0, you can confirm if your system is running this by:

$ lsb_release -a
Distributor ID: Ubuntu
Description:    Ubuntu 18.04.6 LTS
Release:        18.04
Codename:       bionic
$ cat /firmware/verinfo/ver_info.txt | grep meta_build_id -i
"Meta_Build_ID": "QRB5165.UBUN.1.0-00016-STD.PROD-2",

Android is not supported

CVEDIA-RT doesn't support android, your system must be running a regular linux distro, such as debian or ubuntu.

QAIC family

We don't yet support QAIC chipset family

Performance notes

  • To get the best performance models should run in the DSP which means the SoC you have should have a Hexagon DSP.
  • For low power devices, we support running the AIP runtime within the DSP, which significantly reduces power consumption with minimal loss in model accuracy.
  • Running SNPE in the GPU or CPU is not recommended, if you cannot run in the DSP we recommend falling back to ARMNN or MNN.
  • SNPE models provided by CVEDIA-RT are built against SNPE SDK 1.65.0.3676

Requirements

CVEDIA-RT will work with any Linux distro that can run dockers or with minimum glibc 2.27 (2.31 recommended) natively with deb packages.

CVEDIA-RT works on x86_64, aarch64, armv7a and armhf ISAs.

CVEDIA-RT been tested on Ubuntu 18 and 20, other platforms and systems are not supported / tested.

Docker install

  • 16G disk space
  • Docker 20.04 or newer

To run on GPU using NVIDIA, you will also need:

Check Compute Capability to make sure your gpu is compatible.

If you don't have docker installed

Check install docker guide.

If you don't have NVIDIA Docker installed

Check the official install guide from NVIDIA.

Native install

  • Debian-like distro with glibc >= 2.27 (run ldd --version to check)
  • ~8G disk space
  • dpkg or similar package manager

To run on GPU using NVIDIA, you will also need:

  • CUDA toolkit

Check Compute Capability to make sure your gpu is compatible.

Installation

Docker

By default CVEDIA-RT will run a GUI, that may require some X11 changes, the install.sh script will check if your current settings are compatible and perform changes as needed.

You may need to restart your X11 session after changes are performed.

  1. Extract the .tar.gz file you downloaded: tar -xzvf <filename.tar.gz>
  2. Run install script: sudo ./install.sh

Running with GUI

Run ./run.sh to start.

Depending on the devices and platform you're running you may be required to run as sudo or start the docker with privileged mode, this is automatically decided by the startup script.

Running Headless / REST

Run ./run.sh --remote to start.

CVEDIA-RT will be accessible via REST API on port 8080

Remote UI

As of 2022.11.0 release you can run CVEDIA-RT in remote GUI mode. To run in this mode you don't need to install a window manager nor x11.

Please check Remote UI for more info.

Running options

There's several ways to run CVEDIA-RT, please refeer to Running Options for all available options.

Solutions and persistence

When running CVEDIA-RT within docker, changes on solutions are ephemeral, if you want to make your solution changes persist, please check solution persistence.

Native

As of 2024.1.0 releases CVEDIA-RT is now shipped thru our own apt repository. This allows you to update automatically or pin a specific version of RT. This works on all systems we support, including jetson and aarch64 distros.

Hard paths

The native install will be placed at a fixed path: /opt/cvedia-rt which will potentially overwrite any files you may have there.

Option 1: Installing using convenience script

curl -sqko - http://get.cvedia.com | sudo bash
apt install cvedia-rt -y

Option 2: Installing by manually adding the apt repository

curl -sqko - http://apt.cvedia.com/key.gpg | sudo gpg --dearmour -o /etc/apt/trusted.gpg.d/cvedia.gpg
sudo echo "deb http://apt.cvedia.com cvedia main" > /etc/apt/sources.list.d/cvedia.list
sudo apt update
sudo apt install cvedia-rt -y

Option 3: Installing using a debian package

Download the compatible .deb from https://rt.cvedia.com, then install it:

dpkg -i cvedia-rt_2024.1.2.deb

CVEDIA-RT binaries

CVEDIA-RT deb package will add a few binaries to your path (/usr/bin):

  • rtcmd
  • rtstudio
  • rtservice

Uninstalling

You can uninstall using the package manager apt remove cvedia-rt

Running with GUI

Just call rtstudio, a window will show up.

Running Headless / REST

Run rtstudio --render Remote to start.

CVEDIA-RT will be accessible via REST API on port 8080

Remote UI

As of 2022.11.0 release you can run CVEDIA-RT in remote GUI mode. To run in this mode you don't need to install a window manager nor x11.

Please check Remote UI for more info.

Running options

There's several ways to run CVEDIA-RT, please refeer to Running Options for all available options.

Troubleshooting

If you're running in GUI mode and CVEDIA-RT crashes with FATAL [..] [glfwui.cpp:68] glfwCreateWindow .., you can try:

  • On windows: CVEDIA-RT.bat --render DX11
  • On windows: CVEDIA-RT.bat --render GLFW
  • On windows: CVEDIA-RT.bat --render SDL
  • On linux with docker: ./run.sh --gl 0
  • On linux native: rtstudio --render SDL
  • On linux native: rtstudio --render GLFW

If none of this options work, you can still run without UI then connect from a different machine using Remote UI:

  • On windows: CVEDIA-RT.bat --render Remote
  • On linux with docker: ./run.sh --remote
  • On linux native: rtstudio --render Remote

On linux CVEDIA-RT might fail to start if your desktop resolution is smaller than 1280x720.

If you don't have a graphical interface or cannot run in this resolution, you can run headless with Remote UI (./run.sh --remote on docker, or rtstudio --render Remote natively)


If you're having issues after the application has started, logs are automatically saved under the log folder. Each session of CVEDIA-RT will create a new log entry in that folder, to submit support requests get the most recent log from that folder.


On linux for startup errors within docker, we recommend running test.sh, this will create a detailed log of system capabilities which can then be used to submit support requests to our team.


For any other questions and inquiries, check the support page.


How to run your first project : Quick Start