Accelerate windows remote desktop nvidia


NVIDIA DesignWorks is a collection of products for building GPU-accelerated Professional Visualization applications. It includes Software Development Kits, libraries, samples for Render, Video and Display solutions. These products enable developers, researchers and scientists across industries to benefit from the thousands of computing cores on modern GPUs along with the power of dedicated hardware units for accelerated Video processing.

DesignWorks is ideally suited for developers in:

Accelerate Windows Remote Desktop

Game developers and content creators all over the world are working from home and asking us to help them use Windows Remote Desktop streaming with the tools they use.
We’ve created a special tool for GeForce GPUs to accelerate Windows Remote Desktop streaming with GeForce drivers R440 or later.

Download and launch the executable as administrator on the Windows Desktop where your OpenGL application will run. A dialog will confirm that OpenGL acceleration is enabled and if a reboot is required.

Platforms and Technologies


From video on demand to advanced ray-tracing, DesignWorks SDKs enable you to leverage the maximum performance from your GPU delivering groundbreaking results.


We are constantly advancing visualization by developing new technologies that leverage the most advanced GPU architectures and compute languages.

Our technologies are deployed on platforms from mobile to laptops to supercomputers powering the cloud.

Get Started With Hands-On Training

The NVIDIA Deep Learning Institute (DLI) offers hands-on training for developers, data scientists, and researchers in AI and accelerated computing. Start your hands-on training in AI for Digital Content Creation with self-paced courses in Computer Vision, CUDA/C++, and CUDA Python. Plus, check out two-hour electives on Deep Learning for Digital Content Creation and Game Development.

Partner Ecosystem

Join the NVIDIA Developer Program

Get access to the latest software releases and tools and receive notifications and invites to join special developer events, early access programs and educational webinars. The program is free-to-join and open to all developers.


Использование графического процессора GPU при работе через удалённое подключение RDP к Windows 10 \ Windows Server

Сейчас многие сотрудники компаний перешли на удалённый режим работы и используют удалённый рабочий стол (Windows Remote Desktop) для подключения к рабочей машине и доступа к программному обеспечению, в том числе ArcGIS.

Не секрет, что для оптимальной работы ArcGIS Pro необходим графический процессор и выделенная видеопамять, тем более если необходимо работать с 3D. Ознакомиться с системными требованиями и проверить свой компьютер на их соответствие можно на страничке

Однако работа с ArcGIS Pro или другим ПО, использующим графический процессор, через удалённый рабочий стол будет затруднено по причине того, что Microsoft Windows Remote Desktop по умолчанию не использует возможности графического процессора для рендеринга. Что приводит к ошибкам при попытке инициализировать драйверы отображения DirectX или OpenGL, и низкой производительности (медленная перерисовка меню, карт и т.д.).

Эту проблему можно легко исправить, изменив групповую политику на рабочей машине (где запускается программа) чтобы разрешить использование графического процессора и нативной поддержки DirectX 11 / OpenGL 3+ во время сеанса удаленного рабочего стола (необходимы права администратора).

Для этого необходимо выполнить следующие действия (Windows Server 2016 / Windows 10 RDP):

Эта процедура активирует поддержку DirectX/OpenGL и графический процессор через RDP. Можно убедиться в этом, запустив ArcGIS Pro, открыв карту, а затем нажав Shift + E, это отобразит информацию о используемом рендеринге в текущем сеансе ArcGIS Pro.



Плюс пару дополнений.

Статья написана с использованием следующих материалов:

По рекомендации наших читателей дополнили статью материалами как другие известные системы поддерживают удалённую работу с приложениями, интенсивно использующими GPU.

Читайте также:  Windows 10 переход на другую версию

У Citrix есть решение для использования GPU при удалённом доступе к физическим машинам, так и виртуальным. А так же профессиональное решение для виртуализации ПО для работы с 3D с использованием NVIDIA GRID.

NVIDIA предлагает использовать своё решение для виртуализации программного обеспечения интенсивно использующего графический процессор, как для отображения так и расчётов Quadro vDWS. Для пользователей Esri подготовлен отдельных документ с информацией о том, как развернуть рабочую станцию виртуального центра обработки данных NVIDIA Quadro с поддержкой ArcGIS Pro.


Configure graphics processing unit (GPU) acceleration for Windows Virtual Desktop

This content applies to Windows Virtual Desktop with Azure Resource Manager Windows Virtual Desktop objects. If you’re using Windows Virtual Desktop (classic) without Azure Resource Manager objects, see this article.

Windows Virtual Desktop supports GPU-accelerated rendering and encoding for improved app performance and scalability. GPU acceleration is particularly crucial for graphics-intensive apps.

Follow the instructions in this article to create a GPU optimized Azure virtual machine, add it to your host pool, and configure it to use GPU acceleration for rendering and encoding. This article assumes you already have a Windows Virtual Desktop tenant configured.

Select an appropriate GPU optimized Azure virtual machine size

Select one of Azure’s NV-series, NVv3-series, or NVv4-series VM sizes. These are tailored for app and desktop virtualization and enable most apps and the Windows user interface to be GPU accelerated. The right choice for your host pool depends on a number of factors, including your particular app workloads, desired quality of user experience, and cost. In general, larger and more capable GPUs offer a better user experience at a given user density, while smaller and fractional-GPU sizes allow more fine-grained control over cost and quality.

Azure’s NC, NCv2, NCv3, ND, and NDv2 series VMs are generally not appropriate for Windows Virtual Desktop session hosts. These VMs are tailored for specialized, high-performance compute or machine learning tools, such as those built with NVIDIA CUDA. They do not support GPU acceleration for most apps or the Windows user interface.

Create a host pool, provision your virtual machine, and configure an app group

Create a new host pool using a VM of the size you selected. For instructions, see Tutorial: Create a host pool with the Azure portal.

Windows Virtual Desktop supports GPU-accelerated rendering and encoding in the following operating systems:

You must also configure an app group, or use the default desktop app group (named «Desktop Application Group») that’s automatically created when you create a new host pool. For instructions, see Tutorial: Manage app groups for Windows Virtual Desktop.

Install supported graphics drivers in your virtual machine

To take advantage of the GPU capabilities of Azure N-series VMs in Windows Virtual Desktop, you must install the appropriate graphics drivers. Follow the instructions at Supported operating systems and drivers to install drivers. Only drivers distributed by Azure are supported.

After driver installation, a VM restart is required. Use the verification steps in the above instructions to confirm that graphics drivers were successfully installed.

Configure GPU-accelerated app rendering

By default, apps and desktops running in multi-session configurations are rendered with the CPU and do not leverage available GPUs for rendering. Configure Group Policy for the session host to enable GPU-accelerated rendering:

Configure GPU-accelerated frame encoding

Remote Desktop encodes all graphics rendered by apps and desktops (whether rendered with GPU or with CPU) for transmission to Remote Desktop clients. When part of the screen is frequently updated, this part of the screen is encoded with a video codec (H.264/AVC). By default, Remote Desktop does not leverage available GPUs for this encoding. Configure Group Policy for the session host to enable GPU-accelerated frame encoding. Continuing the steps above:

GPU-accelerated frame encoding is not available in NVv4-series VMs.

Select policy Configure H.264/AVC hardware encoding for Remote Desktop connections and set this policy to Enabled to enable hardware encoding for AVC/H.264 in the remote session.

In Windows Server 2016, set option Prefer AVC Hardware Encoding to Always attempt.

Now that the group policies have been edited, force a group policy update. Open the Command Prompt and type:

Sign out from the Remote Desktop session.

Configure fullscreen video encoding

If you often use applications that produce a high-frame rate content, such as 3D modeling, CAD/CAM and video applications, you may choose to enable a fullscreen video encoding for a remote session. Fullscreen video profile provides a higher frame rate and better user experience for such applications at expense of network bandwidth and both session host and client resources. It is recommended to use GPU-accelerated frame encoding for a full-screen video encoding. Configure Group Policy for the session host to enable fullscreen video encoding. Continuing the steps above:

Читайте также:  Windows spy disabler windows 10

Select policy Prioritize H.264/AVC 444 Graphics mode for Remote Desktop connections and set this policy to Enabled to force H.264/AVC 444 codec in the remote session.

Now that the group policies have been edited, force a group policy update. Open the Command Prompt and type:

Sign out from the Remote Desktop session.

Verify GPU-accelerated app rendering

To verify that apps are using the GPU for rendering, try any of the following:

Verify GPU-accelerated frame encoding

To verify that Remote Desktop is using GPU-accelerated encoding:

Verify fullscreen video encoding

To verify that Remote Desktop is using fullscreen video encoding:

Next steps

These instructions should have you up and running with GPU acceleration on one session host (one VM). Some additional considerations for enabling GPU acceleration across a larger host pool:


Видеокарта удаленного рабочего стола

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

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

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

2 ответов

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

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

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

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

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

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

(средний жесткий) установите windows server 2008 r2 на физическом узле. Установить роль сервера служб удаленных рабочих столов. При этом установлен есть параметр реестра, который позволит чтобы передать отрисовку физического GPU пользователям RDP. Существует также один, который позволяет использовать vGPU под названием RemoteFX, если вы хотите. Да, вы даже можете запустить сервер без физического GPU. Этот метод работает только в windows server 2008 R2.

RDP означает протокол удаленного рабочего стола. Это-просто пошаговая процедура о том, как сломать изображение, звук и переменные управления в кадры сетевого пакета для передачи. RDP не имеет ничего общего с рендерингом или оборудованием ускорение. Если вы посмотрите на свой просмотрщик событий сразу после того, как вы» RDP » в машину, вы можете найти, где windows первоначально загружает графические драйверы для вашей локальной машины, а затем сразу после этого отключает их и загружает ужасный дайвер по умолчанию.


Проброс бытовой видеокарты. RDP. Samsung DeX. Альтернативы?

Добрый вечер.
Домашний сервер для двух виртуалок.

Хотелось бы задать конкретный и точный вопрос, но. Но чтобы правильно задать вопрос надо знать большую половину ответа.

Как всегда бывает, реальность внесла свои коррективы.
1. По работе нужен exel. Не андройдовский. И не либрэ офис и прочие аналоги. А именно родной, виндовый. Финансисты поймут.
2. Photoshop. И тут уж без заменителей.
3. Adobe premier. А с покупкой сыну нового dji magic, кодек нужен h.265

Читайте также:  Windows connection manager service

Выход прост. Удалённый компьютер. Но опять не без засады. Нормально в Samsung DeX оптимизирован только RDP.

Ну RDP так RDP. Настроили, поехали. Упс. А чего это видео тормозит? Вроде канал же хороший? Гуглим. Ясно, это вопрос RDP, ну не для того он. Надо remotefx. А. Он на виртуалках только.

Ставим windows server 2016. Ставим две виртуалки. А их нужно именно две. Себе и жене для photoshop. На виртуалки ставим windows 10 ent.
Фиг. Надо подбрасывать видеокарты. И не какие-нибудь.

Находим Nvidia Grid 2. Б/у не так дорого. Как это чип устаревший и не поддерживает кодирование H.265? А сколько стоит не устаревший? Не, мне одну карту а не 10. Это цена за одну? Мдя.

Собственно вопрос:
1. Можно ли приобросить в виртуалку бытовую видеокарту и чтобы в виртуалку работали все технологии нужные для «ускорения» RDP и использования видеокарты внутри виртуалки? Был ли опыт?
2. А можно ли как-нибудь ускорить RDP не на виртуалке? Причем тогда, чтобы два раза не вставать: две одновременные сессии на window 10 (на server много софта не работает нужного). Это вроде возможно, но как оно работает? Буду рад мнениям. Спасибо.

3. Я работаю подключив к хосту клаву + мышь, + организую вывод картинки на монитор подключенный к проброшенной видеокарте. Т.е. сижу за хостом. У Вас приоритет стрим, т.е. нужен софт который его обеспечит, а вот проброс лучше делать через линукс + kvm+qemu/xen или proxmox, который опять же базируется на debian + KVM. На ВМ ставите Винду и наступает Счастье )

что касается проброса звука в proxmox, это либо внешняя звуковая с пробросом usb контроллера на котором она висит, либо проброс интегрированной, но если она входит в пулл устройств, то они при каждом запуске ВМ будут пропадать для хоста, тут либо забить, либо пересобирать ядро линукса с туманными перспективами.

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

или снимать звук с hdmi/display port, т.к. звук видюхи прокидывается без проблем

CityCat4, написал короткое письмо на почту. Если что, то можно будет обсудить в голосе, говорят роуминг мобильные операторы отменили.

Можно и видос. хотя у мя общаться на микрофон получается нудно 🙁 писать или в диалоге оно всегда проще, но в принципе могу выложить, через неделю, т.к. сейчас ремонт, видос без комментариев как оно все работает. Все настройки в гайде на хабре

покупать за 300к карту для того, что делает карта за 15

Письмо видел. Ответил с настоящего адреса.

Задача стояла подобная.

Стал рассматривать варианты вне Windows.

Решения в этом ключе есть у Citrix и VMWare. Первое дешевле второго. Там вот как все устроено. Главное, что Nvidia для них не блочит (но не помню для всех ли карт или опять же только для QUADRO, GRIDa, TESLA) Как оно работает: По аналогии с опробованным вами вариантом, ставите их сервера вместо Window Server, ставите Win-vm, пробрасывате видеокарту и вместе с их родными тонкими клиентами (не RDP) получаете заветное 3D ускорение. Если я не ошибаюсь, они перехватывают изображение передаваемое с видеокарты и передают попиксельные изменения по сети. Получается почти тот же vnc, но более оптимизированное с точки зрения картинки и скорости взаимодействия (кажется, все стриминговые сервисы сейчас тоже пошли по этому пути).

Есть хорошие новости о vGPU. RedHat заявила о поддержке этой технологии в своей последней версии ОС. Последний ProxMox поддерживает vGPU и я вижу народ уже пробует ее во всю с профессиональными картами Nvidia. Может посмотреть вам в эту сторону?

Я в свою очередь сейчас реализовал вот что. Эта новая технология называется looking-glass. Она позволяет запускать Windows-vm локально на Linux с проброшенной видео-картой и получать картинку в окне Linux-машины без потерь 3D.
Там не используется ни rdp/vnc/spice или попиксельный видео-поток, там данные снимаются с видео-карты и через фрейм-буфер передаются на Linux-host. То есть в своем первоначальном виде, без изменений. Подобно тому, как они бы передались на второй монитор в режиме заркала. Латентности (задержки) нет. На глаз нет.


Поделиться с друзьями
Советы экспертов и специалистов