Skip to content

Releases: intel/linux-npu-driver

Linux NPU Driver v1.10.1

20 Dec 15:01
Compare
Choose a tag to compare

Note

Linux NPU Driver v1.10.1 contains a fix for LLM in Lunar Lake platforms

Validated on following configuration

Platform System Kernel Firmware
Meteor Lake Ubuntu22.04 LTS 6.8.0-49-generic 20241025*MTL_CLIENT_SILICON-release*1830*ci_tag_ud202444_vpu_rc_20241025_1830*ae072b315bc
Ubuntu24.04 LTS 6.8.0-49-generic 20241025*MTL_CLIENT_SILICON-release*1830*ci_tag_ud202444_vpu_rc_20241025_1830*ae072b315bc
Arrow Lake Ubuntu22.04 LTS 6.8.0-49-generic 20241025*MTL_CLIENT_SILICON-release*1830*ci_tag_ud202444_vpu_rc_20241025_1830*ae072b315bc
Ubuntu24.04 LTS 6.8.0-49-generic 20241025*MTL_CLIENT_SILICON-release*1830*ci_tag_ud202444_vpu_rc_20241025_1830*ae072b315bc
Lunar Lake Ubuntu22.04 LTS 6.8.0-49-generic Oct 25 2024*NPU40xx*ci_tag_ud202444_vpu_eng_20241025_1500*ae072b315bc135fb4cc60cfa758b2a926bd6498f
Ubuntu24.04 LTS 6.8.0-49-generic Oct 25 2024*NPU40xx*ci_tag_ud202444_vpu_eng_20241025_1500*ae072b315bc135fb4cc60cfa758b2a926bd6498f

Common:

Component Version
Level Zero v1.17.44
OpenVINO Archive Package 2024.5.0
OpenVINO Python Package 2024.5.0
OpenVINO built from source OpenVINO_rev.0ebff04
NPU Compiler npu_ud_2024_44_rc2 built using OpenVINO_rev.0ebff04
GPU Driver 24.45.31740.9

Installation procedure

  1. Remove old packages
dpkg --purge --force-remove-reinstreq intel-driver-compiler-npu intel-fw-npu intel-level-zero-npu
  1. Download all *.deb package
  • Ubuntu22.04
wget https://github.com/intel/linux-npu-driver/releases/download/v1.10.1/intel-driver-compiler-npu_1.10.1.20241220-12430270326_ubuntu22.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.10.1/intel-fw-npu_1.10.1.20241220-12430270326_ubuntu22.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.10.1/intel-level-zero-npu_1.10.1.20241220-12430270326_ubuntu22.04_amd64.deb
  • Ubuntu24.04
wget https://github.com/intel/linux-npu-driver/releases/download/v1.10.1/intel-driver-compiler-npu_1.10.1.20241220-12430270326_ubuntu24.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.10.1/intel-fw-npu_1.10.1.20241220-12430270326_ubuntu24.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.10.1/intel-level-zero-npu_1.10.1.20241220-12430270326_ubuntu24.04_amd64.deb
  1. Install libtbb12 which is a dependency for intel-driver-compiler-npu
sudo apt update
sudo apt install libtbb12
  1. Install all packages
sudo dpkg -i *.deb
  1. Install Level Zero if it is not in the system
# check if Level Zero is installed
dpkg -l level-zero

# download and install package if Level Zero is missing
wget https://github.com/oneapi-src/level-zero/releases/download/v1.17.44/level-zero_1.17.44+u22.04_amd64.deb
dpkg -i level-zero*.deb
  1. Reboot
reboot
# if everything works, we should see /dev/accel/accel0 device
ls /dev/accel/accel0
/dev/accel/accel0
# to receive intel_vpu state
dmesg

User access to the device

As a root user, this step can be skipped.

The new device /dev/accel/accel0 requires manual setting of permissions access.
The accel devices should be in the "render" group in Ubuntu:

# set the render group for accel device
sudo chown root:render /dev/accel/accel0
sudo chmod g+rw /dev/accel/accel0
# add user to the render group
sudo usermod -a -G render <user-name>
# user needs to restart the session to use the new group (log out and log in)

The above steps must be repeated each time module is reloaded or on every reboot.
To avoid manual setup of the group for accel device, the udev rules can be used:

sudo bash -c "echo 'SUBSYSTEM==\"accel\", KERNEL==\"accel*\", GROUP=\"render\", MODE=\"0660\"' > /etc/udev/rules.d/10-intel-vpu.rules"
sudo udevadm control --reload-rules
sudo udevadm trigger --subsystem-match=accel

Tip

In case of NPU is not visible, always check the access to the device with following command:

$ ls -lah /dev/accel/accel0
crw-rw---- 1 root render 261, 0 Mar 22 13:22 /dev/accel/accel0

If render is missing, or crw-rw---- is not set, please repeat the steps to set the access to the device.

Important

For more information check README.md

Linux NPU Driver v1.10.0

08 Nov 08:02
2574490
Compare
Choose a tag to compare

Validated on following configuration

Platform System Kernel Firmware
Meteor Lake Ubuntu22.04 LTS 6.8.0-47-generic 20241025*MTL_CLIENT_SILICON-release*1830*ci_tag_ud202444_vpu_rc_20241025_1830*ae072b315bc
Ubuntu24.04 LTS 6.8.0-47-generic 20241025*MTL_CLIENT_SILICON-release*1830*ci_tag_ud202444_vpu_rc_20241025_1830*ae072b315bc
Arrow Lake Ubuntu22.04 LTS 6.8.0-47-generic 20241025*MTL_CLIENT_SILICON-release*1830*ci_tag_ud202444_vpu_rc_20241025_1830*ae072b315bc
Ubuntu24.04 LTS 6.8.0-47-generic 20241025*MTL_CLIENT_SILICON-release*1830*ci_tag_ud202444_vpu_rc_20241025_1830*ae072b315bc
Lunar Lake Ubuntu22.04 LTS 6.8.0-47-generic Oct 25 2024*NPU40xx*ci_tag_ud202444_vpu_eng_20241025_1500*ae072b315bc135fb4cc60cfa758b2a926bd6498f
Ubuntu24.04 LTS 6.8.0-47-generic Oct 25 2024*NPU40xx*ci_tag_ud202444_vpu_eng_20241025_1500*ae072b315bc135fb4cc60cfa758b2a926bd6498f

Common:

Component Version
Level Zero v1.17.44
OpenVINO Archive Package 2024.4.0
OpenVINO Python Package 2024.4.0
OpenVINO built from source OpenVINO_rev.0ebff04
NPU Compiler npu_ud_2024_44_rc1 built using OpenVINO_rev.0ebff04
GPU Driver 24.39.31294.12

Installation procedure

  1. Remove old packages
dpkg --purge --force-remove-reinstreq intel-driver-compiler-npu intel-fw-npu intel-level-zero-npu
  1. Download all *.deb package
  • Ubuntu22.04
wget https://github.com/intel/linux-npu-driver/releases/download/v1.10.0/intel-driver-compiler-npu_1.10.0.20241107-11729849322_ubuntu22.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.10.0/intel-fw-npu_1.10.0.20241107-11729849322_ubuntu22.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.10.0/intel-level-zero-npu_1.10.0.20241107-11729849322_ubuntu22.04_amd64.deb
  • Ubuntu24.04
wget https://github.com/intel/linux-npu-driver/releases/download/v1.10.0/intel-driver-compiler-npu_1.10.0.20241107-11729849322_ubuntu24.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.10.0/intel-fw-npu_1.10.0.20241107-11729849322_ubuntu24.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.10.0/intel-level-zero-npu_1.10.0.20241107-11729849322_ubuntu24.04_amd64.deb
  1. Install libtbb12 which is a dependency for intel-driver-compiler-npu
sudo apt update
sudo apt install libtbb12
  1. Install all packages
sudo dpkg -i *.deb
  1. Install Level Zero if it is not in the system
# check if Level Zero is installed
dpkg -l level-zero

# download and install package if Level Zero is missing
wget https://github.com/oneapi-src/level-zero/releases/download/v1.17.44/level-zero_1.17.44+u22.04_amd64.deb
dpkg -i level-zero*.deb
  1. Reboot
reboot
# if everything works, we should see /dev/accel/accel0 device
ls /dev/accel/accel0
/dev/accel/accel0
# to receive intel_vpu state
dmesg

User access to the device

As a root user, this step can be skipped.

The new device /dev/accel/accel0 requires manual setting of permissions access.
The accel devices should be in the "render" group in Ubuntu:

# set the render group for accel device
sudo chown root:render /dev/accel/accel0
sudo chmod g+rw /dev/accel/accel0
# add user to the render group
sudo usermod -a -G render <user-name>
# user needs to restart the session to use the new group (log out and log in)

The above steps must be repeated each time module is reloaded or on every reboot.
To avoid manual setup of the group for accel device, the udev rules can be used:

sudo bash -c "echo 'SUBSYSTEM==\"accel\", KERNEL==\"accel*\", GROUP=\"render\", MODE=\"0660\"' > /etc/udev/rules.d/10-intel-vpu.rules"
sudo udevadm control --reload-rules
sudo udevadm trigger --subsystem-match=accel

Tip

In case of NPU is not visible, always check the access to the device with following command:

$ ls -lah /dev/accel/accel0
crw-rw---- 1 root render 261, 0 Mar 22 13:22 /dev/accel/accel0

If render is missing, or crw-rw---- is not set, please repeat the steps to set the access to the device.

Important

For more information check README.md

Linux NPU Driver v1.8.0

17 Sep 07:17
74e32d9
Compare
Choose a tag to compare

Validated on following configuration

Platform System Kernel Firmware
Meteor Lake Ubuntu22.04 LTS 6.8.0-40-generic 20240820*MTL_CLIENT_SILICON-release*1902*ci_tag_ud202436_vpu_rc_20240820_1902*a4634b5107c
Ubuntu24.04 LTS 6.8.0-44-generic 20240820*MTL_CLIENT_SILICON-release*1902*ci_tag_ud202436_vpu_rc_20240820_1902*a4634b5107c
Arrow Lake Ubuntu22.04 LTS 6.8.0-40-generic 20240820*MTL_CLIENT_SILICON-release*1902*ci_tag_ud202436_vpu_rc_20240820_1902*a4634b5107c
Ubuntu24.04 LTS 6.8.0-44-generic 20240820*MTL_CLIENT_SILICON-release*1902*ci_tag_ud202436_vpu_rc_20240820_1902*a4634b5107c
Lunar Lake Ubuntu22.04 LTS 6.8.0-40-generic Aug 20 2024*LNL*ci_tag_ud202436_vpu_rc_20240820_1902*a4634b5107c7ded2bbfa7d198e37088ec258749a
Ubuntu24.04 LTS 6.8.0-44-generic Aug 20 2024*LNL*ci_tag_ud202436_vpu_rc_20240820_1902*a4634b5107c7ded2bbfa7d198e37088ec258749a

Common:

Component Version
Level Zero v1.17.6
OpenVINO Archive Package 2024.3.0
OpenVINO Python Package 2024.3.0
OpenVINO built from source OpenVINO_2024.3.0_rev.7edb05f
NPU Compiler npu_ud_2024_36_rc1 built using OpenVINO_2024.3.0_rev.7edb05f
GPU Driver 24.26.30049.6

Installation procedure

  1. Remove old packages
dpkg --purge --force-remove-reinstreq intel-driver-compiler-npu intel-fw-npu intel-level-zero-npu
  1. Download all *.deb package
  • Ubuntu22.04
wget https://github.com/intel/linux-npu-driver/releases/download/v1.8.0/intel-driver-compiler-npu_1.8.0.20240916-10885588273_ubuntu22.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.8.0/intel-fw-npu_1.8.0.20240916-10885588273_ubuntu22.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.8.0/intel-level-zero-npu_1.8.0.20240916-10885588273_ubuntu22.04_amd64.deb
  • Ubuntu24.04
wget https://github.com/intel/linux-npu-driver/releases/download/v1.8.0/intel-driver-compiler-npu_1.8.0.20240916-10885588273_ubuntu24.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.8.0/intel-fw-npu_1.8.0.20240916-10885588273_ubuntu24.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.8.0/intel-level-zero-npu_1.8.0.20240916-10885588273_ubuntu24.04_amd64.deb
  1. Install libtbb12 which is a dependency for intel-driver-compiler-npu
sudo apt update
sudo apt install libtbb12
  1. Install all packages
sudo dpkg -i *.deb
  1. Install Level Zero if it is not in the system
# check if Level Zero is installed
dpkg -l level-zero

# download and install package if Level Zero is missing
wget https://github.com/oneapi-src/level-zero/releases/download/v1.17.6/level-zero_1.17.6+u22.04_amd64.deb
dpkg -i level-zero*.deb
  1. Reboot
reboot
# if everything works, we should see /dev/accel/accel0 device
ls /dev/accel/accel0
/dev/accel/accel0
# to receive intel_vpu state
dmesg

User access to the device

As a root user, this step can be skipped.

The new device /dev/accel/accel0 requires manual setting of permissions access.
The accel devices should be in the "render" group in Ubuntu:

# set the render group for accel device
sudo chown root:render /dev/accel/accel0
sudo chmod g+rw /dev/accel/accel0
# add user to the render group
sudo usermod -a -G render <user-name>
# user needs to restart the session to use the new group (log out and log in)

The above steps must be repeated each time module is reloaded or on every reboot.
To avoid manual setup of the group for accel device, the udev rules can be used:

sudo bash -c "echo 'SUBSYSTEM==\"accel\", KERNEL==\"accel*\", GROUP=\"render\", MODE=\"0660\"' > /etc/udev/rules.d/10-intel-vpu.rules"
sudo udevadm control --reload-rules
sudo udevadm trigger --subsystem-match=accel

Tip

In case of NPU is not visible, always check the access to the device with following command:

$ ls -lah /dev/accel/accel0
crw-rw---- 1 root render 261, 0 Mar 22 13:22 /dev/accel/accel0

If render is missing, or crw-rw---- is not set, please repeat the steps to set the access to the device.

⚠️ The test application prefix has been changed from vpu to npu:
▪️ vpu-umd-test ➡️ npu-umd-test
▪️ vpu-kmd-test ➡️ npu-kmd-test

Important

For more information check README.md

Linux NPU Driver v1.6.0

14 Aug 18:14
Compare
Choose a tag to compare

Validated on following configuration

Platform System Kernel Firmware
Meteor Lake Ubuntu22.04 LTS 6.5.0-45-generic 20240726*MTL_CLIENT_SILICON-release*0004*ci_tag_ud202428_vpu_rc_20240726_0004*e4a99ed6b3e
Ubuntu24.04 LTS 6.8.0-40-generic 20240726*MTL_CLIENT_SILICON-release*0004*ci_tag_ud202428_vpu_rc_20240726_0004*e4a99ed6b3e
Arrow Lake Ubuntu22.04 LTS 6.5.0-45-generic 20240726*MTL_CLIENT_SILICON-release*0004*ci_tag_ud202428_vpu_rc_20240726_0004*e4a99ed6b3e
Ubuntu24.04 LTS 6.8.0-40-generic 20240726*MTL_CLIENT_SILICON-release*0004*ci_tag_ud202428_vpu_rc_20240726_0004*e4a99ed6b3e
Lunar Lake Ubuntu22.04 LTS 6.8.12 Jul 26 2024*LNL*ci_tag_ud202428_vpu_rc_20240726_0004*e4a99ed6b3e2e6c5a6e920cfa427bb4db2547c13
Ubuntu24.04 LTS 6.8.0-40-generic Jul 26 2024*LNL*ci_tag_ud202428_vpu_rc_20240726_0004*e4a99ed6b3e2e6c5a6e920cfa427bb4db2547c13

Common:

Component Version
Level Zero v1.17.6
OpenVINO Archive Package 2024.3.0
OpenVINO Python Package 2024.3.0
OpenVINO built from source OpenVINO_2024.3.0_rev.7edb05f
NPU Compiler npu_ud_2024_32_rc1 built using OpenVINO_2024.3.0_rev.7edb05f
GPU Driver 24.26.30049.6

Installation procedure

  1. Remove old packages
dpkg --purge --force-remove-reinstreq intel-driver-compiler-npu intel-fw-npu intel-level-zero-npu
  1. Download all *.deb package
  • Ubuntu22.04
wget https://github.com/intel/linux-npu-driver/releases/download/v1.6.0/intel-driver-compiler-npu_1.6.0.20240814-10390978568_ubuntu22.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.6.0/intel-fw-npu_1.6.0.20240814-10390978568_ubuntu22.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.6.0/intel-level-zero-npu_1.6.0.20240814-10390978568_ubuntu22.04_amd64.deb
  • Ubuntu24.04
wget https://github.com/intel/linux-npu-driver/releases/download/v1.6.0/intel-driver-compiler-npu_1.6.0.20240814-10390978568_ubuntu24.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.6.0/intel-fw-npu_1.6.0.20240814-10390978568_ubuntu24.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.6.0/intel-level-zero-npu_1.6.0.20240814-10390978568_ubuntu24.04_amd64.deb
  1. Install libtbb12 which is a dependency for intel-driver-compiler-npu
sudo apt update
sudo apt install libtbb12
  1. Install all packages
sudo dpkg -i *.deb
  1. Install Level Zero if it is not in the system
# check if Level Zero is installed
dpkg -l level-zero

# download and install package if Level Zero is missing
wget https://github.com/oneapi-src/level-zero/releases/download/v1.17.6/level-zero_1.17.6+u22.04_amd64.deb
wget https://github.com/oneapi-src/level-zero/releases/download/v1.17.6/level-zero-devel_1.17.6+u22.04_amd64.deb
dpkg -i level-zero*.deb
  1. Reboot
reboot
# if everything works, we should see /dev/accel/accel0 device
ls /dev/accel/accel0
/dev/accel/accel0
# to receive intel_vpu state
dmesg

User access to the device

As a root user, this step can be skipped.

The new device /dev/accel/accel0 requires manual setting of permissions access.
The accel devices should be in the "render" group in Ubuntu:

# set the render group for accel device
sudo chown root:render /dev/accel/accel0
sudo chmod g+rw /dev/accel/accel0
# add user to the render group
sudo usermod -a -G render <user-name>
# user needs to restart the session to use the new group (log out and log in)

The above steps must be repeated each time module is reloaded or on every reboot.
To avoid manual setup of the group for accel device, the udev rules can be used:

sudo bash -c "echo 'SUBSYSTEM==\"accel\", KERNEL==\"accel*\", GROUP=\"render\", MODE=\"0660\"' > /etc/udev/rules.d/10-intel-vpu.rules"
sudo udevadm control --reload-rules
sudo udevadm trigger --subsystem-match=accel

Tip

In case of NPU is not visible, always check the access to the device with following command:

$ ls -lah /dev/accel/accel0
crw-rw---- 1 root render 261, 0 Mar 22 13:22 /dev/accel/accel0

If render is missing, or crw-rw---- is not set, please repeat the steps to set the access to the device.

Important

For more information check README.md

Linux NPU Driver v1.5.1

09 Jul 10:13
Compare
Choose a tag to compare

Validated on following configuration

Platform System Kernel Firmware
Meteor Lake Ubuntu22.04 6.5.0-41-generic 20240611*MTL_CLIENT_SILICON-release*0003*ci_tag_ud202424_vpu_rc_20240611_0003*f3e8a8f2747
Ubuntu24.04 6.8.0-35-generic 20240611*MTL_CLIENT_SILICON-release*0003*ci_tag_ud202424_vpu_rc_20240611_0003*f3e8a8f2747
Arrow Lake Ubuntu22.04 6.8.12 20240611*MTL_CLIENT_SILICON-release*0003*ci_tag_ud202424_vpu_rc_20240611_0003*f3e8a8f2747
Ubuntu24.04 6.8.0-35-generic 20240611*MTL_CLIENT_SILICON-release*0003*ci_tag_ud202424_vpu_rc_20240611_0003*f3e8a8f2747
Lunar Lake Ubuntu22.04 6.8.12 Jun 11 2024*LNL*ci_tag_ud202424_vpu_rc_20240611_0003*f3e8a8f27471d4127d8d92a8dc679b861ef43e43
Ubuntu24.04 6.8.12 Jun 11 2024*LNL*ci_tag_ud202424_vpu_rc_20240611_0003*f3e8a8f27471d4127d8d92a8dc679b861ef43e43

Common:

Component Version
Level Zero v1.17.6
OpenVINO Archive Package 2024.2.0 only in Ubuntu22.04
OpenVINO Python Package 2024.2.0 only in Ubuntu24.04
OpenVINO built from source OpenVINO 2024.2.0.dev20240513
NPU Compiler npu_ud_2024_24_rc3 built using OpenVINO 2024.2.0.dev20240513

Installation procedure

  1. Remove old packages
dpkg --purge --force-remove-reinstreq intel-driver-compiler-npu intel-fw-npu intel-level-zero-npu
  1. Download all *.deb package
  • Ubuntu22.04
wget https://github.com/intel/linux-npu-driver/releases/download/v1.5.1/intel-driver-compiler-npu_1.5.1.20240708-9842236399_ubuntu22.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.5.1/intel-fw-npu_1.5.1.20240708-9842236399_ubuntu22.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.5.1/intel-level-zero-npu_1.5.1.20240708-9842236399_ubuntu22.04_amd64.deb
  • Ubuntu24.04
wget https://github.com/intel/linux-npu-driver/releases/download/v1.5.1/intel-driver-compiler-npu_1.5.1.20240708-9842236399_ubuntu24.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.5.1/intel-fw-npu_1.5.1.20240708-9842236399_ubuntu24.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.5.1/intel-level-zero-npu_1.5.1.20240708-9842236399_ubuntu24.04_amd64.deb
  1. Install libtbb12 which is a dependency for intel-driver-compiler-npu
sudo apt update
sudo apt install libtbb12
  1. Install all packages
sudo dpkg -i *.deb
  1. Install Level Zero if it is not in the system
# check if Level Zero is installed
dpkg -l level-zero

# download and install package if Level Zero is missing
wget https://github.com/oneapi-src/level-zero/releases/download/v1.17.6/level-zero_1.17.6+u22.04_amd64.deb
wget https://github.com/oneapi-src/level-zero/releases/download/v1.17.6/level-zero-devel_1.17.6+u22.04_amd64.deb
dpkg -i level-zero*.deb
  1. Reboot
reboot
# if everything works, we should see /dev/accel/accel0 device
ls /dev/accel/accel0
/dev/accel/accel0
# to receive intel_vpu state
dmesg

User access to the device

As a root user, this step can be skipped.

The new device /dev/accel/accel0 requires manual setting of permissions access.
The accel devices should be in the "render" group in Ubuntu:

# set the render group for accel device
sudo chown root:render /dev/accel/accel0
sudo chmod g+rw /dev/accel/accel0
# add user to the render group
sudo usermod -a -G render <user-name>
# user needs to restart the session to use the new group (log out and log in)

The above steps must be repeated each time module is reloaded or on every reboot.
To avoid manual setup of the group for accel device, the udev rules can be used:

sudo bash -c "echo 'SUBSYSTEM==\"accel\", KERNEL==\"accel*\", GROUP=\"render\", MODE=\"0660\"' > /etc/udev/rules.d/10-intel-vpu.rules"
sudo udevadm control --reload-rules
sudo udevadm trigger --subsystem-match=accel

Tip

In case of NPU is not visible, always check the access to the device with following command:

$ ls -lah /dev/accel/accel0
crw-rw---- 1 root render 261, 0 Mar 22 13:22 /dev/accel/accel0

If render is missing, or crw-rw---- is not set, please repeat the steps to set the access to the device.

Important

For more information check README.md

Linux NPU Driver v1.5.0

19 Jun 15:45
ac8fe1e
Compare
Choose a tag to compare

Validated on following configuration

Platform System Kernel Level Zero OpenVINO Firmware
Meteor Lake Ubuntu22.04 v6.5.0-35-generic v1.17.2 2024.1 20240611*MTL_CLIENT_SILICON-release*0003*ci_tag_ud202424_vpu_rc_20240611_0003*f3e8a8f2747
Arrow Lake Ubuntu22.04 v6.8.12 v1.17.2 2024.1 20240611*MTL_CLIENT_SILICON-release*0003*ci_tag_ud202424_vpu_rc_20240611_0003*f3e8a8f2747
Lunar Lake Ubuntu22.04 v6.8.12 v1.17.2 2024.1 Jun 11 2024*LNL*ci_tag_ud202424_vpu_rc_20240611_0003*f3e8a8f27471d4127d8d92a8dc679b861ef43e43

NPU Driver Compiler package

The NPU Driver Compiler package (intel-driver-compiler-npu*.deb) has been built using OpenVINO 2024.2.0.dev20240513

Installation procedure on Ubuntu22.04

  1. Remove old packages
dpkg --purge --force-remove-reinstreq intel-driver-compiler-npu intel-fw-npu intel-level-zero-npu
  1. Download all *.deb packages
wget https://github.com/intel/linux-npu-driver/releases/download/v1.5.0/intel-driver-compiler-npu_1.5.0.20240619-9582784383_ubuntu22.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.5.0/intel-fw-npu_1.5.0.20240619-9582784383_ubuntu22.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.5.0/intel-level-zero-npu_1.5.0.20240619-9582784383_ubuntu22.04_amd64.deb
  1. Install libtbb12 which is a dependency for intel-driver-compiler-npu
sudo apt update
sudo apt install libtbb12
  1. Install all packages
sudo dpkg -i *.deb
  1. Install Level Zero if it is not in the system
# check if Level Zero is installed
dpkg -l level-zero

# download and install package if Level Zero is missing
wget https://github.com/oneapi-src/level-zero/releases/download/v1.17.2/level-zero_1.17.2+u22.04_amd64.deb
dpkg -i level-zero*.deb
  1. Reboot
reboot
# if everything works, we should see /dev/accel/accel0 device
ls /dev/accel/accel0
/dev/accel/accel0
# to receive intel_vpu state
dmesg

User access to the device

As a root user, this step can be skipped.

The new device /dev/accel/accel0 requires manual setting of permissions access.
The accel devices should be in the "render" group in Ubuntu:

# set the render group for accel device
sudo chown root:render /dev/accel/accel0
sudo chmod g+rw /dev/accel/accel0
# add user to the render group
sudo usermod -a -G render <user-name>
# user needs to restart the session to use the new group (log out and log in)

The above steps must be repeated each time module is reloaded or on every reboot.
To avoid manual setup of the group for accel device, the udev rules can be used:

sudo bash -c "echo 'SUBSYSTEM==\"accel\", KERNEL==\"accel*\", GROUP=\"render\", MODE=\"0660\"' > /etc/udev/rules.d/10-intel-vpu.rules"
sudo udevadm control --reload-rules
sudo udevadm trigger --subsystem-match=accel

Tip

In case of NPU is not visible, always check the access to the device with following command:

$ ls -lah /dev/accel/accel0
crw-rw---- 1 root render 261, 0 Mar 22 13:22 /dev/accel/accel0

If render is missing, or crw-rw---- is not set, please repeat the steps to set the access to the device.

Important

For more information check README.md

Linux NPU Driver v1.2.0

25 Mar 08:37
9d1dd3d
Compare
Choose a tag to compare

Components revisions included in the release

Tested components

Warning

On Ubuntu22.04 the linux-headers can be ignored from Ubuntu Kernel mainline. They are built for latest Ubuntu distribution

Installation procedure on Ubuntu22.04

  1. Remove old packages
dpkg --purge --force-remove-reinstreq intel-driver-compiler-npu intel-fw-npu intel-level-zero-npu level-zero
  1. Download all *.deb packages
wget https://github.com/intel/linux-npu-driver/releases/download/v1.2.0/intel-driver-compiler-npu_1.2.0.20240404-8553879914_ubuntu22.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.2.0/intel-fw-npu_1.2.0.20240404-8553879914_ubuntu22.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.2.0/intel-level-zero-npu_1.2.0.20240404-8553879914_ubuntu22.04_amd64.deb
  1. Install libtbb12 which is a dependency for intel-driver-compiler-npu
sudo apt update
sudo apt install libtbb12
  1. Install all packages
sudo dpkg -i *.deb
  1. Install Level Zero if it is not in the system
# check if Level Zero is installed
dpkg -l level-zero

# download and install package if Level Zero is missing
wget https://github.com/oneapi-src/level-zero/releases/download/v1.16.1/level-zero_1.16.1+u22.04_amd64.deb
dpkg -i level-zero*.deb
  1. Reboot
reboot
# if everything works, we should see /dev/accel/accel0 device
ls /dev/accel/accel0
/dev/accel/accel0
# to receive intel_vpu state
dmesg

User access to the device

As a root user, this step can be skipped.

The new device /dev/accel/accel0 requires manual setting of permissions access.
The accel devices should be in the "render" group in Ubuntu:

# set the render group for accel device
sudo chown root:render /dev/accel/accel0
sudo chmod g+rw /dev/accel/accel0
# add user to the render group
sudo usermod -a -G render <user-name>
# user needs to restart the session to use the new group (log out and log in)

The above steps must be repeated each time module is reloaded or on every reboot.
To avoid manual setup of the group for accel device, the udev rules can be used:

sudo bash -c "echo 'SUBSYSTEM==\"accel\", KERNEL==\"accel*\", GROUP=\"render\", MODE=\"0660\"' > /etc/udev/rules.d/10-intel-vpu.rules"
sudo udevadm control --reload-rules
sudo udevadm trigger --subsystem-match=accel

Tip

In case of NPU is not visible, always check the access to the device with following command:

$ ls -lah /dev/accel/accel0
crw-rw---- 1 root render 261, 0 Mar 22 13:22 /dev/accel/accel0

If render is missing, or crw-rw---- is not set, please repeat the steps to set the access to the device.

Additional information

The kernel driver intel_vpu can be found here in the kernel sources.

In case of any problems, please check README first.

See also

Linux NPU Driver v1.1.0

24 Nov 10:39
Compare
Choose a tag to compare

Components revisions included in the release

Tested components

Installation procedure on Ubuntu22.04

  1. Remove old packages
dpkg --purge --force-remove-reinstreq intel-driver-compiler-npu intel-fw-npu intel-level-zero-npu level-zero
  1. Download all *.deb packages
wget https://github.com/intel/linux-npu-driver/releases/download/v1.1.0/intel-driver-compiler-npu_1.1.0.20231117-6904283384_ubuntu22.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.1.0/intel-fw-npu_1.1.0.20231117-6904283384_ubuntu22.04_amd64.deb
wget https://github.com/intel/linux-npu-driver/releases/download/v1.1.0/intel-level-zero-npu_1.1.0.20231117-6904283384_ubuntu22.04_amd64.deb
wget https://github.com/oneapi-src/level-zero/releases/download/v1.10.0/level-zero_1.10.0+u22.04_amd64.deb
  1. Install all packages
dpkg -i *.deb

Warning

The NPU driver v1.1.0 requires to use level-zero v1.10.0 version.
To check what is installed, run:

$ dpkg -l level-zero
ii  level-zero     1.10.0       amd64        oneAPI Level Zero

This issue will be solved in next driver release and any level-zero loader can be used.

After successful installation of packages, we recommend to do the machine reboot.
After that, the intel_vpu module should work properly with firmware from intel-fw-npu package.

reboot
# if everything works, we should see /dev/accel/accel0 device
ls /dev/accel/accel0
# to receive intel_vpu state, check dmesg
dmesg

User access to the device

If you are using the root user, this step can be skipped.

The new device /dev/accel/accel0 requires to set manually permission access.
The accel devices should be in the "render" group in Ubuntu:

# set the render group for accel device
sudo chown root:render /dev/accel/accel0
sudo chmod g+rw /dev/accel/accel0
# add user to the render group
sudo usermod -a -G render <user-name>
# user needs to restart the session to use the new group (log out and log in)

The above steps must be repeated each time module is reloaded or on every reboot.
To avoid manual setup of the group for accel device, the udev rules can be used:

sudo bash -c "echo 'SUBSYSTEM==\"accel\", KERNEL==\"accel*\", GROUP=\"render\", MODE=\"0660\"' > /etc/udev/rules.d/10-intel-vpu.rules"
sudo udevadm control --reload-rules
sudo udevadm trigger --subsystem-match=accel

Warning

In case of NPU is not visible, always check the access to the device with following command:

$ ls -lah /dev/accel/accel0
crw-rw---- 1 root render 261, 0 Jan 31 15:58 /dev/accel/accel0

If render is missing, or crw-rw---- is not set, repeat the steps to set the access to the device.

Additional information

The kernel driver intel_vpu can be found here.

See also