NICE DCV

Im Laufe der Jahre hat sich die Workstation zum umfassenden Tool zur Visualisierung von zahlreichen 3D Anwendungen entwickelt. Der Weg begann mit 2D CAD, welches noch sehr an die Arbeitsweise auf dem Zeichenbrett angelehnt war und wurde weitergeführt bis zu den heutigen 3D Visualisierungen von komplexen Werkstücken und Maschinen in Echtzeit. Die Anforderung an eine graphische Aufbereitung von "Big Data" Anwendungen, wie sie typischerweise im HPC Umfeld auftreten, stellt die Workstation vor neue Herausforderungen. Die 3D Rendering Leistung der eingebauten Grafikkarten kann kaum hoch genug sein, um diesen stetig steigenden Ansprüchen zu genügen. 

Die sich hieraus ergebenden Investitionen in eine Workstation und die während der Lebensdauer notwendigen Aufrüstungen sind zunehmend eine Größe, die über die Wettbewerbsfähigkeit eines Unternehmens mit entscheidet.

Sicherheit

Für den Administrator stellen Workstations einen hohen Zeitaufwand dar, um Betriebssysteme und Applikationen aktuell zu halten und vor Angriffen durch Phishing oder über manipulierte USB Medien zu schützen.

Da Daten, die auf Workstations erzeugt werden, z.B. 2D/3D Konstruktionspläne oder Analyseergebnisse oft sehr sensibel sind, sollten diese auch speziell geschützt und gesichert werden. Dies ist mit einer zentralisierten Visualisierungslösung im Rechenzentrum deutlich besser möglich, da die Daten aus physikalischer Sicht (kein direkter Zugang zu den Daten über USB-Ports oder DVD-Brenner) effektiver geschützt und über entsprechende Datensicherungskonzepte deutlich effizienter gesichert werden können.

Lösungsmöglichkeit

Vor diesem Hintergrund bietet das Produkt "NICE Desktop Cloud Visualization" (abgekürzt als "NICE DCV") eine interessante Alternative zur klassischen Workstation, welche viele der aufgeführten Herausforderungen adressiert.

Die Architektur von NICE DCV besteht aus dem DCV Server und mehreren DCV EndStations, die auf diesen Server zugreifen. Der DCV Server verfügt über leistungsfähige CPUs und eine oder mehrere GPUs (Graphics Processing Unit) der NVIDIA Quadro oder GRID Serie. Der DCV Server führt die 3D Applikation aus und übernimmt auch die Rendering Aufgaben in OpenGL oder DirectX. NICE DCV installiert auf dem Server eine angepasste Version von RealVNC Server. Als Betriebssystem kommen Windows 7, Windows Server 2008 R2 (nicht im Terminalservermodus), RedHat Enterprise Linux 5.x und 6.x oder SUSE Enterprise Server 11 zum Einsatz. Das Betriebssystem kann direkt auf dem DCV Server ("Bare Metal") oder alternativ auch unter einem Hypervisor in eine virtuelle Maschine installiert werden.

Quelle: https://www.nice-software.com/products/dcv

Die DCV EndStation Software kann auf PCs und Notebooks unter Windows 7, 8.1, RedHat Enterprise Linux 5.x und 6.x, SUSE Enterprise Server 11 oder Mac OS X installiert werden. NICE DCV EndStation verwendet einen RealVNC Client zum Zugriff auf den NICE DCV Server. Die Anforderungen an die EndStation Hardware sind sehr gering, da keine lokalen Rendering Aufgaben anfallen. Dies kommt dem Wunsch nach günstigen "BYOD" Geräten wie Notebooks oder Tablets sehr entgegen.

Der DCV Server kodiert die Videodaten mit dem H.264 Codec, der eine effiziente Komprimierung der Videodaten mit geringen Einbußen der Bildqualität bei niedrigen Bitraten ermöglicht.

Diese Technik ermöglicht eine flüssige und ruckelfreie Darstellung der vom DCV Server gerenderten Szenen auf dem DCV EndStation Gerät. Dies gilt auch für WAN Verbindungen zwischen DCV Server und DCV EndStation, die nur geringe Bitraten zulassen. Der Benutzer kann zudem noch die Güte der Darstellung auf der DCV EndStation über die NICE DCV Console einstellen. Bei einer Verbindung über ein lokales Netzwerk mit WLAN oder GBit Ethernet ermöglicht die Einstellung "Best Quality" sogar eine verlustfreie Übertragung der Videodaten.

Je nach Qualität der Verbindung kann über die NICE DCV Console die in Anspruch genommene Bandbreite des RealVNC Clients überwacht und auf die Gegebenheiten angepasst werden.

Der DCV Server priorisiert beim Rendering von sich rasch ändernden Videodaten die Frame Rate auf Kosten der Qualität der Darstellung. Dies ermöglicht eine flüssige Darstellung im RealVNC Client, beispielsweise bei einer Rotation eines komplexen Bauteils im 3D Raum. Die Detaildarstellung des Bauteils wird während einer derartigen Bewegung verringert, um die Frame Rate hoch halten zu können. Wenn sich das Bauteil schließlich in der gewünschten Position befindet, werden die fehlenden Details bei der Darstellung rasch wieder ergänzt.

Quelle: http://www.NICE-software.com/storage/NICE-dcv/2014.0/docs/NICE-dcv-endstation-guide-2014.0-16031.pdf

Die NICE DCV Architektur erfüllt die Forderung nach einer Lokalisierung der Daten im Rechenzentrum oder der Cloud Infrastruktur. Die bandbreitenhungrige und unter Sicherheitsaspekten bedenkliche Übertragung von CAD Daten zwischen einem Server und der Workstation entfällt. Die Daten bleiben im Rechenzentrum, da der DCV Server nur Videodaten an die DCV EndStations sendet. In Rechenzentren steht in der Regel eine 10 GBit Infrastruktur zur Verfügung, die eine schnelle Anbindung des DCV Server an die zu rendernden Daten garantiert. Für Visualisierungen im HPC Umfeld ist dies von großer Bedeutung, da der Austausch von derart großen Datenmengen zwischen Dateiserver und Workstation oft durch Bandbreitenbeschränkungen gar nicht möglich ist. Beispiele hierfür sind Visualisierungen von finiten Element (FE) Programmen wie Ansys oder sämtliche auf Voxel Basis vorliegenden Daten, die volumetrische Größen darstellen.

Die zentrale Datenhaltung erlaubt auch den Zugriff mehrerer DCV EndStations auf dieselben Daten. Eine Arbeitsgruppe hat auf diese Weise einfachere Möglichkeiten zur Zusammenarbeit als dies bei einem traditionellen Schema von Workstations und Dateiservern der Fall ist. NICE bietet hierfür das Produkt "EnginFrame" an, das unter anderem die Zusammenarbeit mehrerer Benutzer in einer Session ermöglicht. Für Firmen, die Konstruktionsaufgaben an externe Dienstleister vergeben, wird der Ablauf vereinfacht, da nun keine sensitiven CAD Daten mehr verschickt oder individuelle Software Lizenzierungen auf Endgeräten beachtet werden müssen. Ein VPN Zugang zum DCV Server und eine DCV EndStation Installation auf dem Endgerät des externen Dienstleisters genügen. Die CAD Anwendung und die Daten bleiben im Rechenzentrum.

Der DCV Server verfügt in der Regel über mehrere GPUs. Die GPUs können von dort laufenden virtuellen Maschinen (VM) über das GPU Pass Through jeweils von einer VM angesteuert werden. Je nach Ausstattung des DCV Servers mit GPUs sind damit bis zu 8 VMs möglich.

Beim Einsatz von NVIDIA GRID GPUs wird der Hypervisor um den NVIDIA vGPU Manager ergänzt. Dies ermöglicht es bis zu 8 VMs pro GRID GPU einzusetzen. Im Sinne eines Load Balancing können die GPU Ressourcen des DCV Servers auf diese Weise wesentlich besser ausgenutzt werden.

Quelle: http://www.NVIDIA.com/object/NICE-desktop-cloud-visualization.html

NVIDIA bietet zwei Karten mit GRID GPUs an. Die GRID K1 Karte verfügt über vier GRID GPUs. Damit können bis zu 32 VMs auf eine GRID K1 Karte zugreifen. Bei der GRID K2 Karte kommen zwei GRID GPUs zum Einsatz, für 16 VMs.

Bei der Bestückung eines DCV Servers mit NVIDIA GRID GPUs sind die Empfehlungen von NVIDIA zu beachten, die eine maximale Anzahl von zwei GRID K1 bzw. vier GRID K2 Karten vorgeben.

Ein typisches Produkt für diese Anzahl an GRID Karten stellt der transtec CUDA 6230 GPU-Server dar, der in dieser Ausstattung bis zu 64 VMs hosten kann. Für diesen Einsatz ist eine ausreichend hohe Netzwerkbandbreite von großer Bedeutung. Im CUDA 6230 GPU Server ist dies mittels zweier onboard 10 Gbit Ethernet Controller realisiert.

Ein DCV Server hostet die Applikation und übernimmt gleichzeitig die Rendering Aufgaben. Es ist nun möglich mehrere Windows basierte Application Host VMs ohne einen Rendering Server in einer VM zu installieren. Dies ist sinnvoll wenn die vom Hypervisor emulierte virtuelle Hardware keine native OpenGL Beschleunigung im Betriebssystem der VM ermöglicht. Die Application Hosts geben in diesem Fall OpenGL Befehle an den separat installierten Rendering Server weiter. Der Rendering Server sendet dann die Videodaten mit H.264 kodiert an die DCV EndStations.

Nice empfiehlt sowohl die Application Host VMs als auch den Rendering Host auf einem physikalischen Server zu installieren, um eine optimale Netzwerkverbindung zwischen diesen Hosts zu gewährleisten. Nice hat zwei Versionen getestet und freigegeben.

Die erste Version nutzt als Hypervisor KVM (Kernel-based Virtual Machine) einer geeigneten Linux Distribution. Die Application Host VMs laufen unter KVM, während der Rendering Server direkt als Dienst unter dem "Bare-Metal" installierten Linux eingerichtet wird. Der Rendering Server hat damit direkten Zugriff auf die GPU. Die Netzwerkverbindung zwischen den Application Hosts und dem Rendering Server erfolgt über das Virtio Host-Only Netzwerk von KVM.

Die zweite Version setzt XenServer als "Bare-Metal" Hypervisor ein. Neben den Application Host VMs läuft auch der Rendering Server in einer Linux basierten VM. Der Rendering Server greift mittels des GPU passThrough Verfahrens auf die GPU zu. Die VMs kommunizieren untereinander über das Xen Virtual Network.

Die Aufteilung in Application Host VMs und Rendering Hosts ist speziell für große Cloud Provider interessant, die bereits vorhandene Infrastrukturen für VMs um Rendering Hosts ergänzen möchten.

Mit NICE DCV steht ein wichtiger Baustein für die (private) Cloud Infrastruktur eines Unternehmens zur Verfügung. Zu den bereits gut etablierten Server- und Desktopvirtualisierungen ermöglicht NICE DCV jetzt auch die Remote Visualisierung aller Aufgaben, die bisher von lokalen CAD Workstations übernommen wurden. Damit wird es möglich eine der letzten klassischen "Irons" abzulösen und durch ein flexibles und sicheres (private) Cloud Modell zu ersetzen.

Autor

Bernd Zell

Senior System Engineer

Kommentar

„Der Trend zu "Server based Computing" ist in vielen Bereichen der IT anzutreffen. Mit NICE DCV steht eine Technologie zur Verfügung, mit der sich bisher auf Workstations laufende 3D Rendering Aufgaben in das Rechenzentrum verlagern lassen.

Dies ermöglicht es Synergieeffekte des "Server based Computing" auch auf das 3D Rendering auszudehnen. “

Kann ich Ihnen weiterhelfen?

Sales

Schweiz

Tel.: +41(0)448184700
Fax: +41(0)448184720