Są sobie serwery z różnymi procesorami. Każdy z obsługą wirtualizacji. Na nich działają maszyny wirtualne oparte o kvm.
Dla kvm można podać różne "procesory" które ma prezentować dla gościa:
x86 qemu64 QEMU Virtual CPU version 2.0.0 x86 phenom AMD Phenom(tm) 9550 Quad-Core Processor x86 core2duo Intel(R) Core(TM)2 Duo CPU T7700 @ 2.40GHz x86 kvm64 Common KVM processor x86 qemu32 QEMU Virtual CPU version 2.0.0 x86 kvm32 Common 32-bit KVM processor x86 coreduo Genuine Intel(R) CPU T2600 @ 2.16GHz x86 486 x86 pentium x86 pentium2 x86 pentium3 x86 athlon QEMU Virtual CPU version 2.0.0 x86 n270 Intel(R) Atom(TM) CPU N270 @ 1.60GHz x86 Conroe Intel Celeron_4x0 (Conroe/Merom Class Core 2) x86 Penryn Intel Core 2 Duo P9xxx (Penryn Class Core 2) x86 Nehalem Intel Core i7 9xx (Nehalem Class Core i7) x86 Westmere Westmere E56xx/L56xx/X56xx (Nehalem-C) x86 SandyBridge Intel Xeon E312xx (Sandy Bridge) x86 Haswell Intel Core Processor (Haswell) x86 Opteron_G1 AMD Opteron 240 (Gen 1 Class Opteron) x86 Opteron_G2 AMD Opteron 22xx (Gen 2 Class Opteron) x86 Opteron_G3 AMD Opteron 23xx (Gen 3 Class Opteron) x86 Opteron_G4 AMD Opteron 62xx class CPU x86 Opteron_G5 AMD Opteron 63xx class CPU x86 host KVM processor with all supported host features (only available in KVM mode)
Pytanie brzmi - czym się od siebie różnią?
Przykładowo mogę uruchomić na każdym z serwerów:
x86 Conroe Intel Celeron_4x0 (Conroe/Merom Class Core 2)
x86 Penryn Intel Core 2 Duo P9xxx (Penryn Class Core 2)
x86 Nehalem Intel Core i7 9xx (Nehalem Class Core i7)
x86 Westmere Westmere E56xx/L56xx/X56xx (Nehalem-C)
x86 SandyBridge Intel Xeon E312xx (Sandy Bridge)
x86 Haswell Intel Core Processor (Haswell)
(jak też oczywiście i słabsze).
Jakie konsekwencje będzie miało wybranie takiego a nie innego procesora? Czy to jednie kwestia dostępnych zestawów instrukcji?
Jeżeli tak - można gdzieś znaleźć podsumowanie jakie instrukcje są dostępne dla każdego z tych procesorów? Najlepiej z omówieniem na które instrukcje warto zwrócić uwagę?
To co najbardziej mi się rzuciło w oczy to np sprzętowe wsparcie aes używane w sslu/vpnach/szyfrowaniu. Ale może o czymś jeszcze warto pamiętać?