rickstinson
Goto Top

RD Session Host mit Grafikkarte sinnvoll?

Hallo,

wir haben gerade einen neuen Terminalserver für ca 17 User installiert.
Fujitsu Primergy, 8c XEON Silver, SSD Raid, 128GB RAM, Windows 2019 Server,
virtualisiert unter Hyper-V. Am Hyper-V Host laufen noch zwei weitere WinVMs, die aber sogut wie keine Last verursachen.

Der TS vHost hat derzeit 64 GB RAM zugewiesen und 8 Cores.

Benutzersetup:
- Lokale Benutzerprofile
- M365 (Es wird nur Outlook, Word, Excel) verwendet
- Chrome (Recherche Arbeiten)
- Adobe Reader (starke Nutzung, auch von eingescannten PDFs)
- Warenwirtschaft (simpler Windows Client, greift auf MSSSQL DB zu).
- Windows Defender + Windows Suchdienst aktiv

- Durchschnittlicher RAM Bedarf pro User zw 1-2 GB im Tagesschnitt
- SSD I/O bewegt sich auch auf niedrigen Niveau.

Es ist hier gewünscht dass die User *nur* am TS arbeiten, die lokalen PCS sollten nach und nach mit Thinclients ausgetauscht werden.
Soweit läuft es ganz gut, nur die CPU Last ist ein Traum, im Tagesschnitt haben wir 50-60% Last, mit längeren Spitzen rauf bis zu 80%.

Das finde ich hier etwas heftig, vor allem weil ich solche Spitzen von anderen TS Kunden mit ähnlichen Setup nicht kenne.
Wobei unsere anderen Kunden halt nicht am TS surfen, aber sonst auch alles am TS machen.

Ich habe mich jetzt gestern etwas mit diesem Problem beschäftigt und eingelesen, es scheint ziemlich stark an Chrome (bzw. Browsern im Allgemeinen) zu liegen, bzw. an dessen Software Rendering, wenn keine GPU verfügbar ist. Weiters dürften ja auch alle Office Anwendungen mittlerweile die GPU nutzen (wäre zwar deaktivierbar, aber fraglich ob sinnvoll).

Jetzt stellt sich mir die Frage ob es Sinn macht im Server eine Grafikkarte zu verbauen (nur die Quadro P400 wäre für diesen Server zertifizeirt) um die CPU Last zu senken. 10% weniger Last würde keinen Sinn machen, wenn wir das ganze aber um 30% senken könnten wäre das schon ein Hit.

RemoteFX ist ja seit 4/2021 tot, bleibt nur mehr nur das "Discrete Device Assignment", soweit ich das verstanden haben mache ich damit ein passtrough der Grafikkarte zum vHost, der dann die GPU fürs rendern verwenden kann.

Wäre eine Grafikkarte in diesem Fall sinnvoll um die CPU zu entlasten oder einfach eine unnötige Investition?
Hat wer Erfahrungen damit?

Danke
Patrick

Content-ID: 2002182445

Url: https://administrator.de/contentid/2002182445

Printed on: October 7, 2024 at 01:10 o'clock

Vision2015
Vision2015 Feb 25, 2022 at 08:28:12 (UTC)
Goto Top
Moin...

hast du mal zum Test die ( in Chrome )Hardwarebeschleunigung in ihnen deaktiviert?

Frank
DerWoWusste
DerWoWusste Feb 25, 2022 updated at 09:38:17 (UTC)
Goto Top
Die Graka wird nur dann was bringen, wenn du keinen Session-basierten TS (alle Nutzer auf der selben VM), sondern einen VM-basierten TS (jeder Nutzer auf einer eigenen VM) fährst, und auch nur dann, wenn die Graka die erforderlichen Eigenschaften hat - eine P400 mit Sicherheit nicht annähernd.

Um Deine Performance zu beurteilen, reicht es nicht aus zu sagen, dass 17 User drauf sind und die auch Chrome verwenden und dass Chrome als größter Leistungsfresser ausgemacht wurde. Du musst schon sagen, wie Chrome genutzt wird. Wenn die Leute z.B. keinen Adblocker haben und auf jeder 2. besuchten Seite automatisch Werbefilmchen an der Seite ablaufen, dann wundert mich die Last wenig.

Die Last klingt bei 8 Kernen und 17 browsenden Personen etwas zu hoch, aber immer noch im denkbaren Bereich, gerade wenn Filme wiedergegeben werden.
rickstinson
rickstinson Feb 25, 2022 at 10:50:15 (UTC)
Goto Top
Also das DDA sollte mit Sessionhost nun eigentlcih funktionieren:
"If you're using the Remote Desktop Session Host role [..] you will need to make sure that a specific Group Policy entry is set to allow use of the default GPU. "
https://docs.microsoft.com/en-us/windows-server/virtualization/hyper-v/d ...

Allerdings wenn wirklich funktioniert dass die GPU gescheit gefordert wird, auch wenn es nur eine P400 könnte es ja schon beim normalen Surfen der User schon ein deutlichen Lastrückgang bewirken.

Adblocker ist keiner drauf, aber hey, das eigentlich ein guter Tipp! Ich habe heute nachmittags noch einen Termin und werde das genau hinterfragen. Die Inputs vom Kunden sind da leider etwas dürftig. Div Recherche Arbeiten werden hauptsächlich im Chrome gemacht, ob die besuchten Seiten viel Werbung beinhalten werde ich abklären. Youtube, Streaming udgl ist allerdings kein Thema.

Ja die Last ist im Vergleich mit anderen Kunden ähnliches Kategorie wirklich hoch, da der einzige Unterschied der Chrome ist.
rickstinson
rickstinson Feb 25, 2022 at 10:52:53 (UTC)
Goto Top
Was ich eben noch gelesen habe (diverse Beiträge, halt Windows 10 Client PCs), dass Chrome mit Hardwarebeschleunigung um die 1-3% CPU braucht, ohne 30-40% CPU (bei grafisch aufwendigen SEiten).
rickstinson
rickstinson Feb 25, 2022 at 10:56:59 (UTC)
Goto Top
Habe ich jetzt nicht dezidiert gemacht, da beim Aufruf von "chrome://gpu/" eh nur "Software only" steht.
Allerdings verweist Google darauf die Hardwarebeschleunigung dennoch manuell zu deaktivieren: https://support.google.com/chrome/a/answer/9303118?hl=de

Ein Versuch ist es Wert!
ukulele-7
ukulele-7 Feb 25, 2022 at 12:04:38 (UTC)
Goto Top
Du hast 8 pCores und eine VM mit 8 vCores? Möglicherweise ist deine CPUs zu sehr überbucht bzw. hast du eine schlechte CPU-Auswahl getroffen für dein Setup. Wenn diese eine VM rechnet (was sie aufgrund der Nutzung quasi immer will), blockiert sie den Host selbst und alle anderen VMs oder wird von diesen blockiert. Ich halte das für eine sehr problematische Konstellation.

Wenn ESXi im Einsatz wäre würde ich dir esxtop zur Diagnose nahelegen. Bei Hyper-V habe ich keine Erfahrung, der Effekt ist aber der Selbe. Am besten du ließt dich erstmal ein.
GrueneSosseMitSpeck
GrueneSosseMitSpeck Feb 25, 2022 at 20:29:18 (UTC)
Goto Top
Intel HD4000 und ein paar Karten mit Tesla-Grafik werden von Server 2019 und höher unterstütz aber da geht es auch wirlich nur um die gemeinsame GPU Nutzung. Als auch so unter HyperV... auf ESX sind shared GPUs ab 6.7 lizenzpflichtig und die Auswahl an Hardware ist auf Grid und Tesla beschränkt und diese Karten gibts dann ab 3000 Euro an aufwärts, eine client access Lizenz kostet 400 Euro. Sowas ist aber nicht dafür gedacht, viele Clients mit 3D zu versorgen sondern einen.

Ich hatte neulich mal so einen artverwandten Aufbau geplant, große ESX Lösung, CAE Software die reines 2D macht, läuft bestens auf Terminalservern und dann wollten die da für 50 Clients eine mit der 2D Software verbundene 3D Software mit einsetzen, die tlw bis zu 8 GB für ein 3D Modell benötigt. Und 50 Grafikkarten in Servern? Soviel Platz war in den Racks nicht.

Von der 3D Software gibts aber auch eine webbasierte Client-Server Lösung, die per HTML5 im Browser arbeitet... die Lösung war ein Dell 5070 Thinclient mit einer Radeon Grafikkarte und Windows 10 IoT.

@rickstinson auf die spezielle Grafikkarte kannste verzichten, aber Chrome würde ich ehrlich gesagt auf dem Thinclient direkt nutzen so wie unser Bergbaukunde das am Ende verwendet. Das sollte vom Terminalserver die Last nehmen, Lastspitzen von 80% ist schon heftig.
ukulele-7
ukulele-7 Feb 28, 2022 at 09:22:43 (UTC)
Goto Top
Wie schon geschrieben, die Lastspitzen sind vermutlich eher ein Problem der CPU-Fähigkeiten des Servers (wenig pCores, eventuell problematische vCore-Zuteilung) und da kann man mit einer "besseren Grafikkarte" einfach nichts dran ändern.
rickstinson
rickstinson Feb 28, 2022 at 14:33:20 (UTC)
Goto Top
Es ist ein Xeon Silver mit 8 Cores. Also 16 Cores durch Hyperthreading (wird ja auch so im Task-Manager angezeigt).
Dachte die "CPUs" die man im Hyper-V zuweist sind nicht die physischen Cores der Maschine, sondern die Cores die mir der Hyper-V Host anzeigt.

Somit wäre 8 Cores für den TS reserviert und 8 Cores für andere Maschinen frei.
Oder ist das komplett falsch?
Vision2015
Vision2015 Feb 28, 2022 at 14:36:33 (UTC)
Goto Top
Moin...
Zitat von @rickstinson:

Es ist ein Xeon Silver mit 8 Cores. Also 16 Cores durch Hyperthreading (wird ja auch so im Task-Manager angezeigt).
Dachte die "CPUs" die man im Hyper-V zuweist sind nicht die physischen Cores der Maschine, sondern die Cores die mir der Hyper-V Host anzeigt.

Somit wäre 8 Cores für den TS reserviert und 8 Cores für andere Maschinen frei.
Oder ist das komplett falsch?
durch Hyperthreading bekommst du keine vollwertigen Cores..

Frank
ukulele-7
ukulele-7 Feb 28, 2022 at 14:55:15 (UTC)
Goto Top
Aber grundsätzlich ist das okay. Wenn du Hyperthreading aktiviert hast, also 16 vCores da sind und dann nur 8 vCores dem Terminal Server zugewiesen sind dann wird es Seitens des Scedulers eher keine Probleme geben. Grundsätzlich ist dein Host also nicht überbucht.

Natürlich hat Frank auch Recht, ich glaube aber nicht das dadurch besonders starke Effekte entstehen. Unter Last auf allen VMs wäre das nicht gut aber die VMs dürften sich nicht allein durch die Belegung von vCores gegenseitig blockieren.