Device Lending with guest OSes¶
Hint
Passthrough support is scheduled for the upcoming 5.25 release. Please contact support for early access.
Similar to bare-metal Device Lending, SmartIO allows you to share pooled PCIe devices in a cluster to guest operating systems. We encourage to learn how to use device lending in the bare-metal case before looking at this section.
Requirements¶
You must have a Dolphin cluster with a topology supported by SmartIO.
The cluster nodes must follow the platform requirements and the lender must support peer-to-peer.
The cluster nodes must run a supported operating system.
The nodes must have a large enough NTB prefetchable size.
The nodes must have enabled IOMMU.
eXpressWare Installation¶
When installing eXpressWare, make sure to request installation of SmartIO with
virtualization support by passing the --enable-smartio and the
--enable-smartio-virt argument. Please refer to the
installation guide for more details.
Lending Devices to the Pool¶
The devices that are going to be shared must be added and made available with
smartio_tool add and smartio_tool available passing the
BDF of the device. The lender must also be connected to all the
borrowers with smartio_tool connect. See Lending Local Devices for
more details.
Passthrough of pooled devices¶
Devices in the pool can be passed through by nodes to be used like a paravirtualized device that achieves near-native performance. See passing through pooled devices for more details.