Skip to content

RBLN Driver Installation Guide

This guide describes how to install the RBLN Driver (kernel driver + firmware) so your Linux OS can recognize RBLN NPU devices.

Before you begin, check the supported OS/kernel requirements

The driver is distributed as a runfile that contains:

  • Kernel driver and firmware
  • rbln-smi (device monitoring/management)
  • Runtime libraries (librbln-ccl, librbln-ml, librbln-thunk)

Pre-installation actions

Before installing the driver, complete the following checks.

Verify you have a supported Linux distribution

Confirm that your distribution/version and kernel meet the requirements in the version matrix.

Note

Ubuntu 22.04 users: you may need to upgrade your kernel to a supported HWE kernel version before installing the driver. Check the version matrix first, then install the required HWE kernel package and reboot:

1
2
$ sudo apt-get install -y linux-generic-hwe-22.04
$ sudo reboot

Collect system information

Collect basic system information before you start:

$ hostnamectl

From the output, confirm:

  • Operating System (distribution and version)
  • Kernel (running kernel version)
  • Architecture (x86_64)

Verify the system has the correct kernel packages installed

The DKMS-based driver build requires kernel headers that match the running kernel.

Identify the running kernel version:

$ uname -r

Install matching kernel headers/devel packages:

  • Debian/Ubuntu family
$ sudo apt-get update
$ sudo apt-get install -y linux-headers-$(uname -r)
  • RHEL family
$ sudo dnf install -y kernel-headers-$(uname -r) kernel-devel-$(uname -r)

Legacy RBLN Driver users (pre-3.0, i.e. 2.1.0) only

If you installed the RBLN driver via deb/rpm packages (pre-3.0), remove them before running the runfile installer. Otherwise, skip this section.

Debian/Ubuntu family

$ sudo apt remove -y rebellions

RHEL family

$ sudo dnf remove -y rebellions

Install the driver

Run the installer with root privileges:

Note

The driver installer (*.run) is distributed separately and is not installed via the OS package manager. If you do not have the runfile, request it from Rebellions Support before proceeding (see Contact Us).

If the installer is not executable, run:

$ chmod +x rebellions-x86_64-<version>.run

Then run the installer:

$ sudo ./rebellions-x86_64-<version>.run

Post-installation actions

Configure GRUB boot parameters

Check the recommended kernel boot parameters using rblnvs:

$ sudo /usr/bin/rblnvs -t grub -v

Apply the recommended parameters and reboot.

  • Debian/Ubuntu family
1
2
3
# Edit /etc/default/grub and add parameters to GRUB_CMDLINE_LINUX_DEFAULT
$ sudo update-grub
$ sudo reboot
  • RHEL family
$ sudo grubby --args="<parameters>" --update-kernel=/boot/vmlinuz-$(uname -r)
$ sudo reboot

Apply udev rules

The installer creates udev rules at /etc/udev/rules.d/99-rebellions.rules. Reload and apply them:

$ sudo udevadm control --reload-rules
$ sudo udevadm trigger

Verify the installation

Run rbln-smi to confirm the driver is loaded and NPUs are accessible:

$ rbln-smi

For an example output, see rbln-smi.


Troubleshooting

Pre-installation cleanup required

This message indicates a conflicting driver/module installation is present.

Run the cleanup commands from the installer output, then retry the installation.

Example cleanup commands
=================================
Pre-installation cleanup required
=================================

Please run the following commands before installing:

$ sudo systemctl stop rbln_daemon.service 2>/dev/null || true
$ sudo modprobe -r rebellions
$ sudo apt remove rebellions-dkms

Kernel module cannot be unloaded

If modprobe -r rebellions fails with "module is in use", stop the daemon and retry:

$ sudo systemctl stop rbln_daemon.service 2>/dev/null || true
$ sudo modprobe -r rebellions

If unloading still fails, find processes using the devices and stop them:

$ sudo lsof /dev/rbln*