„Wydajność” ma wiele aspektów. N00bs mierzy czas rozruchu systemu operacyjnego i mówi, że np. Windows 2012 jest bardzo świetny, ponieważ uruchamia się w 12 sekund na prawdziwym HD, może 1 sekundę na SSD.
Ale ten rodzaj pomiaru nie jest bardzo przydatny: wydajność jest równa czasowi uruchamiania systemu operacyjnego, ale system operacyjny uruchamia się raz w miesiącu tak optymalizując, że nie ma to większego sensu.
Ponieważ to moja codzienna działalność, mogę wskazać 4 następujące części składające się na „wydajność”
Obciążenie procesora
Powinno to być porównywalne, co oznacza, że zadanie zajmujące 1000 ms na goły metal wykona się w czasie 1000 ms i prawdopodobnie 1050 ms w taktowaniu bezczynnego środowiska VM na tym samym sprzęcie (niektóre szczegóły później). Google MSDN dla czasu procesora i kwerendy licznika zapytań i ty możesz zrobić coś, co może pokazać, ile VM pochłania twój czas procesora.
Wydajność SQL
Wydajność SQL w dużej mierze zależy od operacji we / wy do magazynu danych, w którym przechowywane są dane SQL. Widziałem 300% różnicy między ISCSI 1. generacji, które można znaleźć na macierzystym serwerze NAS Buffalo, a następnie ISCSI z DCE i prawdziwym oldschoolowym środowiskiem FC na wszystkich poziomach. FC nadal wygrywa w dzisiejszych czasach, ponieważ opóźnienie FC jest najmniejszym możliwym do archiwizacji, co prowadzi do „kopii” protokołu FC dla ulepszeń centrum danych TCP / IP. Tutaj IOps i opóźnienia są niezbędne, ale także przepustowość IO od procesu serwera do mediów - zależy od tego, czy aplikacja ma tendencję do No-SQL lub Datawarehousing, czy też znajduje się w środku takich systemów ERP ... Sage KHK dla małych przedsiębiorstw, SAP dla wielkich.
Dostęp do systemu plików
Niektóre aplikacje, takie jak przesyłanie strumieniowe wideo, wymagają minimalnej przepustowości, inne polegają na maksymalnej przepustowości we / wy, np. Otwieranie dużych plików w edytorze szesnastkowym, ładowanie projektu wideo do ulubionego programu do tworzenia filmów. Nie jest to typowa sytuacja na vm .... IOps może być również ważne dla programistów. Programiści często korzystają z maszyn wirtualnych, ponieważ środowiska programistyczne są bardzo wrażliwe, dlatego pokusa, aby to zrobić na maszynie wirtualnej, jest wysoka. Kompilacja dużego projektu często oznacza odczytywanie ton małych plików, robienie kompilatora i kompilację EXE oraz komponentów.
Opóźnienie sieci w stosunku do klienta
Tutaj użyteczność WYSIWIG przebiega podobnie jak Word 2010, Openoffice Writer, LaTEX, GSView i inne, w dużym stopniu zależą od szybkości - szybkości działania myszy od klienta do serwera. Jest to szczególnie ważne w aplikacjach CAD ... ale także nie dotyczy sieci LAN, to jest zdalny dostęp przez WAN, gdzie jest to ważne.
Ale - i mówię z perspektywy lat konsultacji - są użytkownicy posiadający hasło administratora (i często są to pracownicy BIG firmy z DUŻYM budżetem i DUŻYM portfelem) narzekający na to i tamto, ale należy to wyjaśnić który komponent wydajności jest dla nich ważny i który jest ważny z punktu widzenia używanej aplikacji.
Najprawdopodobniej nie jest to notatnik, ale wysoce wyrafinowana aplikacja do inżynierii tego i tamtego, co również było bardzo kosztowne i powinno zostać przeniesione na VMware, HyperV lub Xenapp i nie działa zgodnie z oczekiwaniami.
Ale nie mają na myśli, że może działać na Xeonach 1,5 GHz na łopatach nieprzeznaczonych do czystej wydajności procesora, są zbudowane dla średniej, powiedzmy „zoptymalizowanej dla $ na cykl procesora” lub „cykli procesora na wat” .
A kiedy mówimy o kompromisach i ekonomizacjach - prowadzi to głównie do nadmiernego zaangażowania. Nadmierne zaangażowanie prowadzi do braku zasobów, w których procesor może być obsługiwany całkiem dobrze, ale brak pamięci prowadzi do stronicowania, brak operacji we / wy w podstawowych routerach prowadzi do wydłużenia czasu odpowiedzi na wszystko, a przeciążenie transakcyjne dowolnego rodzaju pamięci może zatrzymać każdą przydatną aplikację od zbyt szybkiego reagowania. Tutaj wymagane jest monitorowanie, ale wielu dostawców oprogramowania nie jest w stanie dostarczyć takich informacji .... z drugiej strony host z zasobami 3 fizycznych serwerów może najprawdopodobniej obsłużyć 8 maszyn wirtualnych o takim samym układzie jak fizyczne ...
Kompromisy procesora w bezczynnych systemach często prowadzą do tego, że systemy działają o 50% wolniej niż systemy fizyczne, z drugiej strony nikt nie jest w stanie zainstalować systemu „rzeczywistego” i aplikacji „rzeczywistego świata”, informatycy klienta chcą przenieść się na maszynę wirtualną pudełko. I zajmuje to kilka dni (może tygodni, ale na pewno 42 spotkania), aby wyjaśnić, że technologia VM może zaoferować elastyczność, handlując czystą prędkością procesora. Jest to po prostu wbudowane w procesory w tych systemach typu blade obsługujących obecnie większe środowiska VM. Również pamięć nie będzie porównywalna, obowiązują również pewne kompromisy. DDR3 1600 CL10 będzie miał większą przepustowość pamięci niż DDR2 800 ECC LLR - i wszyscy wiedzą, że procesory Intel korzystają z tego w inny sposób niż AMD cpus. Ale rzadko są stosowane w środowiskach produkcyjnych, więcej w białych skrzynkach lub centrach danych hostowanych w krajach trzeciego świata, którzy oferują usługi centrum danych za 10% ceny, jaką centrum danych w twojej ojczyźnie może zapłacić. Dzięki Citrx centrum danych może być wszędzie, jeśli opóźnienie między użytkownikiem końcowym a centrum danych jest mniejsze niż 150 ms.
I perspektywa użytkowników domowych ....
Wreszcie, niektórzy ludzie chcą wyrzucić Win7 lub XP i wymienić je na Linuksa, a potem pojawia się pytanie dotyczące gier, ponieważ w rzeczywistości tylko kilka gier jest dostępnych dla Linuksa i Windowsa. Gra opiera się w dużej mierze na akceleracji 3D. Stacja robocza VMWare 6.5 i podłączony bezpłatny odtwarzacz mogą obsługiwać DirectX 9, co oznacza, że Doom3 na maszynie wirtualnej może działać na głównej karcie graficznej na pełnym ekranie. Gry to w większości 32-bitowe aplikacje, więc nie zjedzą więcej niż 3 GB i przeważnie nie więcej niż 3 procesory (widoczne na Crysis). Nowsze maszyny VM i WS obsługują wyższe wersje DirectX i prawdopodobnie również OpenGL ... Grałem w UT i UT2004 na VMware 6.5, host miał ATI Radeon 2600 mobile i procesor T5440. Był stabilny przy 1280 x 800 i można go odtwarzać nawet w grach sieciowych ...