bhyve + VNC auf HiDPI Host

Rosendoktor

Well-Known Member
Hallo zusammen,

hat jemand Erfahrung mit VMs unter bhyve auf FreeBSD Hosts mit HiDPI bzw. 4K Anzeige? Hab nämlich etliche Probleme damit.

Zunächst die Konfiguration der beiden Hosts die ich verwende:

Lenovo P50 Notebook, Core i7 6. Gen., Nvidia Grafik (Intel im UEFI deaktiviert), 4K Display 3840x2160, Dualboot Debian 12 / FreeBSD 14
Fujitsu Tower PC, Core i7 3. Gen., Nvidia GT 1030 Grafikkarte, 4K Monitor 3840x2160, Dualboot Debian 12 / FreeBSD 14

Also recht gut abgehangen... :)

Wenn man schon HiDPI hat, dann will man natürlich auch die Gastsysteme mit HiDPI laufen haben... :D Gastsystem ist übrigens u. a. Windows 10.

Unter Debian+QEMU/KVM (fast...) kein Problem. Ich musste lediglich die OVMF UEFI Firmware patchen, da die gewünschte Auflösung nicht auswählbar war. Dann laufen alle Gastsysteme sauber in HiDPI, sowohl Vollbild als auch im Fenster mit etwas kleinerer Auflösung als der Host. Verwendet wird zur Anzeige der zu libvirt gehörende Remote Viewer mit dem spice Protokoll.

Unter FreeBSD+bhyve wird es seltsam. Zunächst musste bhyve gepatched werden, da eine Maximalauflösung 1920x2100 und 16MB Grafikspeicher im Quellcode hartcodiert waren. Hab ich auf 4K und 128MB erhöht. Dann starten die VMs. Ich kann eine VNC Verbindung herstellen, ob und wie etwas angezeigt wird hängt aber von der Hardware des Hosts ab. Auch hier verwende ich den zu libvirt gehörenden Remote Viewer, da bhyve kein spice Protokoll beherrscht aber mit dem VNC Protokoll.

Lenovo Notebook: Die Anzeige des Gastsystems ist mit dem Remote Viewer sichtbar, läuft in HiDPI, ist aber nur im Vollbild bedienbar und muss daher mit der vollen 4K Auflösung des Hosts laufen. In dieser Konfiguration läuft es aber dann sauber und performant. Im Fenster bei kleineren Auflösungen oder gar skaliert ist die Grafikdarstellung derart ruckelig und teigig, dass der Gast nicht sinnvoll bedienbar ist.

Fujitsu PC: Unter FreeBSD 14 hat man überhaupt nur eine Anzeige im VNC Viewer, wenn die Gastsysteme in 1K Auflösung laufen. Versucht man, ein Gastsystem in höherer Auflösung zu starten, ist das Bild im VNC Betrachter (egal, welcher) einfach schwarz. Unter FreeBSD 15 (identische Fujitsu PC Hardware) ist das Bild immer schwarz, egal mit welcher Auflösung der Gast gestartet wird.


Also prinzipell schein es zu funktionieren, unter FreeBSD+bhyve Gäste in HiDPI Auflösung laufen zu lassen, auf dem Lenovo P50 funktioniert es ja unter den beschriebenen Rahmenbedingungen. Warum es auf den PCs gar nicht oder nur in 1K geht weiss ich nicht. Liegt es am schwächeren Prozessor (6. Gen vs. 3. Gen.), oder an der Grafikkarte vielleicht, die ja auch nicht die stärkste ist? Wenn ich es wüsste könnte ich die GT 1030 ja tauschen gegen was moderneres...

Bin für Tips und Erfahrungen dankbar!

Grüße,
Robert
 
Liegt es am schwächeren Prozessor (6. Gen vs. 3. Gen.), oder an der Grafikkarte vielleicht, die ja auch nicht die stärkste ist?
Nein, VNC hat zuviel overhead und wurde nicht für Grafikpracht entwickelt, sondern um das nötigste zu erledigen.

Ich bin ganz zufrieden mit net/remmina und http://www.xrdp.org/ | net/xrdp
Dynamischer Auflösungswechsel (Fenster klein/großziehen) klappt gut und je nach Bandbreite/GPU-Treiber/GPU-Leistung klappts auch ganz ok mit der Beschleunigung.
Bei Windows z.B. musst du nichts machen, das hat nativ ja schon rdp-client/server.
 
Zurück
Oben