因此,大多数人都知道,当您使用 RDP 连接到桌面时,它会禁用显卡并使用通用 CUDA。
我不希望 Windows 恢复使用 CUDA 而不是显卡。我的电脑里有 GTX 780ti,但 RDP 没有使用它。有什么方法可以强制 Windows 使用硬件显卡吗?
我尝试过 TightVNC、RealVNC 和 LogMeIn,但我想使用 RDP,因为它最快并且对我来说效果最好。
答案1
首先,你搞混了术语。CUDA 是 NVIDIA 的一种技术,用于编程其 GPU(以及其他东西,但这是最简单的描述)。
微软的 RDP 使用自己的图形驱动程序,将呈现的屏幕转换为网络数据包发送到客户端。
这是 RDP 工作方式的核心,您无法更改它。
在服务器上,RDP 使用自己的视频驱动程序来渲染显示输出,方法是使用 RDP 协议将渲染信息构建到网络数据包中,并通过网络将其发送到客户端。在客户端,RDP 接收渲染数据并将数据包解释为相应的 Microsoft Windows 图形设备接口 (GDI) API 调用。
来源:http://msdn.microsoft.com/en-us/library/aa383015(v=vs.85).aspx
答案2
上述答案中的所有内容都是正确的,除了“这是 RDP 工作方式的核心,您无法更改它”。永不言败。
有两种方法可以通过 RDP 使用更好的图形驱动程序,而无需第三方缓慢滞后的软件,也无需修改任何 Windows DLL。
(超级难)在物理主机上安装 Windows Server 2012 R2。然后使用 Hyper V 创建虚拟桌面环境并将您的操作系统安装为其中一个虚拟桌面。安装并配置远程桌面服务的服务器角色。然后,您将能够向服务器上运行的虚拟机添加虚拟化 GPU。当您通过 RDP 连接到这些机器时,它们将使用 RemoteFX。RemoteFX 能够进行 3D 渲染和 DX11。
(中等难度)在物理主机上安装 Windows Server 2008 R2。安装远程桌面服务的服务器角色。安装后,有一个注册表设置,可让您将物理 GPU 渲染传递给 RDP 用户。如果您愿意,还有一个允许您使用名为 RemoteFX 的 vGPU 的设置。是的,您甚至可以运行没有物理 GPU 的服务器。此方法仅适用于 Windows Server 2008 R2。
RDP 代表远程桌面协议。它只是一个逐步的过程,说明如何将图像、声音和控制变量分解为要发送的网络数据包帧。RDP 与渲染或硬件加速无关。如果您在“RDP”进入机器后立即查看事件查看器,您可以找到 Windows 最初为本地机器加载图形驱动程序的位置,然后立即禁用这些驱动程序并加载默认的可怕驱动程序。
答案3
RDP 主机上的众多 RDP 组策略设置之一(Computer configuration \ Administrative Templates \ Windows Components \ Remote Desktop Services \ Remote Desktop Session Host \ Remote Session Environment
):
(来自 W10 Enterprise 1809)
直接注册键启用(REG_DWORD):HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services\bEnumerateHWBeforeSW = 1
但它在现实生活中如何发挥作用呢?
测试规格:
- 主机服务器:具有 GPU 直通功能的 openSUSE KVM/QEMU 虚拟机管理程序
- 虚拟机:Win10 Enterprise 1809
- 视频:mp4 文件,2K 分辨率,在 WM 中的 VLC 中播放
检测结果:
RDP 硬件渲染(在 Win10 VM RDP 主机中):
测试评论:
声音和视频似乎播放正常,RDP 会话中没有缺少或丢失帧。很有趣的是,VLC 使用的 CPU 使用率低于 1%!
KVM 主机上的整体系统功耗:30-35 瓦。不播放视频时功耗约为 20-25 瓦(是的,功耗很低,但请相信我,这是真的!)。
RDP-软件渲染(在 Win10 VM RDP 主机中):
测试评论:
GPU 根本没有使用,很高兴看到理论和实践相匹配。CPU 的使用率为 100%,主要用于 VLC 进程。当视频开始播放时,视频需要更长的时间来“初始化”...前几秒钟我有很多缺失/丢失的帧,但最终它开始播放正常,包括声音。但 Win10 很慢。由于 CPU 使用率为 100%,您无法做任何其他事情,例如办公室工作。我预计服务器上的其他 RDP 会话也将毫无用处。
整体系统瓦数使用量:40-45 瓦,因此使用硬件渲染确实可以实现更好的功耗。
关于我的设置的其他一般评论:
Nvidia Geforce GT 1030 是低配置 PCIe 显示适配器,因此它适合我的 2U 服务器并使用被动散热器,并且功耗相当低。较新的能够直通 GeForce GT 520!内置的英特尔 GPU 无法在我的主板上用作直通。不知道如果您在裸机上直接安装 Windows 主机是否可以启用硬件渲染,我想是的(除非您使用一些 3D 密集型软件,否则可能比 AMD/Nvidia GPU 设备更可取)。当我在 GFXBench 中进行 3D 基准测试时,即使禁用了 RDP 硬件渲染,3D 渲染也会解析到 GPU。所以它似乎仅适用于 2D/视频(?)