Page 1 of 1
Tagged TLBs/VPIDs on AMD64?
Posted: 20. May 2009, 14:21
by digitaltrousers
Hi. I'm a little confused about the 'tagged TLB' feature in version 2.2.2. Firstly, are VPIDs and tagged TLBs the same thing? Are they implemented on both Intel and AMD64 platforms? The Virtualbox manual says this feature is only for Intel processors. Is this because the AMD64 hardware doesn't support the feature, or because the feature is enabled by default (or along with another option) on AMD64? Or perhaps the developers have not implemented the feature for AMD64 yet? Basically I want to know if I'm at a disadvantage to my Intel counterparts. My CPU is an AMD64 8450 triple-core.
Also, how does this feature improve performance? The manual says that it reduces the need for expensive TLB flushes. In what situations / how often are TLBs flushed? Is it only when running more than one VM concurrently?
Cheers.
Dan.
Re: Tagged TLBs/VPIDs on AMD64?
Posted: 20. May 2009, 14:29
by TerryE
Probably the best way for me to explain would be to say that you need to spend a little time in wikipedia on this one. The articles explain this all quite well
Remember that when Intel accepted that it wasn't practical to propose two 64 bit extension order codes and adopted the AMD64 code specs, this only applied to the user-level order code -- the stuff that it generated for applications, etc.. However, there are differences in the segmentation and virtualisation architecture that are transparent at this user level. This does impact products such as VBox which need two variant implementations for this stuff. They are different, but I won't say that one materially out-performs the other.
Re: Tagged TLBs/VPIDs on AMD64?
Posted: 20. May 2009, 15:05
by digitaltrousers
Hi. Thanks for the quick reply. I can surmise that later CPUs, both Intel and AMD, have these tagged TLBs/VPIDs. I'm mostly curious about why this feature is described as "for Intel VT-x only" in the Virtualbox manual. Perhaps it's because Intel released this feature later than AMD, and therefore not all Intel CPUs with VT-x have the tagged TLBs/VPIDs? Thus maybe when you enable AMD-V in Virtualbox the tagged TLBs are part and parcel of doing so?
Re: Tagged TLBs/VPIDs on AMD64?
Posted: 20. May 2009, 15:46
by sandervl
AMD-V indeed had this from the very start.
Re: Tagged TLBs/VPIDs on AMD64?
Posted: 21. May 2009, 05:45
by digitaltrousers
Thanks Sander. I love your work.