Hello,
does anyone know of any list/table (ideally as up-to-date as possible)
with individual CPU features/flags for x86_64 (preferably Intel), which
would state:
- description of individual features/flags
- dependencies between individual features/flags - e.g. avx on xsave
- what features/flags are checked on the hypervisor (host), but are not
propagated to the guest - e.g. acpi, ds, monitor, pbe, tm, etc. - some are
masked/disabled [(not) supported] by Libvirt, others by KVM/QEMU
- what features/flags active for/in the guest limit certain virtualization
behavior/options such as live migration - e.g. invtsc, xsaves
- so far I only found
https://github.com/libvirt/libvirt/blob/master/src/cpu_map/x86_features.xml
- features with migratable='no'
I would like to tweak the CPU configuration for the virtual servers ie.
choose the basic CPU model and turn on/off the necessary or appropriate
features/flags while maintaining the possibility of live migration. But I
miss the above-mentioned contexts, because not all the mentioned features
within the cpu element in the VM definition (domains in Libvirt) are then
visible inside the VM in /proc/cpuinfo. Of course, I know about other
related commands, registers, etc. like "virsh
capabilities|cpu-baseline|cpu-compare", MSR, fixes in CPU microcode,
host-model or host-passthrough CPU... but I'm still not sure about setting
the match, check and fallback attributes and the resulting behavior of
Libvirt and QEMU/KVM.
Many thanks in advance for any response
K. Ziegler