It's nice to be able to optimize SW (at build time) to use some ISA
extensions, but so many unique subsets of extensions have been realized
in silicon that it's a bit of a mess. Defining, retrospectively,
"sub-architectures" around key extensions for OS performance and
security seems like a good idea.
CPUID can still be used to detect individual extensions at run-time.
On 2023-10-08 10:41, Shankar Viswanathan wrote:
On 10/8/23 03:01, John Abreau wrote:
I figure IntelĀ uses terminology other than "x86-64-v2", but I have
no idea
what their terminology is. None of my google searches have found
anything
helpful.
How can I determine whether a given cpu type is "x86-64-v2" compatible?
You have my sympathies! Intel and AMD each use a different terminology
and for some reason the software vendors have decided to use yet other
confusing names for the same set of features. x86-64 (aka AMD64)
itself keeps evolving, but neither AMD nor Intel have established a
versioning scheme on the ISA itself, so I personally do not like this
"x86-64-v2" naming. The features being discussed here are specific to
virtualization support, not the whole ISA. The basic HW virtualization
support is called SVM or AMD-V by AMD, and VT-x by Intel.
Broadly, there are two features that have been labeled as "v2" in this
context:
1. Support for second level address translations (aka SLAT): AMD calls
this Nested Page Tables (NPT), and Intel calls it Extended Page Tables
(EPT)
2. Support for I/O virtualization: AMD calls this IOMMUv2 or AMD-Vi,
and Intel refers to this as VT-d
As pointed out in the previous comment, most
server/workstation/desktop processors from Intel and AMD have
supported these features for at least a decade. There are certain
products and SKUs that may not support it (typically only lower end
products), so it is best to read the spec summary from AMD or Intel to
confirm.
Specific to your question about Xeon E5-2690 V2, see:
https://www.intel.com/content/www/us/en/products/sku/75279/intel-xeon-processor-e52690-v2-25m-cache-3-00-ghz/specifications.html
If you scroll down to the "Security and Reliability" section, you'll
notice that both VT-d and EPT are supported. So you should be good on
that front. Often, these features are not enabled by default in the
BIOS, so please make sure to turn them on if you intend to run VMs on
the machine. Once you're booted into Linux, you can check
/proc/cpuinfo or run `lscpu` to verify that the "vmx", and "ept" flags
are present (AMD equivalents will be "svm" and "npt").
-Shankar
_______________________________________________
Discuss mailing list
[email protected]
http://lists.blu.org/mailman/listinfo/discuss
_______________________________________________
Discuss mailing list
[email protected]
http://lists.blu.org/mailman/listinfo/discuss