czwartek, grudnia 24, 2009

Lies, damn lies and benchmarks

Chcemy porównywać jakieś produkty występujące na różne systemy operacyjne. Ponieważ jesteśmy nowocześni używamy wirtualizacji. Jeden produkt wpakujemy do Ubuntu JeOS ze wsparciem dla parawirtualizacji (VMware: vmi.present ="True" na starszych Xenonach lub Opteronach) a drugi do zwykłego Windows-a.


Zaglądając do pliku paravirt.h widzimy funkcje związane z obsługą stronicowania, przerwań, mierzenia czasu. Jeśli zamiast emulacji w tych dziedzinach będziemy mieli bezpośrednie wywołania kodu hipervisor-a wirtualizowany system operacyjny powinien być sporo szybszy. Czyli jeśli testowany produkt zachowywałby się tak samo na Linuksie jak i Windowsie, to w wirtualnym środowisku będzie szybszy na Ubuntu JeOS (wygra benchmarki).

Inna bajka jest z wirtualizacją 2.0 (nested paging): tu wszystkie maszyny wirtualne mogą śmigać.

0 komentarze: