NPU Virtualization¶
In a virtualized environment, Rebellions NPUs can be assigned directly to a VM through PCI pass-through, allowing multiple isolated workloads to run on a single physical server while preserving near-native NPU performance.
The following virtualization methods are currently supported:
| Method | Description | NPU sharing | Hypervisor | Status |
|---|---|---|---|---|
| PCI Pass-Through | Directly assigns an NPU to a VM for exclusive use | Not supported | KVM/Linux | Supported |
The NPU products and PCI identifiers supported in virtualized environments are as follows:
| Product | vendor_id | product_id | PCI count | Method |
|---|---|---|---|---|
| RBLN-CA22 | 1eff |
1220 |
1 per slot | PCI Pass-Through |
| RBLN-CA25 | 1eff |
1250 |
4 per slot | PCI Pass-Through |
Note
The examples in this document are based on RBLN-CA22. When using a different product, refer to the product_id and PCI device count in the table above.
This document first describes how to assign an NPU to a VM by virtualization method on Linux KVM, and then covers NPU assignment and performance optimization in OpenStack environments.