Nvidia Support
The ONNX-Cuda runtime is available on both x86_64 machines (for eg. machines with Nvidia RTX 4090, A100, etc.) and AARCH64 machine (for eg. Jetson Orin AGX, Jetson Xavier NX, etc.).
Operating conditions
For the AI Manager to work on the machine with Nvidia GPUs, the machine needs to have CUDA properly installed, in which case these conditions needs to be met:
On X86_64
The
nvidia-smicommand should be installed, has to be compatible with the installed Nvidia drivers and works properly.
On AARCH64
A compatible JetPack version needs to be installed. You can verify that by running this command:
dpkg-query --showformat='${Version}' --show nvidia-l4t-core
The command returns the version of the installed NVIDIA JetPack SDK.
Installing the runtime manually
First setup to setup the runtime manually is to download the correct runtime library for the relevant machine using one of the links below:
For X86_64
For AARCH64
When the download is complete, unpack the archive in this directory using this command:
tar -xf <archive-path> -C /opt/networkoptix-metavms/mediaserver/bin/plugins/nxai_plugin/nxai_manager/binthen, create a file named installed_runtime.txt in the same directory and set its content as ONNX-CUDA using this command:
echo "ONNX-CUDA" > /opt/networkoptix-metavms/mediaserver/bin/plugins/nxai_plugin/nxai_manager/bin/installed_runtime.txtAfter that, for changes to take effect, restart the Nx server using this command:
sudo systemctl restart networkoptix-metavms-mediaserver.serviceTroubleshooting
For systems using NVIDIA's JetPack SDK, especially recent installations, the networkoptix-metavms user might not automatically be added to the render group. This group membership is essential for the Network Optix AI Manager plugin to fully utilize NVIDIA GPUs for hardware acceleration. While this process will be automated in a future Nx Server release, for now, you can manually add the user to the render group by following these steps:
1. Check if the 'render' Group Exists
First, verify whether the render group exists on your system:
getent group renderExpected Output
If the
rendergroup exists, you will see output similar to:render:x:104:usernameThis indicates that the group exists and lists the users currently in the group.
No Output
If there's no output, the
rendergroup does not exist on your system. In this case, there's no need to continue with the next steps. Y
2. Add 'networkoptix-metavms' to the 'render' Group
Run the following command to add the user to the
rendergroup:sudo usermod -aG render networkoptix-metavmsExplanation of the Command:
sudoruns the command with administrative privileges.usermodis used to modify user accounts.-aGappends the user to the specified group(s) without removing them from others.renderis the group you're adding the user to.networkoptix-metavmsis the username for the Network Optix VMS user.
3. Verify the Group Membership
Confirm that the networkoptix-metavms user has been added to the render group:
groups networkoptix-metavmsExpected Output
The command will list all groups the user is a part of. You should see
renderincluded in the list.
4. Restart the Network Optix Service
For the changes to take effect, restart the Network Optix media server service:
sudo systemctl restart networkoptix-mediaserver.serviceThis command restarts the service, allowing it to recognize the updated group permissions.
Last updated