IO Virtualization on Intel Platforms


Let MindShare Bring IO Virtualization on Intel Platforms to Life for You

Virtualization is one of the hot, exciting areas in the industry today, generating significant revenue, and solving critical problems in data centers and in embedded and mobile markets. However, software virtualization techniques add too much overhead to allow virtualization to be used for some applications. This class will look at those problem applications and the hardware solutions architected by Intel as well as support in standards like PCI Express (PCIe). The course focuses on the Intel processor SoC or Chipset VT-d elements that support DMA and Interrupt remapping. The course also discusses details of Address Translation Services (ATS), Access Control Services (ACS) and Single-Root IOV (SRIOV) implementations. This course has been updated to cover Intel's Scalabale IOV technology as well.

MindShare Courses On IO Virtualization:

Course Name

Virtual Classroom

IO Virtualization on Intel Platforms 
3 days

3 days

Show Me

All of MindShare's classroom and virtual classroom courses can be customized to fit the needs of your group.

IO Virtualization on Intel Platforms Course Info

You Will Learn:

  • What virtualization is, and the revenue generating uses for virtualization
  • The major sources of overhead with software-only virtualization techniques
  • How I/O virtualization will use the new hardware assists, to solve these problems
  • Intel architecture focused VT-d (multiple generations)
  • DMA remapping (Guest Physical to Host Physical as well as Shared Virtual Memory)
  • PCIe Address Translation Services (ATS)
  • PCIe Access Control Services (ACS)
  • Single Root IOV (SRIOV)
  • Shared Virtual Memory (SVM)
  • Process Address Space IDs (PASIDs)
  • Scalable IO Virtualization
  • Posted Interrupts

Course Length: 3 Days

Who Should Attend?

This class targets hardware and software engineers who desire to understand the full picture of how the new IOV hardware is to be used, and the software needed to drive that hardware.

Course Outline:

  • Introduction to Virtualization
    • What is virtualization
    • Why is it important
    • Software Techniques
    • Performance Issues
    • PCI Pass-through (DirectPath I/O)
  • PCIe Address Translation Services (ATS)
    • What it is and how it helps
      • Performance benefits
    • ATS Protocol
      • Changes to PCIe packets
    • Address Translation Caches (ATCs)
  • PCIe Access Control Services (ACS)
    • What it is and why it's needed
  • PCIe Single-Root IO Virtualization (SRIOV)
    • What it is and how it helps
    • Functions vs. Physical Functions (PFs) vs. Virtual Functions (VFs)
    • SRIOV Capability Structure (including VF BARs)
    • Config space of VFs
    • PCIe Alternative Routing ID (ARI)
  • Intel VT-d: DMA Remapping
    • What it is and how it helps
      • Performance benefits
      • Security benefits
    • Guest Virtual vs. Guest Physical vs. Host Physical Addresses
    • Remap Engine Functionality
    • Latency issues
  • Shared Virtual Memory
    • What it is and how it helps
    • PCIe Process Space IDs (PASIDs)
    • Intel VT-d support of PASIDs
  • Intel Scalable IO Virtualization
    • What it is and how it is different from SRIOV
    • Hardware and software elements needed
  • Intel VT-d: Interrupt Remapping
    • What it is and why it's needed
      • Big security issue
      • Virtualization performance improvements
    • MSI / MSI-X review (interrupt delivery)
      • Compatibility Format vs. Remappable Format
    • Direct Remapping (good)
    • Posted Remapping (better)
      • Virtual Local APICs

Recommended Prerequisites:
PCI Express architecture background as well as general understanding of PC architecture.

Supplied Materials:
1) Downloadable PDF version of the presentation slides.
2) Optional: MindShare Arbor software tool, used for student labs in the class.