Czym jest Intel VT-x EPT i AMD-V RVI

Intel VT-x i AMD-V RVI to zestaw dodatkowych instrukcji dla procesora w zakresie wirtualizacji zwanych Second Level Address Translation (SLAT). Oznaczenia są odpowiednikiem rozwiniętych skrótów – Extended Page Table oraz Rapid Virtualization Indexing. Technologia dostępna jest również w procesorach mobilnych. Przedstawiana jest pod nazwą Stage-2-page-tables i wprowadzono ją od wersji ARMv7ve. Firma intel po raz pierwszy wprowadziła EPT w procesorach o architekturze Nehalem.

SLAT to przede wszystkim nowe możliwości oraz zwiększona wydajność wirtualizacji. Musi być wspierana przez oprogramowanie do wirtualizacji. W dalszej części opisano kluczowe funkcje jakie wprowadza technologia.

Przekazanie wirtualizacji do maszyny wirtualnej (zagnieżdżona wirtualizacja)

Jednym z kluczowych funkcji jakie wprowadza SLAT to możliwość przekazania obsługi wirtualizacji do maszyny wirtualnej. Na skutek jest ona w stanie korzystać z jej dogodności tak samo jak gospodarz, czyli instalować 64-bitowe systemy operacyjne lub hypervisory. Specjalistyczne oprogramowanie wymagające, do prawidłowego funkcjonowania, wsparcia wirtualizacji również będzie można zainstalować na maszynie wirtualnej. Wirtualne środowisko z włączoną obsługą SLAT, niezależnie od wykorzystywanej platformy, jest w stanie wykryć obecność technologi tak jak na fizycznym sprzęcie.

Korzystanie jednak z wirtualizacji w środowisku wirtualnym wiąże się z obniżoną wydajnością. Zagnieżdżona maszyna wirtualna działa o 30% wolniej niż maszyna uruchamiana w systemie gospodarza. Każde kolejne zagnieżdżenie to kolejne 30% utraty co daje w sumie 60% wolniejsze środowisko. Zatem funkcjonalność tego typu zazwyczaj wykorzystywana jest w warunkach laboratoryjnych niż produkcyjnych.

Zwiększona wydajność wirtualizacji

SLAT, w niektórych przypadkach, może być wykorzystywane do efektywniejszego zarządzania pamięcią. Przekłada się do na większą wydajność wirtualizacji oraz mniejsze opóźnienia. Jednym z przykładów takiego podejścia jest Hyper-V.

Oprogramowanie obsługujące SLAT

Technologia SLAT jest wspierana przez prawie wszystkie najpopularniejsze hypervisory dostępne na rynku, a zaliczają się do nich:
– Hyper-V dla Windows Server 2008 R2 i Windows 8,
– Hyper-V dla wersji 2019 wymaga obowiązkowej obsługi,
– KVM od wersji 2.6.26,
– Parallels Desktop for Max od wersji 5,
– VirtualBox od wersji 2.0.0,
– VMware ESX od wersji 3.5,
– VMware Workstation od wersji 14 i dodatkowo jej obsługa jest już wymagana,
– Xen od wersji 3.2.0.

Zastosowanie zagnieżdżonej wirtualizacji

Zagnieżdżoną wirtualizację stosuje się najczęściej w dużych środowiskach testowych, pracujących na wysoce wydajnych serwerach. Środowiska te tworzone są w celach edukacyjnych lub podczas wytwarzania oprogramowania. Szkoły, które dysponują odpowiednimi zasobami obliczeniowymi mogą tworzyć odizolowane, złożone środowiska wirtualne dla potrzeb szkolenia. Nie wpływając tym samym na pracę innych i efektywniej wykorzystując potencjał serwerów. W przypadku wytwarzania oprogramowania zagnieżdżona wirtualizacja zwiększa możliwości w zakresie automatycznych testów. Na maszynach wirtualnych można odtwarzać infrastrukturę, w której będzie pracować przyszły produkt, testując kilka rozwiązań jednocześnie.