Hallo zusammen,
ich versuche seit längerer Zeit die Performance einer Handwerkeranwendung (OSD) in einer Windows 2016 Terminalserver VM in den Griff zu bekommen. Der Hersteller gibt an, dass eine möglichst hohe Single-Thread Performance benötigt wird. Außerdem ist es obligatorisch, die Energieeinstellungen im Windows auf "Höchstleistung" zu stellen. Bei Virtualisierung kennen Sie nur "einen Fix" für Hyper-V (und ggf. VMWare). Hier soll im Bios auf "Maximum Perfomance", das Host- Betriebssystem (HyperV auf 2016) auf "Höchstleistung" und auch die Energie-Optionen der 2016er VM auf "Höchstleistung" gestellt werden. Klingt erstmal merkwürdig, funktioniert aber tatsächlich unter Hyper-V.
Es ist mir bisher nicht gelungen, unter Proxmox / KVM eine ähnliche Performance zu erreichen, wie mit den o.g. unter Hyper-V.
Unter Proxmox/KVM ist die Anwendung mindestens 2-3 mal langsamer als unter Hyper-V. HwInfo64 auf der VM zeigt je nach VM Konfiguration entweder ~700MHz je Kern an, oder aber konstant ~3292MHz. Die Anwendung selbst scheint aber nicht in der Lage zu sein, mehr Leistung abzufordern. Die CPU taktet nicht hoch, Anwendung lahm! Währenddessen zeigt "/proc/cpuinfo" auf allen 16 Einträgen fröhlich bis zu 3.8GHz je Kern.
Im Gegensatz zu Hyper-V hat die Änderung der Energieoption von "Ausbalanciert" zu Höchstleistung unter Proxmox keinen Einfluss auf die von HwInfo64 angezeigte Frequenz.
Folgende Hardware ist im Einsatz:
Folgendes habe ich bisher probiert:
Ausgabe # cpupower frequency-info
Aus Verzweiflung habe ich nun den dritten Server daneben stehen und stelle die Anwendung auf 2016-HyperV per RemoteApp bereit, das ist aber mehr Krücke als Lösung.
Ich hoffe, jemand hat eine Idee. Vielleicht können auch Hinweise in Bezug auf DATEV Anwendungen helfen, da soll es ähnliche Anforderungen geben.
Vielen Dank,
Marcus
ich versuche seit längerer Zeit die Performance einer Handwerkeranwendung (OSD) in einer Windows 2016 Terminalserver VM in den Griff zu bekommen. Der Hersteller gibt an, dass eine möglichst hohe Single-Thread Performance benötigt wird. Außerdem ist es obligatorisch, die Energieeinstellungen im Windows auf "Höchstleistung" zu stellen. Bei Virtualisierung kennen Sie nur "einen Fix" für Hyper-V (und ggf. VMWare). Hier soll im Bios auf "Maximum Perfomance", das Host- Betriebssystem (HyperV auf 2016) auf "Höchstleistung" und auch die Energie-Optionen der 2016er VM auf "Höchstleistung" gestellt werden. Klingt erstmal merkwürdig, funktioniert aber tatsächlich unter Hyper-V.
Es ist mir bisher nicht gelungen, unter Proxmox / KVM eine ähnliche Performance zu erreichen, wie mit den o.g. unter Hyper-V.
Unter Proxmox/KVM ist die Anwendung mindestens 2-3 mal langsamer als unter Hyper-V. HwInfo64 auf der VM zeigt je nach VM Konfiguration entweder ~700MHz je Kern an, oder aber konstant ~3292MHz. Die Anwendung selbst scheint aber nicht in der Lage zu sein, mehr Leistung abzufordern. Die CPU taktet nicht hoch, Anwendung lahm! Währenddessen zeigt "/proc/cpuinfo" auf allen 16 Einträgen fröhlich bis zu 3.8GHz je Kern.
Im Gegensatz zu Hyper-V hat die Änderung der Energieoption von "Ausbalanciert" zu Höchstleistung unter Proxmox keinen Einfluss auf die von HwInfo64 angezeigte Frequenz.
Folgende Hardware ist im Einsatz:
- HP-DL380p Gen8
- 128GB RAM
- P420i Controller mit RAID 5 aus 6 SSDs
- Dual Intel Xeon E5-2667v2 (8C/16T, 3.3-4.0 GHz)
Folgendes habe ich bisher probiert:
- Im BIOS steht das "HP Power Profile" auf Maximum Performance (habe jedoch gelesen, dass der "intel_pstate" Treiber vom Linux diese Einstellung übergeht)
- Auf dem Proxmox Host steht der Govenor auf "performance"
- verschiedenste CPU Typen für die VM (default, kvm64, host, IvyBridge)
- verschiedene zusätzliche "Extra CPU Flags"
- Abschalten von intel_pstate mit Kernel Parametern im Grub "cpuidle.off=1 idle=poll"
- Heraufsetzen der min_scaling_frequency auf GHz (echo "3700000" | tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_min_freq)
- Spielen mit custom_cpu_types und zusätzlichen flags (mehr raten als Halbwissen)
Ausgabe # cpupower frequency-info
Code:
analyzing CPU 0:
driver: intel_pstate
CPUs which run at the same hardware frequency: 0
CPUs which need to have their frequency coordinated by software: 0
maximum transition latency: Cannot determine or is not supported.
hardware limits: 1.20 GHz - 4.00 GHz
available cpufreq governors: performance powersave
current policy: frequency should be within 3.70 GHz and 4.00 GHz.
The governor "performance" may decide which speed to use
within this range.
current CPU frequency: Unable to call hardware
current CPU frequency: 3.60 GHz (asserted by call to kernel)
boost state support:
Supported: yes
Active: yes
3700 MHz max turbo 4 active cores
3800 MHz max turbo 3 active cores
3900 MHz max turbo 2 active cores
4000 MHz max turbo 1 active cores
Aus Verzweiflung habe ich nun den dritten Server daneben stehen und stelle die Anwendung auf 2016-HyperV per RemoteApp bereit, das ist aber mehr Krücke als Lösung.
Ich hoffe, jemand hat eine Idee. Vielleicht können auch Hinweise in Bezug auf DATEV Anwendungen helfen, da soll es ähnliche Anforderungen geben.
Vielen Dank,
Marcus
Last edited: