Skip to content

Linux NPU Driver v1.32.0

Latest

Choose a tag to compare

@mschulfe mschulfe released this 03 Apr 16:02
· 1 commit to main since this release
8939163

✨ Highlights

  • 🆕 Added support for Wildcat Lake platform
    Introduced support for the next-generation Wildcat Lake platform.

  • 🔄 Removed third_party/level-zero submodule
    The repository no longer relies on the Level Zero submodule, reducing maintenance overhead and repository complexity.

  • 📦 Dynamic Level Zero dependency resolution
    Added automatic detection and download of Level Zero from GitHub when it is not available on the system.

  • 🐧 Ubuntu 24.04 snapshot package support
    Integrated support for Ubuntu 24.04 via PPA snapshots:

    • automatic download of libze1 and libze-dev packages
    • automatic extraction and usage during the build process
  • 📝 UMD driver features document added
    Added a new document detailing UMD driver features currently in use, including logging, offline compilation, caching, and tracing with Perfetto. The document can be found in the docs folder.

⚙️ Verified Configuration

Platform System Kernel Firmware
Meteor Lake Ubuntu 24.04 LTS 6.17.0-19-generic 20260305*MTL_CLIENT_SILICON-NVR+NN-deployment*dbda783919b77553afe5576a59881bca37fb6d7b*dbda783919b77553afe5576a59881bca37fb6d7b*dbda783919b
Arrow Lake Ubuntu 24.04 LTS 6.17.0-19-generic 20260305*MTL_CLIENT_SILICON-NVR+NN-deployment*dbda783919b77553afe5576a59881bca37fb6d7b*dbda783919b77553afe5576a59881bca37fb6d7b*dbda783919b
Lunar Lake Ubuntu 24.04 LTS 6.17.0-19-generic Mar 5 2026*NPU40xx*ci_tag_ud202612_vpu_rc_20260304_1901-2-gdbda783919b*dbda783919b77553afe5576a59881bca37fb6d7b
Panther Lake Ubuntu 24.04 LTS 6.17.0-19-generic Mar 5 2026*NPU50xx*ci_tag_ud202612_vpu_rc_20260304_1901-2-gdbda783919b*dbda783919b77553afe5576a59881bca37fb6d7b
Wildcat Lake Ubuntu 24.04 LTS 6.17.0-19-generic Mar 5 2026*NPU50xx*ci_tag_ud202612_vpu_rc_20260304_1901-2-gdbda783919b*dbda783919b77553afe5576a59881bca37fb6d7b

🧩 Common Components

The following table lists the common software components and their versions used in this configuration:

Component Version / Details
Level Zero v1.27.0
OpenVINO 2026.0
NPU Compiler npu_ud_2026_12_rc1, built using OpenVINO_rev.b7f9dbf
GPU Driver 25.35.35096.9

🛠️ Installation Procedure

  1. Remove old packages
sudo dpkg --purge --force-remove-reinstreq intel-driver-compiler-npu intel-fw-npu intel-level-zero-npu intel-level-zero-npu-dbgsym
  1. Download all *.deb package
wget https://github.com/intel/linux-npu-driver/releases/download/v1.32.0/linux-npu-driver-v1.32.0.20260402-23905121947-ubuntu2404.tar.gz
tar -xf linux-npu-driver-v1.32.0.20260402-23905121947-ubuntu2404.tar.gz
  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 libze1 package
wget https://snapshot.ppa.launchpadcontent.net/kobuk-team/intel-graphics/ubuntu/20260324T100000Z/pool/main/l/level-zero-loader/libze1_1.27.0-1~24.04~ppa2_amd64.deb
sudo dpkg -i libze1_*.deb

⚠️ In case of conflict or error in libze1 installation, remove previously installed Level Zero version:

sudo dpkg --purge --force-remove-reinstreq level-zero level-zero-devel
  1. Optional add your user to render group
sudo gpasswd -a ${USER} render
newgrp render
  1. Optional reboot
sudo reboot
# if everything works, we should see /dev/accel/accel0 device
ls /dev/accel/accel0
/dev/accel/accel0
# to receive intel_vpu state
sudo dmesg

🛡️GPG sign & Verify deb packages

Signing data with a GPG key allows the recipient of the data to check whether any modifications have occurred after the data was signed.

Since release 1.22.0, each Debian package file (.deb file) has been signed with a GPG key, and the signature is included in the archive.

The Public Key has been uploaded to https://keys.openpgp.org/search?q=EA267657A608300C296B8F8AD52C9665A4077678

To verify the signature:

# Download and import the Public Key
curl https://keys.openpgp.org/vks/v1/by-fingerprint/EA267657A608300C296B8F8AD52C9665A4077678 | gpg --import

# Download the driver package
wget https://github.com/intel/linux-npu-driver/releases/download/v1.32.0/linux-npu-driver-v1.32.0.20260402-23905121947-ubuntu2404.tar.gz
tar -xf linux-npu-driver-v1.32.0.20260402-23905121947-ubuntu2404.tar.gz

# Verify signatures
for PACKAGE in *deb.asc; do gpg --verify $PACKAGE; done

🧪 UMD Test Results

Platform OS / Kernel Command ALL PASSED FAILED SKIPPED
MTL Ubuntu 24.04 / 6.17.0-19-generic npu-umd-test 257 ✅ 175 ❌ 1
Click reason
  • Umd.ConfigurationCheck — Missed configuration file
⚠️ 81
sudo npu-umd-test --dma-heap 4 ✅ 4 ❌ 0 ⚠️ 0
npu-umd-test --ze-init-test 6 ✅ 6 ❌ 0 ⚠️ 0
npu-umd-test --gpu 3 ✅ 2 ❌ 0 ⚠️ 1
npu-umd-test -c extend.yaml 361 ✅ 302 ❌ 0 ⚠️ 59
ARL Ubuntu 24.04 / 6.17.0-19-generic npu-umd-test 257 ✅ 175 ❌ 1
Click reason
  • Umd.ConfigurationCheck — Missed configuration file
⚠️ 81
sudo npu-umd-test --dma-heap 4 ✅ 4 ❌ 0 ⚠️ 0
npu-umd-test --ze-init-test 6 ✅ 6 ❌ 0 ⚠️ 0
npu-umd-test --gpu 3 ✅ 2 ❌ 0 ⚠️ 1
npu-umd-test -c extend.yaml 361 ✅ 302 ❌ 0 ⚠️ 59
LNL Ubuntu 24.04 / 6.17.0-19-generic npu-umd-test 257 ✅ 199 ❌ 1
Click reason
  • Umd.ConfigurationCheck — Missed configuration file
⚠️ 57
sudo npu-umd-test --dma-heap 4 ✅ 4 ❌ 0 ⚠️ 0
npu-umd-test --ze-init-test 6 ✅ 6 ❌ 0 ⚠️ 0
npu-umd-test --gpu 3 ✅ 3 ❌ 0 ⚠️ 0
npu-umd-test -c extend.yaml 361 ✅ 326 ❌ 0 ⚠️ 35
PTL Ubuntu 24.04 / 6.17.0-19-generic npu-umd-test 257 ✅ 199 ❌ 1
Click reason
  • Umd.ConfigurationCheck — Missed configuration file
⚠️ 57
sudo npu-umd-test --dma-heap 4 ✅ 4 ❌ 0 ⚠️ 0
npu-umd-test --ze-init-test 6 ✅ 6 ❌ 0 ⚠️ 0
npu-umd-test --gpu 3 ✅ 3 ❌ 0 ⚠️ 0
npu-umd-test -c extend.yaml 361 ✅ 326 ❌ 0 ⚠️ 35

For the -c option of npu-umd-test, the extend.yaml configuration file was used. It can be obtained from the UMD testing documentation and examples provided in the Intel NPU driver repository (umd-testing.md). The tests were run with the following YAML configuration:

extend.yaml
# filename: extend.yaml
model_dir: models/
image_dir: images/

graph_execution:
  - path: add_abc/add_abc.xml
  - path: resnet50.xml
    name: resnet50
    in: [ dog.bmp ]
    class_index: [ 258 ]
  - path: yolov8s.xml
    name: yolov8s

image_classification_imagenet:
  - path: resnet50.xml
    name: resnet50
    in: [ dog.bmp ]
    class_index: [ 258 ]

driver_cache:
  - path: add_abc/add_abc.xml
  - path: resnet50.xml
  - path: yolov8s.xml

multi_inference:
  - name: "ObjectRecognitionPipeline"
    pipeline:
    - path: resnet50.xml
      target_fps: 60
      exec_time_in_secs: 10
    - path: yolov8s.xml
      target_fps: 30
      exec_time_in_secs: 10

🔍 Driver Overview

Important

For more information check README.md