Understanding VT-d: Intel Virtualization Technology for Directed I/O

By David Ott (Intel) (34 posts) on June 25, 2009 at 3:13 pm

I've received a fair number of questions on the Intel Virtualization and Software Development Forum about VT-d -- enough to justify a few words on this note in the blogging sphere.

"VT-d" stands for "Intel Virtualization Technology for Directed I/O". The relationship between VT and VT-d is that the former is an "umbrella" term referring to all Intel virtualization technologies and the latter is a particular solution within a suite of solutions under this umbrella.

The overall concept behind VT-d is hardware support for isolating and restricting device accesses to the owner of the partition managing the device.

A VMM may support various models for I/O virtualization, including emulating the device API, assigning physical I/O devices to VMs, or permitting I/O device sharing in various manners. The key problem is how to isolate device access so that one resource cannot access a device being managed by another resource.

VT-d, at the time of this writing, includes four key capabilities

1. I/O device assignment. This feature allows an administrator to assign I/O devices to VMs in any desired configuration.

2. DMA remapping. Supports address translations for device DMA data transfers.

3. Interrupt remapping. Provides VM routing and isolation of device interrupts.

4. Reliability features. Reports and records system software DMA and interrupt erros that may otherwise corrupt memory of impact VM isolation.

Note that VT-d is not dependent on VT-x. That is, a VT-x enabled system can operate without VT-d, or without VT-d enabled or configured. You simply miss the benefits of the feature. Many people have asked about this point.

You can read about VT-d in detail at:

http://www.intel.com/technology/virtualization/technology.htm?iid=tech_vt+tech

Click on the link entitled "Intel Virtualization Technology (Intel VT) for Directed I/O (Intel VT-d) Architecture Specification". This brings up a detailed guide that should answer a broad range of technical questions.

David Ott

Categories: Manageability & Security
Tags: , ,

For more complete information about compiler optimizations, see our Optimization Notice.

Comments (4)

June 25, 2009 5:23 PM PDT

Aamir Yunus (Intel)
Aamir Yunus (Intel)Total Points:
345
Green Belt
Here are step by step instructions on how to enable VT-d and perform direct device assignments:

http://software.intel.com/en-us/blogs/2009/02/24/step-by-ste.....ssignment/
August 21, 2009 6:40 AM PDT


Tom M
Thanks for the post. I have been trying to access the link for the VT-d spec for two days, but it appears to be down. When i search for the link from an engine, I get the same link with the same result. Do you know if intel has taken the spec down?

Thanks!
August 21, 2009 9:29 AM PDT

Intel Software Network Support
Intel Software Network SupportTotal Points:
5,380
Green Belt
Hi, Tom -- we tested the link and it seems to work today: http://download.intel.com/technology/computing/vptech/Intel%..... ect_IO.pdf
July 23, 2010 4:27 AM PDT


Subeesh
We are using an IBM System X 3550 for our Hyper-v environment. We are using it for our cpoc environment. I need to extend the Video output of my VMs to seperate monitors, with out using thin clients or remote desktops. Do I have any options (software or hardware) to split the Video out put of
each Vms to different Monitors?

Trackbacks (13)


Leave a comment  

To obtain technical support, please go to Software Support.
Name (required)*

Email (required; will not be displayed on this page)*

Your URL (optional)


Comment*