
Wprowadzone w zeszłym roku sprzętowe wsparcie dla wirtualizacji
- rozszerzenia zestawów instrukcji procesorów Intel VT oraz AMD-V -
spowodowało, że niezwykle powolna, realizowana wcześniej z dużymi
stratami na translację binarną wirtualizacja stała się atrakcyjnym
rozwiązaniem nie tylko jako narzędzie do testów, ale wydajnej
konsolidacji serwerów i usług w środowiskach produkcyjnych.
Rozszerzenia te, mimo że oferują znaczny skok jakościowy, mają
jednak poważną wadę - wymagają wyposażenia systemów pracujących pod
kontrolą maszyn wirtualnych w parasterowniki dla hypervisora
minimalizujące dodatkowe obciążenie procesora związane z alokacją
zasobów. I tu zaczynają się schody - bo rozszerzenia oferowane
przez producentów takich jak Microsoft, VMWare czy inni mogą być
one lepsze, gorsze lub... może ich w ogóle nie być, co w praktyce
oznacza ograniczenie w wyborze tego, co chcemy wirtualizować.
Druga generacja sprzętowego wsparcia dla wirtualizacji, technologia
sprzętowej obsługi stronicowania (HAP - Hardware Assisted Paging,
NPT - Nested Page Tables lub Nested Paging) jest już dostępna,
pojawiła się już w najnowszych procesorach AMD Opteron trzeciej
generacji w formie rozszerzenia o marketingowej nazwie RVI (Rapid
Virtualization Indexing). Intel planuje wprowadzenie jej dopiero w
trzecim kwartale 2009 roku pod swoją nazwą marketingową EPT
(Extended Page Tables) - debiutu należy oczekiwać wraz z procesorem
o kodowej nazwie Nehalem. Wsparcie dla tej koncepcji muszą zapewnić
też producenci oprogramowania wirtualizacyjnego - w chwili obecnej
RVI obsługuje między innymi VMware i Citrix, nie obsługuje go
niestety jeszcze Hyper-V, co naturalnie Microsoft przemilcza
chwaląc się nowym hypervisorem.
Ponieważ oczekiwania są spore, serwis AnandTech pokusił się o
przygotowanie pierwszych,
porównawczych testów wydajnościowych maszyn wirtualnych
pracujących przy włączonym oraz wyłączonym NPT. Wyniki pokazują, że
NPT potrafi w niektórych przypadkach spowodować aż 31-procentowy
skok wydajności - o tyle szybciej pracowały w testowym scenariuszu
serwery IIS 6 hostujące aplikacje PHP. Rezultaty w scenariuszach
testujących wirtualizowane bazy danych Oracle były mnie imponujące,
niemniej także istotne - wydajność okazała się w nich większa o
7%.
Wygląda zatem na to, że że NPT będzie kolejnym krokiem milowym na
drodze do powszechnego stosowania wirtualizacji w środowiskach
produkcyjnych, która mimo sprzętowych rozszerzeń nadal związana
jest z kosztem poświęcenia części zasobów sprzętowych na obsługę
samego hypervisora. VMware szacuje, że między innymi właśnie dzięki NPT wspomniany
efekt narzutu zostanie całkowicie wyeliminowany do roku 2010.