Графическая карта удаленного рабочего стола

Таким образом, как большинство людей знают, когда вы используете RDP для подключения к вашему рабочему столу, он отключает видеокарту и использует универсальный CUDA.

Я не хочу, чтобы Windows вернулась к использованию CUDA вместо графической карты. У меня есть GTX 780ti в компьютере, но он не используется RDP. Есть ли способ заставить Windows использовать аппаратную видеокарту?

Я пробовал TightVNC, RealVNC и LogMeIn, но я хочу использовать RDP, поскольку он самый быстрый и лучше всего работает для меня.

3 ответа

Решение

Во-первых, вы перепутали свои условия. CUDA - это технология NVIDIA для программирования своих графических процессоров (и других вещей, но это простейшее описание).

Microsoft RDP использует собственный графический драйвер, который преобразует отображаемый экран в сетевые пакеты для отправки клиенту.

Это ядро ​​того, как работает RDP, и вы не можете его изменить.

На сервере RDP использует свой собственный видеодрайвер для рендеринга вывода на экран путем построения информации рендеринга в сетевых пакетах с использованием протокола RDP и отправки их по сети клиенту. На клиенте RDP получает данные рендеринга и интерпретирует пакеты в соответствующие вызовы API интерфейса графического устройства Microsoft Windows (GDI).

Источник: http://msdn.microsoft.com/en-us/library/aa383015(v=vs.85).aspx

Все в приведенном выше ответе является правильным, за исключением "Это ядро ​​того, как работает RDP, и вы не можете его изменить". Никогда не говори никогда.

Есть два способа использовать лучший графический драйвер по сравнению с RDP без стороннего медленного программного обеспечения и без изменения каких-либо библиотек Windows.

  1. (супер сложно) Установите Windows Server 2012 r2 на физический хост. Затем с помощью Hyper V создайте среду виртуального рабочего стола и установите свою ОС в качестве одного из этих виртуальных рабочих столов. Установите и настройте роли сервера для служб удаленного рабочего стола. После этого вы сможете добавить виртуализированный графический процессор к вашим виртуальным машинам, работающим на сервере. Когда вы RDP к этим машинам, они будут использовать RemoteFX. RemoteFX способен 3D-рендеринга и DX11.

  2. (средний уровень сложности) Установите Windows Server 2008 r2 на физический хост. Установите роль сервера для служб удаленных рабочих столов. С этим установленным есть параметр реестра, который позволит вам передавать физический рендеринг GPU пользователям RDP. Также есть один, который позволяет вам использовать vGPU под названием RemoteFX, если хотите. Да, вы даже можете запустить сервер без физического графического процессора. Этот метод работает ТОЛЬКО на Windows Server 2008 R2.

RDP означает ПРОТОКОЛ удаленного рабочего стола. Это просто пошаговая процедура разбивки изображения, звука и управляющих переменных на сетевые пакеты для отправки. RDP не имеет ничего общего с рендерингом или аппаратным ускорением. Если вы посмотрите на свою программу просмотра событий сразу после того, как вы "RDP" вставили в компьютер, вы сможете найти, где Windows изначально загружает драйверы графики для вашего локального компьютера, а затем сразу же отключает их и загружает ужасного дайвера по умолчанию.

Один из многих параметров групповой политики 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

Но как это происходит в реальной жизни?

ТЕСТ-СПЕЦ:

  • Хост-сервер: гипервизор openSUSE KVM/QEMU со сквозным доступом к графическому процессору.
  • Виртуальная машина: Win10 Enterprise 1809
  • Видео: файл mp4, разрешение 2К, воспроизводится в VLC в WM.

РЕЗУЛЬТАТЫ ТЕСТА:

RDP-HARDWARE-RENDERING (на хосте RDP виртуальной машины Win10):

ТЕСТ-КОММЕНТАРИИ:

Кажется, что звук и видео воспроизводятся нормально, в сеансе RDP нет пропущенных кадров. Очень интересно видеть, что VLC использует <1% загрузки ЦП!

Общее энергопотребление системы на хосте KVM: 30–35 Вт. Потребление в режиме без воспроизведения видео составляет около 20–25 Вт (да, это мало, но поверьте мне, это правда!).

RDP-ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ-РЕНДЕРИНГ (на хосте RDP виртуальной машины Win10):

ТЕСТ-КОММЕНТАРИИ:

Графический процессор вообще не используется, приятно видеть совпадение теории и практики. И ЦП использует 100%, в основном используется процессом VLC. Когда видео начинает воспроизводиться, "инициализация" видео занимает больше времени... первые несколько секунд у меня было много отсутствующих/пропущенных кадров, но со временем оно начинает воспроизводиться нормально, в т.ч. звук. НО Win10 МЕДЛЕННАЯ. Вы не можете делать что-либо еще, например, офисную работу, из-за 100% загрузки процессора. Я ожидаю, что другие сеансы RDP на сервере тоже будут бесполезны.

Общее энергопотребление системы: 40–45 Вт, поэтому вы можете добиться лучшего энергопотребления с помощью аппаратного рендеринга.

ДОПОЛНИТЕЛЬНЫЕ ОБЩИЕ КОММЕНТАРИИ К МОЕЙ НАСТРОЙКЕ:

Nvidia Geforce GT 1030 — это низкопрофильный адаптер дисплея PCIe, поэтому он помещается в мой сервер высотой 2U, использует пассивный радиатор и имеет довольно низкое энергопотребление. Новее удалось пройти через GeForce GT 520! Встроенный графический процессор Intel нельзя использовать в качестве сквозного подключения на моем мобильном устройстве. Не знаю, можете ли вы включить аппаратный рендеринг, если вы устанавливаете хост Windows непосредственно на «голое железо», я полагаю, да (и, вероятно, это будет предпочтительнее устройства с графическим процессором AMD/Nvidia, если вы не используете какое-либо программное обеспечение, требующее 3D). Когда я проводил 3D-тестирование в GFXBench, 3D-рендеринг обрабатывался графическим процессором, даже если аппаратный рендеринг RDP был отключен. Кажется, это применимо только к 2D/видео (?)

Другие вопросы по тегам