Piszki Lab

Analiza przypadku w języku przodków…

Grafika 3D w Horizon View – część 1

| 0 comments

Czasem się zastanawiam, gdzie w tym wszystkim dojedziemy, czy ktoś z nas kiedykolwiek myślał, że grafika 3D będzie dostępna na cienkich klientach? A tak się składa, że jest dostępna. Już w roku 2012 na VMWare Forum ogłoszono powstanie aliansu firm Nvidia i VMware który miał przynieść wirtualizację grafiki 3D, realizowaną po stronie hosta. Dzisiaj mamy początek 2015 i czas na sprawdzenie w praktyce jak to wszystko wygląda naprawdę! Zgromadziliśmy już odpowiedni sprzęt, serwery Dell PowerEdge R720 wraz z kartami Nvidia Grid K1 oraz cienkie terminale Wyse P45 (czteromonitorowe!). Mamy też przygotowane środowisko Horizon View 6 wraz z całą otoczką. Zaczynamy!

1387525676

Renderowanie grafiki 3D w wirtualnej maszynie może odbyć się na cztery sposoby, programowo (ta opcja nas nie interesuje, mamy ją na co dzień i nie działa najlepiej) oraz sprzętowo za pomocą trzech różnych metod, vSGA, vDGA i vGPU. Standard vSGA pozwala w sposób dynamiczny przydzielać moce sprzętowego akceleratora grafiki 3D, zainstalowanego na każdym hoście ESXi, dla potrzebujących tego maszyn wirtualnych. Oznacza to też to, że jeśli maszyna nic nie renderuje, przydzielany jest jej automatycznie sterownik programowy 3D. vSGA pozwala współdzielić przez wiele maszyn pojedynczą kartę 3D, przydzielaniem zasobów w takim przypadku zajmuje się vSphere. W związku z tym, że każda karta pozwala na obsłużenie określonej liczby wirtualnych maszyn, w momencie w którym skończą się sprzętowe zasoby, kolejne maszyny otrzymają programowy sterownik 3D. Aby wszystko działało poprawnie, na wirtualnej maszynie musi być zainstalowany sterownik VMware SVGA 3D (WDDM), wspierane są Windows 7 i Windows 8.

view7

Z moich obserwacji wynika, że współdzielenie zasobów jest bardzo wydajne. W konsoli każdego ESXi za pomocą polecenia “watch –n 1 nvidia-smi” można obserwować pracę karty w czasie rzeczywistym:

nvidia6

Standard vDGA to nowość jaka pojawiła się w Horizon View 5.3 i został opracowany we współpracy z firmą Nvidia i na początku był obsługiwany tylko przez karty tej firmy. Oferuje on nową możliwość, “przekierowanie” karty grafiki do wybranej maszyny wirtualnej.  Ma to zasadniczy minus, ile kart w serwerze, tyle maszyn z obsługą sprzętową 3D, ma też plus, według zapewnień producentów, tak spreparowana maszyna, jest pełnym zamiennikiem dla wysokowydajnych graficznych stacji roboczych. W systemie operacyjnym takiej maszyny powinny być zainstalowane sterowniki graficzne Nvidii. Dodatkowym ograniczeniem jest to, że ze względu na przekierowanie (hardware passthrough), taka maszyna nie podlega vMotion (DRS i HA).

view9

W kolejnej odsłonie kart graficznych, czyli Nvidia Grid, każdy procesor karty funkcjonuje niezależnie, oznacza to że możemy mieć cztery maszyny obsłużone w standardzie vDGA per Nvidia Grid K1. Możemy też miksować to rozwiązanie, trzy jednostki pracują w trybie współdzielonym vSGA a jedna w trybie vDGA!

nvidia10

Kolejnym standardem jest vGPU, jest to absolutna nowość (wymagany jest vSphere 6). vGPU jest czymś w rodzaju połączenia vSGA z vDGA, czyli pełne współdzielenie zasobów przy pełnym sprzętowym wykorzystaniu potencjału karty! Czyli także tutaj w systemie operacyjnym muszą być zainstalowane sterowniki graficzne Nvidii. Zgodnie z zapewnieniami producenta, vGPU całkowicie zrówna po względem wydajności stacje wirtualne z tymi fizycznymi po względem wydajności grafiki 3D.

nvidia8

To rozwiązanie nie jest też pozbawione ograniczeń, w tym wypadku górną granicą jest 8 użytkowników per pojedynczy procesor grafiki lub maksymalnie 32 per pojedyncza karta K1 (maksymalnie dwie karty per serwer, czyli 64 użytkowników grafiki). Czy to dużo czy mało? Jest to ogromna ilość, w przypadku serwera Dell R720 upchnięcie 32 maszyn na jednym serwerze jest nonsensem jeśli chcemy zapewnić odpowiednią wydajność pracy. Przydziałem zasobów zajmujemy się za pomocą odpowiednich profili:

nvidia9

Osobiście nie mogę się doczekać kiedy przetestuję vGPU, a narazie, w następnej części zajmiemy się instalacją i konfiguracją karty Nvidia Grid K1 w środowisku Horizon View 6 oraz testami wydajności (głównie dla vDGA w vSphere 5.5).

Oceń ten artykuł:
[Total: 0 Average: 0]

Dodaj komentarz

Required fields are marked *.