SlideShare a Scribd company logo
SR-IOV On ACRN
Yuan LIU
Liu, Yuan1 <yuan1.liu@intel.com>
04/01/2020
Agenda
❑SR-IOV Introduction
❑SR-IOV Architecture On ACRN
❑SR-IOV Demo – Intel 82576
SR-IOV Introduction
SR-IOV(single root input/output virtualization) can isolate PCIe devices and make the
devices to have good performance, close to bare-metal. The SR-IOV framework consists
of two basic units, one is called PF(Physical Function) that supports SR-IOV extended
capability and manages entire physical device, another is called VF (Virtual Function) and
it is a "light-weight" PCIe function which is used to assigned to a VM as a pass-through
device.
https://projectacrn.github.io/latest/tutorials/sriov_virtualization.html
SR-IOV Overview
• SI - System image like guest VM.
• VI - Virtualization Intermediary known as VMM or
hypervisor.
• SR-PCIM - Single Root PCI Manager is a software
entity for SR-IOV management.
• PF - A PF is a PCIe Function that supports the SR-
IOV capability and is accessible to an SR-PCIM, a
VI, or an SI.
• VF - A VF is a “light-weight” PCIe Function that is
directly accessible by an SI.
SR-IOV Extended Capability
SR-IOV Register
⚫ VF Migration Capable
⚫ Indicates that the PF supports VF Migration.
⚫ ARI Capable Hierarchy Preserved
⚫ For PCI Express Endpoint, it indicates if the ARI Capable Hierarchy bit is
preserved across certain power state transitions.
⚫ For RCiEP, it is not applicable.
⚫ VF 10-Bit Tag Requester Supported
⚫ Indicates if VFs support 10-Bit Tag Requester capability.
⚫ VF Migration Interrupt Message Number
⚫ Indicates the MSI/MSI-X vector used for migration interrupts.
SR-IOV Register
⚫ SR-IOV Control
⚫ VF Enable
⚫ VF Migration Enable
⚫ VF Migration Interrupt Enable
⚫ VF MSE(Memory Space Enable)
⚫ ARI Capable Hierarchy
⚫ VF 10-Bit Tag Requester Enable
⚫ SR-IOV Status
⚫ VF Migration Status
SR-IOV Register
⚫ InitialVFs
⚫ It indicates to the number of VFs that are initially associated
with the PF.
⚫ For Devices operating in Single-Root mode, this field is HwInit
and must contain the same value as TotalVFs.
⚫ TotalVFs
⚫ It indicates the maximum number of VFs that could be
associated with the PF.
⚫ For Devices operating in Single-Root mode, this field is HwInit
and must contain the same value as InitialVFs.
⚫ NumVFs
⚫ It controls the number of VFs that are visible.
⚫ It may only be written while VF Enable is Clear.
⚫ NumVFs <= InitialVFs = TotalVFs.
SR-IOV Register
The programming model for a device may have vendor-specific
dependencies between sets of Functions. If PF p and PF q are
in the same Function Dependency List, than any SI that is
assigned VF p,n shall also be assigned to VF q,n.
PF 0 depends on PF1 and PF1
depends on PF 0.
PF 2 is independent from other PFs.
VF 0,1 and VF 1,1 are same with PF 0
and PF 1 dependency, so need to
assign VF 0,1 and VF 1,1 to a same
VM.
VF 0,2 is independent, same with PF 2,
it can be assigned separately.
Dependency relationship can be
determined by sysfs entry:
/sys/bus/pci/devices/…/dep_link
SR-IOV Register
First VF Offset is a constant and defines the Routing ID
offset of the first VF.
VF Stride defines the Routing ID offset from one VF to the
next one for all VFs.
First VF Offset and VF Stride are
set by device, software access with
Read Only.
After configuring NumVFs and ARI
Capable Hierarchy, software may
read First VF Offset and VF Stride
to determine how many bus
numbers would be consumed by the
PF’s VFs.
SR-IOV Register
This field contains the Device ID that should be presented for
every VF to the SI. VF Device ID may be different from the PF
Device ID.
SR-IOV Register
⚫ Supported Page Size
⚫ This field indicates the page sizes supported by the PF.
⚫ PFs are required to support 4-KB, 8-KB, 64-KB, 256-KB,
1-MB, and 4-MB page sizes.
⚫ System Page Size
⚫ It is used to align all VF BAR resources on a System
Page Size boundary.
⚫ Software must set the value of the System Page Size to
one of the page sizes set in the Supported Page Sizes.
SR-IOV Register
SR-IOV Register
If VF Migration Capable is Set and TotalVFs is not zero,
this register shall contain a PF BAR relative pointer to
the VF Migration State Array.
The VF Migration State Array has a VF Migration State
Entry for each VF.
ARI Capability
⚫ The ARI(Alternative Routing ID
Interpretation Extended Capability)
capability enables a device to support
up to 256 functions
⚫ If software does not configure sufficient
additional bus numbers, then the VFs
implemented for the additional Bus
numbers may not be visible.
⚫ Max bus number can be defined by
numVFs, First VF Offset and VF Stride.
SR-IOV Interrupt Mechanism
• PFs can support INTx, MSI or MSI-X interrupt resources
• VFs only support MSI or MSI-X interrupt resources.
SR-IOV Power Management
SR-IOV VF Migration
⚫ A VF can be optionally migrated from one PF to another PF.
⚫ VF Migration Capable and VF Migration Enable must be Set
when enable VF migration.
⚫ VF Migration is an optional feature, ACRN doesn’t support it.
Agenda
❑SR-IOV Introduction
❑SR-IOV Architecture In ACRN
❑SR-IOV Demo – Intel 82576
ACRN vPCI Architecture
ACRN Configuration Space Accessing
SR-IOV Architecture On ACRN
1. A hypervisor detects a SR-IOV
capable PCIe device in the
physical PCI device enumeration
phase.
2. The hypervisor intercepts the PF’s
SR-IOV capability.
3. The hypervisor waits for 100ms
after VF_ENABLE is set and
initializes VF devices.
SR-IOV Passthrough VF Architecture
1. The VF device needs to bind PCI-
Stud driver instead VF driver before
passthrough the device.
2. acrn-dm assigns the VF device with
passthrough parameters to target
VM.
3. Hypervisor adds new virtual device
on target VM’s virtual PCI bus and
initialize it with physical device. For
VF virtual device, emulate Device
ID/Vendor ID and MSE.
4. VF driver in target VM is able to
probe the VF device.
SR-IOV Initialization Flow
SR-IOV VF Enable Flow
SR-IOV VF Disable Flow
SR-IOV VF Assignment Policy
• All SR-IOV PF devices are
managed by the Service VM.
• Currently, the SR-IOV PF cannot
passthrough to the User VM.
• All VFs can passthrough to the
User VM, but we do not
recommend a passthrough to
high privilege VMs because the
PF device may impact the
assigned VFs’ functionality and
stability.
Agenda
❑SR-IOV Introduction
❑SR-IOV Architecture In ACRN
❑SR-IOV Demo – Intel 82576
Q & A
Ad

More Related Content

What's hot (20)

Uboot startup sequence
Uboot startup sequenceUboot startup sequence
Uboot startup sequence
Houcheng Lin
 
SR-IOV Introduce
SR-IOV IntroduceSR-IOV Introduce
SR-IOV Introduce
Lingfei Kong
 
PCIe
PCIePCIe
PCIe
ChiaYang Tsai
 
Slideshare - PCIe
Slideshare - PCIeSlideshare - PCIe
Slideshare - PCIe
Jin Wu
 
Soc architecture and design
Soc architecture and designSoc architecture and design
Soc architecture and design
Satya Harish
 
PCIe DL_layer_3.0.1 (1)
PCIe DL_layer_3.0.1 (1)PCIe DL_layer_3.0.1 (1)
PCIe DL_layer_3.0.1 (1)
Rakeshkumar Sachdev
 
Pcie drivers basics
Pcie drivers basicsPcie drivers basics
Pcie drivers basics
Venkatesh Malla
 
Pci express3-device-architecture-optimizations-idf2009-presentation
Pci express3-device-architecture-optimizations-idf2009-presentationPci express3-device-architecture-optimizations-idf2009-presentation
Pci express3-device-architecture-optimizations-idf2009-presentation
jkcontee
 
20111015 勉強会 (PCIe / SR-IOV)
20111015 勉強会 (PCIe / SR-IOV)20111015 勉強会 (PCIe / SR-IOV)
20111015 勉強会 (PCIe / SR-IOV)
Kentaro Ebisawa
 
Tutorial WiFi driver code - Opening Nuts and Bolts of Linux WiFi Subsystem
Tutorial WiFi driver code - Opening Nuts and Bolts of Linux WiFi SubsystemTutorial WiFi driver code - Opening Nuts and Bolts of Linux WiFi Subsystem
Tutorial WiFi driver code - Opening Nuts and Bolts of Linux WiFi Subsystem
Dheryta Jaisinghani
 
Ovs dpdk hwoffload way to full offload
Ovs dpdk hwoffload way to full offloadOvs dpdk hwoffload way to full offload
Ovs dpdk hwoffload way to full offload
Kevin Traynor
 
UVM Methodology Tutorial
UVM Methodology TutorialUVM Methodology Tutorial
UVM Methodology Tutorial
Arrow Devices
 
What are latest new features that DPDK brings into 2018?
What are latest new features that DPDK brings into 2018?What are latest new features that DPDK brings into 2018?
What are latest new features that DPDK brings into 2018?
Michelle Holley
 
U boot porting guide for SoC
U boot porting guide for SoCU boot porting guide for SoC
U boot porting guide for SoC
Macpaul Lin
 
Pcie basic
Pcie basicPcie basic
Pcie basic
Saifuddin Kaijar
 
Static partitioning virtualization on RISC-V
Static partitioning virtualization on RISC-VStatic partitioning virtualization on RISC-V
Static partitioning virtualization on RISC-V
RISC-V International
 
VLANs in the Linux Kernel
VLANs in the Linux KernelVLANs in the Linux Kernel
VLANs in the Linux Kernel
Kernel TLV
 
PCIe Error Status (1).pptx
PCIe Error Status (1).pptxPCIe Error Status (1).pptx
PCIe Error Status (1).pptx
ssuser1c8ca21
 
Device Tree for Dummies (ELC 2014)
Device Tree for Dummies (ELC 2014)Device Tree for Dummies (ELC 2014)
Device Tree for Dummies (ELC 2014)
Thomas Petazzoni
 
Uvm dac2011 final_color
Uvm dac2011 final_colorUvm dac2011 final_color
Uvm dac2011 final_color
Jamal EL HAITOUT
 
Uboot startup sequence
Uboot startup sequenceUboot startup sequence
Uboot startup sequence
Houcheng Lin
 
Slideshare - PCIe
Slideshare - PCIeSlideshare - PCIe
Slideshare - PCIe
Jin Wu
 
Soc architecture and design
Soc architecture and designSoc architecture and design
Soc architecture and design
Satya Harish
 
Pci express3-device-architecture-optimizations-idf2009-presentation
Pci express3-device-architecture-optimizations-idf2009-presentationPci express3-device-architecture-optimizations-idf2009-presentation
Pci express3-device-architecture-optimizations-idf2009-presentation
jkcontee
 
20111015 勉強会 (PCIe / SR-IOV)
20111015 勉強会 (PCIe / SR-IOV)20111015 勉強会 (PCIe / SR-IOV)
20111015 勉強会 (PCIe / SR-IOV)
Kentaro Ebisawa
 
Tutorial WiFi driver code - Opening Nuts and Bolts of Linux WiFi Subsystem
Tutorial WiFi driver code - Opening Nuts and Bolts of Linux WiFi SubsystemTutorial WiFi driver code - Opening Nuts and Bolts of Linux WiFi Subsystem
Tutorial WiFi driver code - Opening Nuts and Bolts of Linux WiFi Subsystem
Dheryta Jaisinghani
 
Ovs dpdk hwoffload way to full offload
Ovs dpdk hwoffload way to full offloadOvs dpdk hwoffload way to full offload
Ovs dpdk hwoffload way to full offload
Kevin Traynor
 
UVM Methodology Tutorial
UVM Methodology TutorialUVM Methodology Tutorial
UVM Methodology Tutorial
Arrow Devices
 
What are latest new features that DPDK brings into 2018?
What are latest new features that DPDK brings into 2018?What are latest new features that DPDK brings into 2018?
What are latest new features that DPDK brings into 2018?
Michelle Holley
 
U boot porting guide for SoC
U boot porting guide for SoCU boot porting guide for SoC
U boot porting guide for SoC
Macpaul Lin
 
Static partitioning virtualization on RISC-V
Static partitioning virtualization on RISC-VStatic partitioning virtualization on RISC-V
Static partitioning virtualization on RISC-V
RISC-V International
 
VLANs in the Linux Kernel
VLANs in the Linux KernelVLANs in the Linux Kernel
VLANs in the Linux Kernel
Kernel TLV
 
PCIe Error Status (1).pptx
PCIe Error Status (1).pptxPCIe Error Status (1).pptx
PCIe Error Status (1).pptx
ssuser1c8ca21
 
Device Tree for Dummies (ELC 2014)
Device Tree for Dummies (ELC 2014)Device Tree for Dummies (ELC 2014)
Device Tree for Dummies (ELC 2014)
Thomas Petazzoni
 

Similar to Project ACRN: SR-IOV implementation (20)

Marvell SR-IOV Improves Server Virtualization Performance
Marvell SR-IOV Improves Server Virtualization PerformanceMarvell SR-IOV Improves Server Virtualization Performance
Marvell SR-IOV Improves Server Virtualization Performance
Marvell
 
NFV Orchestration for Optimal Performance
NFV Orchestration for Optimal PerformanceNFV Orchestration for Optimal Performance
NFV Orchestration for Optimal Performance
dfilppi
 
NPV and NPIV feature in MDS switches on SAN network
NPV and NPIV feature in MDS switches on SAN networkNPV and NPIV feature in MDS switches on SAN network
NPV and NPIV feature in MDS switches on SAN network
Tanay Chakraborty
 
Operating OPNFV: Deploy it, test it, run it
Operating OPNFV: Deploy it, test it, run itOperating OPNFV: Deploy it, test it, run it
Operating OPNFV: Deploy it, test it, run it
OPNFV
 
Sea final adapter
Sea final adapter Sea final adapter
Sea final adapter
asihan
 
XS Boston 2008 SR-IOV
XS Boston 2008 SR-IOVXS Boston 2008 SR-IOV
XS Boston 2008 SR-IOV
The Linux Foundation
 
EANTC Test Report: ADVA FSP 150 ProVMe
EANTC Test Report: ADVA FSP 150 ProVMeEANTC Test Report: ADVA FSP 150 ProVMe
EANTC Test Report: ADVA FSP 150 ProVMe
ADVA
 
Cisco IOS XRv Router Installation and Configuration Guide
Cisco IOS XRv Router Installation and Configuration GuideCisco IOS XRv Router Installation and Configuration Guide
Cisco IOS XRv Router Installation and Configuration Guide
Salachudin Emir
 
Embedded system - Introduction to interfacing with peripherals
Embedded system - Introduction to interfacing with peripheralsEmbedded system - Introduction to interfacing with peripherals
Embedded system - Introduction to interfacing with peripherals
Vibrant Technologies & Computers
 
OPNFV: Platform Performance Acceleration
OPNFV: Platform Performance AccelerationOPNFV: Platform Performance Acceleration
OPNFV: Platform Performance Acceleration
OPNFV
 
virtualization and hypervisors
virtualization and hypervisorsvirtualization and hypervisors
virtualization and hypervisors
Gaurav Suri
 
VMware vSphere 6.0 - Troubleshooting Training - Day 2
VMware vSphere 6.0 - Troubleshooting Training - Day 2VMware vSphere 6.0 - Troubleshooting Training - Day 2
VMware vSphere 6.0 - Troubleshooting Training - Day 2
Sanjeev Kumar
 
VMware Advance Troubleshooting Workshop - Day 2
VMware Advance Troubleshooting Workshop - Day 2VMware Advance Troubleshooting Workshop - Day 2
VMware Advance Troubleshooting Workshop - Day 2
Vepsun Technologies
 
Vsc 71-se-presentation-training
Vsc 71-se-presentation-trainingVsc 71-se-presentation-training
Vsc 71-se-presentation-training
narit_ton
 
Virtual Routing and Forwarding, (VRF-lite)
Virtual Routing and Forwarding, (VRF-lite)Virtual Routing and Forwarding, (VRF-lite)
Virtual Routing and Forwarding, (VRF-lite)
NetProtocol Xpert
 
Mpls vpn.rip
Mpls vpn.ripMpls vpn.rip
Mpls vpn.rip
farhanica
 
Virtualization & tipping point
Virtualization & tipping pointVirtualization & tipping point
Virtualization & tipping point
Finto Thomas , CISSP, TOGAF, CCSP, ITIL. JNCIS
 
IPLOOK vEPC solution
IPLOOK vEPC solutionIPLOOK vEPC solution
IPLOOK vEPC solution
IPLOOK Networks
 
Charleston SC VMUG 8/14/13
Charleston SC VMUG 8/14/13Charleston SC VMUG 8/14/13
Charleston SC VMUG 8/14/13
lwilmes
 
Open Innovation via Java-enabled Network Devices
Open Innovation via Java-enabled Network DevicesOpen Innovation via Java-enabled Network Devices
Open Innovation via Java-enabled Network Devices
Tal Lavian Ph.D.
 
Marvell SR-IOV Improves Server Virtualization Performance
Marvell SR-IOV Improves Server Virtualization PerformanceMarvell SR-IOV Improves Server Virtualization Performance
Marvell SR-IOV Improves Server Virtualization Performance
Marvell
 
NFV Orchestration for Optimal Performance
NFV Orchestration for Optimal PerformanceNFV Orchestration for Optimal Performance
NFV Orchestration for Optimal Performance
dfilppi
 
NPV and NPIV feature in MDS switches on SAN network
NPV and NPIV feature in MDS switches on SAN networkNPV and NPIV feature in MDS switches on SAN network
NPV and NPIV feature in MDS switches on SAN network
Tanay Chakraborty
 
Operating OPNFV: Deploy it, test it, run it
Operating OPNFV: Deploy it, test it, run itOperating OPNFV: Deploy it, test it, run it
Operating OPNFV: Deploy it, test it, run it
OPNFV
 
Sea final adapter
Sea final adapter Sea final adapter
Sea final adapter
asihan
 
EANTC Test Report: ADVA FSP 150 ProVMe
EANTC Test Report: ADVA FSP 150 ProVMeEANTC Test Report: ADVA FSP 150 ProVMe
EANTC Test Report: ADVA FSP 150 ProVMe
ADVA
 
Cisco IOS XRv Router Installation and Configuration Guide
Cisco IOS XRv Router Installation and Configuration GuideCisco IOS XRv Router Installation and Configuration Guide
Cisco IOS XRv Router Installation and Configuration Guide
Salachudin Emir
 
Embedded system - Introduction to interfacing with peripherals
Embedded system - Introduction to interfacing with peripheralsEmbedded system - Introduction to interfacing with peripherals
Embedded system - Introduction to interfacing with peripherals
Vibrant Technologies & Computers
 
OPNFV: Platform Performance Acceleration
OPNFV: Platform Performance AccelerationOPNFV: Platform Performance Acceleration
OPNFV: Platform Performance Acceleration
OPNFV
 
virtualization and hypervisors
virtualization and hypervisorsvirtualization and hypervisors
virtualization and hypervisors
Gaurav Suri
 
VMware vSphere 6.0 - Troubleshooting Training - Day 2
VMware vSphere 6.0 - Troubleshooting Training - Day 2VMware vSphere 6.0 - Troubleshooting Training - Day 2
VMware vSphere 6.0 - Troubleshooting Training - Day 2
Sanjeev Kumar
 
VMware Advance Troubleshooting Workshop - Day 2
VMware Advance Troubleshooting Workshop - Day 2VMware Advance Troubleshooting Workshop - Day 2
VMware Advance Troubleshooting Workshop - Day 2
Vepsun Technologies
 
Vsc 71-se-presentation-training
Vsc 71-se-presentation-trainingVsc 71-se-presentation-training
Vsc 71-se-presentation-training
narit_ton
 
Virtual Routing and Forwarding, (VRF-lite)
Virtual Routing and Forwarding, (VRF-lite)Virtual Routing and Forwarding, (VRF-lite)
Virtual Routing and Forwarding, (VRF-lite)
NetProtocol Xpert
 
Mpls vpn.rip
Mpls vpn.ripMpls vpn.rip
Mpls vpn.rip
farhanica
 
Charleston SC VMUG 8/14/13
Charleston SC VMUG 8/14/13Charleston SC VMUG 8/14/13
Charleston SC VMUG 8/14/13
lwilmes
 
Open Innovation via Java-enabled Network Devices
Open Innovation via Java-enabled Network DevicesOpen Innovation via Java-enabled Network Devices
Open Innovation via Java-enabled Network Devices
Tal Lavian Ph.D.
 
Ad

Recently uploaded (20)

DSP and MV the Color image processing.ppt
DSP and MV the  Color image processing.pptDSP and MV the  Color image processing.ppt
DSP and MV the Color image processing.ppt
HafizAhamed8
 
MAQUINARIA MINAS CEMA 6th Edition (1).pdf
MAQUINARIA MINAS CEMA 6th Edition (1).pdfMAQUINARIA MINAS CEMA 6th Edition (1).pdf
MAQUINARIA MINAS CEMA 6th Edition (1).pdf
ssuser562df4
 
The Gaussian Process Modeling Module in UQLab
The Gaussian Process Modeling Module in UQLabThe Gaussian Process Modeling Module in UQLab
The Gaussian Process Modeling Module in UQLab
Journal of Soft Computing in Civil Engineering
 
Raish Khanji GTU 8th sem Internship Report.pdf
Raish Khanji GTU 8th sem Internship Report.pdfRaish Khanji GTU 8th sem Internship Report.pdf
Raish Khanji GTU 8th sem Internship Report.pdf
RaishKhanji
 
International Journal of Distributed and Parallel systems (IJDPS)
International Journal of Distributed and Parallel systems (IJDPS)International Journal of Distributed and Parallel systems (IJDPS)
International Journal of Distributed and Parallel systems (IJDPS)
samueljackson3773
 
Smart_Storage_Systems_Production_Engineering.pptx
Smart_Storage_Systems_Production_Engineering.pptxSmart_Storage_Systems_Production_Engineering.pptx
Smart_Storage_Systems_Production_Engineering.pptx
rushikeshnavghare94
 
Explainable-Artificial-Intelligence-XAI-A-Deep-Dive (1).pptx
Explainable-Artificial-Intelligence-XAI-A-Deep-Dive (1).pptxExplainable-Artificial-Intelligence-XAI-A-Deep-Dive (1).pptx
Explainable-Artificial-Intelligence-XAI-A-Deep-Dive (1).pptx
MahaveerVPandit
 
RICS Membership-(The Royal Institution of Chartered Surveyors).pdf
RICS Membership-(The Royal Institution of Chartered Surveyors).pdfRICS Membership-(The Royal Institution of Chartered Surveyors).pdf
RICS Membership-(The Royal Institution of Chartered Surveyors).pdf
MohamedAbdelkader115
 
Lidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptx
Lidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptxLidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptx
Lidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptx
RishavKumar530754
 
IntroSlides-April-BuildWithAI-VertexAI.pdf
IntroSlides-April-BuildWithAI-VertexAI.pdfIntroSlides-April-BuildWithAI-VertexAI.pdf
IntroSlides-April-BuildWithAI-VertexAI.pdf
Luiz Carneiro
 
π0.5: a Vision-Language-Action Model with Open-World Generalization
π0.5: a Vision-Language-Action Model with Open-World Generalizationπ0.5: a Vision-Language-Action Model with Open-World Generalization
π0.5: a Vision-Language-Action Model with Open-World Generalization
NABLAS株式会社
 
Oil-gas_Unconventional oil and gass_reseviours.pdf
Oil-gas_Unconventional oil and gass_reseviours.pdfOil-gas_Unconventional oil and gass_reseviours.pdf
Oil-gas_Unconventional oil and gass_reseviours.pdf
M7md3li2
 
Artificial Intelligence (AI) basics.pptx
Artificial Intelligence (AI) basics.pptxArtificial Intelligence (AI) basics.pptx
Artificial Intelligence (AI) basics.pptx
aditichinar
 
Development of MLR, ANN and ANFIS Models for Estimation of PCUs at Different ...
Development of MLR, ANN and ANFIS Models for Estimation of PCUs at Different ...Development of MLR, ANN and ANFIS Models for Estimation of PCUs at Different ...
Development of MLR, ANN and ANFIS Models for Estimation of PCUs at Different ...
Journal of Soft Computing in Civil Engineering
 
theory-slides-for react for beginners.pptx
theory-slides-for react for beginners.pptxtheory-slides-for react for beginners.pptx
theory-slides-for react for beginners.pptx
sanchezvanessa7896
 
Level 1-Safety.pptx Presentation of Electrical Safety
Level 1-Safety.pptx Presentation of Electrical SafetyLevel 1-Safety.pptx Presentation of Electrical Safety
Level 1-Safety.pptx Presentation of Electrical Safety
JoseAlbertoCariasDel
 
"Boiler Feed Pump (BFP): Working, Applications, Advantages, and Limitations E...
"Boiler Feed Pump (BFP): Working, Applications, Advantages, and Limitations E..."Boiler Feed Pump (BFP): Working, Applications, Advantages, and Limitations E...
"Boiler Feed Pump (BFP): Working, Applications, Advantages, and Limitations E...
Infopitaara
 
some basics electrical and electronics knowledge
some basics electrical and electronics knowledgesome basics electrical and electronics knowledge
some basics electrical and electronics knowledge
nguyentrungdo88
 
new ppt artificial intelligence historyyy
new ppt artificial intelligence historyyynew ppt artificial intelligence historyyy
new ppt artificial intelligence historyyy
PianoPianist
 
fluke dealers in bangalore..............
fluke dealers in bangalore..............fluke dealers in bangalore..............
fluke dealers in bangalore..............
Haresh Vaswani
 
DSP and MV the Color image processing.ppt
DSP and MV the  Color image processing.pptDSP and MV the  Color image processing.ppt
DSP and MV the Color image processing.ppt
HafizAhamed8
 
MAQUINARIA MINAS CEMA 6th Edition (1).pdf
MAQUINARIA MINAS CEMA 6th Edition (1).pdfMAQUINARIA MINAS CEMA 6th Edition (1).pdf
MAQUINARIA MINAS CEMA 6th Edition (1).pdf
ssuser562df4
 
Raish Khanji GTU 8th sem Internship Report.pdf
Raish Khanji GTU 8th sem Internship Report.pdfRaish Khanji GTU 8th sem Internship Report.pdf
Raish Khanji GTU 8th sem Internship Report.pdf
RaishKhanji
 
International Journal of Distributed and Parallel systems (IJDPS)
International Journal of Distributed and Parallel systems (IJDPS)International Journal of Distributed and Parallel systems (IJDPS)
International Journal of Distributed and Parallel systems (IJDPS)
samueljackson3773
 
Smart_Storage_Systems_Production_Engineering.pptx
Smart_Storage_Systems_Production_Engineering.pptxSmart_Storage_Systems_Production_Engineering.pptx
Smart_Storage_Systems_Production_Engineering.pptx
rushikeshnavghare94
 
Explainable-Artificial-Intelligence-XAI-A-Deep-Dive (1).pptx
Explainable-Artificial-Intelligence-XAI-A-Deep-Dive (1).pptxExplainable-Artificial-Intelligence-XAI-A-Deep-Dive (1).pptx
Explainable-Artificial-Intelligence-XAI-A-Deep-Dive (1).pptx
MahaveerVPandit
 
RICS Membership-(The Royal Institution of Chartered Surveyors).pdf
RICS Membership-(The Royal Institution of Chartered Surveyors).pdfRICS Membership-(The Royal Institution of Chartered Surveyors).pdf
RICS Membership-(The Royal Institution of Chartered Surveyors).pdf
MohamedAbdelkader115
 
Lidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptx
Lidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptxLidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptx
Lidar for Autonomous Driving, LiDAR Mapping for Driverless Cars.pptx
RishavKumar530754
 
IntroSlides-April-BuildWithAI-VertexAI.pdf
IntroSlides-April-BuildWithAI-VertexAI.pdfIntroSlides-April-BuildWithAI-VertexAI.pdf
IntroSlides-April-BuildWithAI-VertexAI.pdf
Luiz Carneiro
 
π0.5: a Vision-Language-Action Model with Open-World Generalization
π0.5: a Vision-Language-Action Model with Open-World Generalizationπ0.5: a Vision-Language-Action Model with Open-World Generalization
π0.5: a Vision-Language-Action Model with Open-World Generalization
NABLAS株式会社
 
Oil-gas_Unconventional oil and gass_reseviours.pdf
Oil-gas_Unconventional oil and gass_reseviours.pdfOil-gas_Unconventional oil and gass_reseviours.pdf
Oil-gas_Unconventional oil and gass_reseviours.pdf
M7md3li2
 
Artificial Intelligence (AI) basics.pptx
Artificial Intelligence (AI) basics.pptxArtificial Intelligence (AI) basics.pptx
Artificial Intelligence (AI) basics.pptx
aditichinar
 
theory-slides-for react for beginners.pptx
theory-slides-for react for beginners.pptxtheory-slides-for react for beginners.pptx
theory-slides-for react for beginners.pptx
sanchezvanessa7896
 
Level 1-Safety.pptx Presentation of Electrical Safety
Level 1-Safety.pptx Presentation of Electrical SafetyLevel 1-Safety.pptx Presentation of Electrical Safety
Level 1-Safety.pptx Presentation of Electrical Safety
JoseAlbertoCariasDel
 
"Boiler Feed Pump (BFP): Working, Applications, Advantages, and Limitations E...
"Boiler Feed Pump (BFP): Working, Applications, Advantages, and Limitations E..."Boiler Feed Pump (BFP): Working, Applications, Advantages, and Limitations E...
"Boiler Feed Pump (BFP): Working, Applications, Advantages, and Limitations E...
Infopitaara
 
some basics electrical and electronics knowledge
some basics electrical and electronics knowledgesome basics electrical and electronics knowledge
some basics electrical and electronics knowledge
nguyentrungdo88
 
new ppt artificial intelligence historyyy
new ppt artificial intelligence historyyynew ppt artificial intelligence historyyy
new ppt artificial intelligence historyyy
PianoPianist
 
fluke dealers in bangalore..............
fluke dealers in bangalore..............fluke dealers in bangalore..............
fluke dealers in bangalore..............
Haresh Vaswani
 
Ad

Project ACRN: SR-IOV implementation

  • 1. SR-IOV On ACRN Yuan LIU Liu, Yuan1 <[email protected]> 04/01/2020
  • 2. Agenda ❑SR-IOV Introduction ❑SR-IOV Architecture On ACRN ❑SR-IOV Demo – Intel 82576
  • 3. SR-IOV Introduction SR-IOV(single root input/output virtualization) can isolate PCIe devices and make the devices to have good performance, close to bare-metal. The SR-IOV framework consists of two basic units, one is called PF(Physical Function) that supports SR-IOV extended capability and manages entire physical device, another is called VF (Virtual Function) and it is a "light-weight" PCIe function which is used to assigned to a VM as a pass-through device. https://projectacrn.github.io/latest/tutorials/sriov_virtualization.html
  • 4. SR-IOV Overview • SI - System image like guest VM. • VI - Virtualization Intermediary known as VMM or hypervisor. • SR-PCIM - Single Root PCI Manager is a software entity for SR-IOV management. • PF - A PF is a PCIe Function that supports the SR- IOV capability and is accessible to an SR-PCIM, a VI, or an SI. • VF - A VF is a “light-weight” PCIe Function that is directly accessible by an SI.
  • 6. SR-IOV Register ⚫ VF Migration Capable ⚫ Indicates that the PF supports VF Migration. ⚫ ARI Capable Hierarchy Preserved ⚫ For PCI Express Endpoint, it indicates if the ARI Capable Hierarchy bit is preserved across certain power state transitions. ⚫ For RCiEP, it is not applicable. ⚫ VF 10-Bit Tag Requester Supported ⚫ Indicates if VFs support 10-Bit Tag Requester capability. ⚫ VF Migration Interrupt Message Number ⚫ Indicates the MSI/MSI-X vector used for migration interrupts.
  • 7. SR-IOV Register ⚫ SR-IOV Control ⚫ VF Enable ⚫ VF Migration Enable ⚫ VF Migration Interrupt Enable ⚫ VF MSE(Memory Space Enable) ⚫ ARI Capable Hierarchy ⚫ VF 10-Bit Tag Requester Enable ⚫ SR-IOV Status ⚫ VF Migration Status
  • 8. SR-IOV Register ⚫ InitialVFs ⚫ It indicates to the number of VFs that are initially associated with the PF. ⚫ For Devices operating in Single-Root mode, this field is HwInit and must contain the same value as TotalVFs. ⚫ TotalVFs ⚫ It indicates the maximum number of VFs that could be associated with the PF. ⚫ For Devices operating in Single-Root mode, this field is HwInit and must contain the same value as InitialVFs. ⚫ NumVFs ⚫ It controls the number of VFs that are visible. ⚫ It may only be written while VF Enable is Clear. ⚫ NumVFs <= InitialVFs = TotalVFs.
  • 9. SR-IOV Register The programming model for a device may have vendor-specific dependencies between sets of Functions. If PF p and PF q are in the same Function Dependency List, than any SI that is assigned VF p,n shall also be assigned to VF q,n. PF 0 depends on PF1 and PF1 depends on PF 0. PF 2 is independent from other PFs. VF 0,1 and VF 1,1 are same with PF 0 and PF 1 dependency, so need to assign VF 0,1 and VF 1,1 to a same VM. VF 0,2 is independent, same with PF 2, it can be assigned separately. Dependency relationship can be determined by sysfs entry: /sys/bus/pci/devices/…/dep_link
  • 10. SR-IOV Register First VF Offset is a constant and defines the Routing ID offset of the first VF. VF Stride defines the Routing ID offset from one VF to the next one for all VFs. First VF Offset and VF Stride are set by device, software access with Read Only. After configuring NumVFs and ARI Capable Hierarchy, software may read First VF Offset and VF Stride to determine how many bus numbers would be consumed by the PF’s VFs.
  • 11. SR-IOV Register This field contains the Device ID that should be presented for every VF to the SI. VF Device ID may be different from the PF Device ID.
  • 12. SR-IOV Register ⚫ Supported Page Size ⚫ This field indicates the page sizes supported by the PF. ⚫ PFs are required to support 4-KB, 8-KB, 64-KB, 256-KB, 1-MB, and 4-MB page sizes. ⚫ System Page Size ⚫ It is used to align all VF BAR resources on a System Page Size boundary. ⚫ Software must set the value of the System Page Size to one of the page sizes set in the Supported Page Sizes.
  • 14. SR-IOV Register If VF Migration Capable is Set and TotalVFs is not zero, this register shall contain a PF BAR relative pointer to the VF Migration State Array. The VF Migration State Array has a VF Migration State Entry for each VF.
  • 15. ARI Capability ⚫ The ARI(Alternative Routing ID Interpretation Extended Capability) capability enables a device to support up to 256 functions ⚫ If software does not configure sufficient additional bus numbers, then the VFs implemented for the additional Bus numbers may not be visible. ⚫ Max bus number can be defined by numVFs, First VF Offset and VF Stride.
  • 16. SR-IOV Interrupt Mechanism • PFs can support INTx, MSI or MSI-X interrupt resources • VFs only support MSI or MSI-X interrupt resources.
  • 18. SR-IOV VF Migration ⚫ A VF can be optionally migrated from one PF to another PF. ⚫ VF Migration Capable and VF Migration Enable must be Set when enable VF migration. ⚫ VF Migration is an optional feature, ACRN doesn’t support it.
  • 19. Agenda ❑SR-IOV Introduction ❑SR-IOV Architecture In ACRN ❑SR-IOV Demo – Intel 82576
  • 22. SR-IOV Architecture On ACRN 1. A hypervisor detects a SR-IOV capable PCIe device in the physical PCI device enumeration phase. 2. The hypervisor intercepts the PF’s SR-IOV capability. 3. The hypervisor waits for 100ms after VF_ENABLE is set and initializes VF devices.
  • 23. SR-IOV Passthrough VF Architecture 1. The VF device needs to bind PCI- Stud driver instead VF driver before passthrough the device. 2. acrn-dm assigns the VF device with passthrough parameters to target VM. 3. Hypervisor adds new virtual device on target VM’s virtual PCI bus and initialize it with physical device. For VF virtual device, emulate Device ID/Vendor ID and MSE. 4. VF driver in target VM is able to probe the VF device.
  • 27. SR-IOV VF Assignment Policy • All SR-IOV PF devices are managed by the Service VM. • Currently, the SR-IOV PF cannot passthrough to the User VM. • All VFs can passthrough to the User VM, but we do not recommend a passthrough to high privilege VMs because the PF device may impact the assigned VFs’ functionality and stability.
  • 28. Agenda ❑SR-IOV Introduction ❑SR-IOV Architecture In ACRN ❑SR-IOV Demo – Intel 82576
  • 29. Q & A