如何高帧率串流 Windows 虚拟机画面到 PVE 主机?

338 天前
 chenkx

PVE 主机是一台笔记本电脑,自带 144 Hz 的屏幕,安装了 KDE 桌面。主机浏览器里测试有 144 fps 。

vGPU unlock 显示正常。

采用 sunshine + moonlight 串流,moonlight 设置了 144 fps 。

但在 Windows 虚拟机测试的结果只有 60 fps 。

查看 Windows 虚拟机的 Nvidia 控制面板,vGPU 工作正常,但刷新率只有 60 Hz 选项。

各位知道怎么解锁高刷新率吗?

2727 次点击
所在节点    Linux
11 条回复
FishBear
338 天前
上虚拟显示器欺骗一下你的显卡
https://github.com/KtzeAbyss/Easy-Virtual-Display
比如这个
chenkx
338 天前
@FishBear 好的,我去试一下
fukhak
338 天前
垂直同步開了當然鎖 60 啊。。。
fukhak
338 天前
呀,看錯 op 的話了,宿主機本來只有 60hz 屏幕,那當然上限會限死了,和上邊一樣想法都是做一個假的顯示器
FishBear
337 天前
你的浏览器能跑 144 桢吗?
是不是浏览器的问题
chenkx
337 天前
@FishBear 浏览器是 Microsoft Edge ,版本 120.0.2210.61 (正式版本) (64 位)。

https://www.testufo.com/browser.html 测了,显示 Browser supports VSYNC!

testufo 显示标绿的 READY 时是 60 fps ,就是说 VSYNC 垂直同步的帧率为 60 fps 。同时 Windows 任务管理器 GPU 的 Video Encode 占用率和原来的 60 fps 也是一样的。
sunbroke
337 天前
应该不是浏览器的问题 感觉还是虚拟显示器的问题 我是特斯拉 P4 也全部设置 144hz 进 Windows11 浏览器测试也只有 60hz, 进 csgo 也锁住 60 了。
我进 nvdia 面板 发现 显卡设置里还是只有 60hz 选项,但是 Windows 设置里我已经设置成 144hz 。
sunbroke
337 天前
我刚刚查看了下英伟达文档,发现 VGPU 默认会开启一个 FRL 限制:
启用后,帧速率限制器 (FRL) 会限制最大帧速率(以帧为单位) vGPU 的每秒 (FPS) 如下:

对于 B 系列 vGPU ,最大帧速率为 45 FPS 。
对于 Q 系列、C 系列和 A 系列 vGPU ,最大帧速率为 60 FPS 。
默认情况下,所有 GPU 均启用 FRL 。vGPU 时 FRL 被禁用 GPU 上的默认尽力而为调度程序的调度行为已更改,支持 替代 vGPU 调度程序。有关详细信息,请参阅更改 vGPU 调度行为。在使用尽力而为调度程序的 vGPU 上,可以将 FRL 禁用为 NVIDIA 虚拟 GPU 软件文档 中您所选虚拟机管理程序的发行说明中对此进行了说明。
tsanie
337 天前
用的 vgpu_unlock-rs 吗?试试创建 /etc/vgpu_unlock/profile_override.toml

[profile.nvidia-259]
frl_enabled = 0

括号里根据使用的 mdev 类型修改。
tsanie
337 天前
我开了 144Hz ,但是 ufotest 只能到差不多 124 左右,我是 2070 分了两个 nvidia-259 ,一个给黑裙一个给 windows ,可能性能受限吧。

chenkx
337 天前
@sunbroke
@tsanie
刚才根据你们的提示找到了相关教程 https://gitlab.com/polloloco/vgpu-proxmox#vgpu-overrides ,确实是 frl 的问题,关闭 frl 后能跑 126 fps 。非常感谢!

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1000280

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX