Azure Virtual Desktop용 GPU 가속 구성

Important

이 콘텐츠는 Azure Resource Manager 개체가 포함된 Azure Virtual Desktop에 적용됩니다. Azure Resource Manager 개체 없이 Azure Virtual Desktop(클래식)을 사용하는 경우 이 문서를 참조하세요.

Azure Virtual Desktop은 향상된 앱 성능 및 확장성을 위해 GPU(그래픽 처리 장치) 가속 렌더링 및 인코딩을 지원합니다. GPU 가속은 그래픽 집약적 앱에 매우 중요하며 Azure Virtual Desktop에 대해 지원되는 모든 운영 체제와 함께 사용할 수 있습니다.

목록에는 Windows의 다중 세션 버전이 특별히 포함되지 않습니다. 그러나 NV 시리즈 Azure VM(가상 머신)의 각 GPU에는 25명의 동시 사용자를 지원하는 GRID 라이선스가 함께 제공됩니다. 자세한 내용은 NV 시리즈를 참조하세요.

이 문서에서는 GPU에 최적화된 Azure 가상 머신을 만들고, 호스트 풀에 추가하고, 렌더링 및 인코딩에 GPU 가속을 사용하는 방법을 보여줍니다.

필수 조건

이 문서에서는 이미 호스트 풀 및 애플리케이션 그룹을 만들었다고 가정합니다.

적절한 GPU 최적화 Azure VM 크기 선택

세션 호스트로 사용할 Azure의 NV 시리즈, NVv3 시리즈, NVv4 시리즈, NVadsA10 v5 시리즈 또는 NCasT4_v3 시리즈 VM 크기 중 하나를 선택합니다. 이러한 크기는 앱 및 데스크톱 가상화에 맞게 조정됩니다. 대부분의 앱과 Windows 사용자 인터페이스가 GPU를 가속화할 수 있도록 합니다.

호스트 풀에 적합한 선택은 특정 앱 워크로드, 원하는 사용자 환경의 품질 및 비용을 비롯한 다양한 요인에 따라 달라집니다. 일반적으로 GPU가 크고 성능이 좋을수록 지정된 사용자 밀도에서 더 나은 사용자 환경을 제공합니다. 더 작고 소수 자릿수의 GPU 크기를 사용하면 비용 및 품질에 대한 보다 세분화된 제어가 가능합니다.

참고 항목

NV 시리즈 VM은 사용 중지될 예정입니다. 자세한 내용은 NV 사용 중지를 참조하세요.

Azure NC, NCv2, NCv3, ND 및 NDv2 시리즈 VM은 일반적으로 Azure Virtual Desktop 세션 호스트에 적합하지 않습니다. 이러한 VM은 NVIDIA CUDA로 구축된 것과 같은 특수한 고성능 컴퓨팅 또는 기계 학습 도구에 맞게 조정되었습니다. 대다수 앱 또는 Windows 사용자 인터페이스에는 GPU 가속을 지원하지 않습니다.

가상 머신에서 지원되는 그래픽 드라이버 설치

Azure Virtual Desktop에서 Azure N 시리즈 VM의 GPU 기능을 활용하려면 적절한 그래픽 드라이버를 설치해야 합니다. 지원되는 운영 체제 및 드라이버의 지침에 따라 드라이버를 설치합니다. Azure 분산 드라이버만 지원됩니다.

이 크기별 정보를 염두에 두세요.

  • Azure NV 시리즈, NVv3 시리즈 또는 NCasT4_v3 시리즈 VM의 경우 NVIDIA GRID 드라이버만 대부분의 앱 및 Windows 사용자 인터페이스에 대한 GPU 가속을 지원합니다. NVIDIA CUDA 드라이버는 이러한 VM 크기에 대한 GPU 가속을 지원하지 않습니다.

    드라이버를 수동으로 설치하도록 선택하는 경우 GRID 드라이버를 설치해야 합니다. Azure VM 확장을 사용하여 드라이버를 설치하도록 선택하면 이러한 VM 크기에 대해 GRID 드라이버가 자동으로 설치됩니다.

  • Azure NVv4 시리즈 VM의 경우 Azure에서 제공하는 AMD 드라이버를 설치합니다. Azure VM 확장을 사용하여 자동으로 설치하거나 수동으로 설치할 수 있습니다.

드라이버를 설치한 후에는 VM을 다시 시작해야 합니다. 앞선 지침의 확인 단계에 따라 그래픽 드라이버가 성공적으로 설치되었는지 확인합니다.

GPU 가속 앱 렌더링 구성

기본적으로 Windows Server에서 실행되는 앱과 데스크톱은 CPU로 렌더링되며 렌더링에 사용 가능한 GPU를 사용하지 않습니다. 세션 호스트에 대한 그룹 정책을 구성하여 GPU 가속 렌더링을 사용하도록 설정합니다.

  1. 로컬 관리자 권한이 있는 계정을 사용하여 VM의 데스크톱에 연결합니다.
  2. 시작 메뉴를 열고 gpedit.msc를 입력하여 그룹 정책 편집기를 엽니다.
  3. 컴퓨터 구성>관리 템플릿>Windows 구성 요소>원격 데스크톱 서비스>원격 데스크톱 세션 호스트>원격 세션 환경으로 이동합니다.
  4. 모든 원격 데스크톱 서비스 세션에 하드웨어 그래픽 어댑터 사용 정책을 선택합니다. 원격 세션에서 GPU 렌더링을 사용하려면 이 정책을 사용으로 설정합니다.

GPU 가속 프레임 인코딩 구성

원격 데스크톱은 앱과 데스크톱이 원격 데스크톱 클라이언트로 전송하기 위해 렌더링하는 모든 그래픽을 인코딩합니다. 화면의 일부가 자주 업데이트되는 경우 화면의 해당 부분이 비디오 코덱(H.264/AVC)으로 인코딩됩니다. 기본적으로 원격 데스크톱은 이 인코딩에 대해 사용 가능한 GPU를 사용하지 않습니다.

세션 호스트에 대한 그룹 정책을 구성하여 GPU 가속 프레임 인코딩을 사용하도록 설정합니다. 다음 절차는 이전 단계를 계속합니다.

참고 항목

GPU 가속 프레임 인코딩은 NVv4 시리즈 VM에서 사용할 수 없습니다.

  1. 원격 데스크톱 연결에 대해 H.264/AVC 하드웨어 인코딩 구성 정책을 선택합니다. 원격 세션에서 AVC/H.264에 대한 하드웨어 인코딩을 사용하려면 이 정책을 사용으로 설정합니다.

    Windows Server 2016을 사용하는 경우 AVC 하드웨어 인코딩 우선항상 시도로 설정합니다.

  2. 이제 정책을 편집했으므로 그룹 정책 업데이트를 강제로 적용합니다. 관리자 권한으로 명령 프롬프트 창을 열고 다음 명령을 실행합니다.

    gpupdate.exe /force
    
  3. 원격 데스크톱 세션에서 로그아웃합니다.

전체 화면 비디오 인코딩 구성

참고 항목

GPU가 없는 경우에도 전체 화면 비디오 인코딩을 사용하도록 설정할 수 있습니다.

프레임 속도가 높은 콘텐츠를 생성하는 애플리케이션을 자주 사용하는 경우 원격 세션에 전체 화면 비디오 인코딩을 사용하도록 선택할 수 있습니다. 이러한 애플리케이션에는 3D 모델링, CAD/CAM 또는 비디오 애플리케이션이 포함될 수 있습니다.

전체 화면 비디오 프로필은 네트워크 대역폭과 세션 호스트 및 클라이언트 리소스를 모두 사용하여 이러한 애플리케이션에 더 높은 프레임 속도와 더 나은 사용자 경험을 제공합니다. 전체 화면 비디오 인코딩에는 GPU 가속 프레임 인코딩을 사용하는 것이 좋습니다.

세션 호스트에 대한 그룹 정책을 구성하여 전체 화면 비디오 인코딩을 사용하도록 설정합니다. 이전 단계를 계속합니다.

  1. 원격 데스크톱 연결에 대해 H.264/AVC 444 그래픽 모드에 우선 순위 지정 정책을 선택합니다. 원격 세션에서 H.264/AVC 444 코덱을 강제로 적용하려면 이 정책을 사용으로 설정합니다.

  2. 이제 정책을 편집했으므로 그룹 정책 업데이트를 강제로 적용합니다. 관리자 권한으로 명령 프롬프트 창을 열고 다음 명령을 실행합니다.

    gpupdate.exe /force
    
  3. 원격 데스크톱 세션에서 로그아웃합니다.

GPU 가속 앱 렌더링 확인

앱이 렌더링에 GPU를 사용하는지 확인하려면 다음 방법 중 하나를 시도합니다.

  • NVIDIA GPU를 사용하는 Azure VM의 경우 nvidia-smi 유틸리티를 사용하여 앱을 실행할 때 GPU 사용률을 확인합니다. 자세한 내용은 드라이버 설치 확인을 참조하세요.
  • 지원되는 운영 체제 버전에서는 작업 관리자를 사용하여 GPU 사용률을 확인할 수 있습니다. 성능 탭에서 GPU를 선택하여 앱에서 GPU를 활용하는지 확인합니다.

GPU 가속 프레임 인코딩 확인

원격 데스크톱이 GPU 가속 인코딩을 사용하는지 확인하려면 다음을 수행합니다.

  1. Azure Virtual Desktop 클라이언트를 사용하여 VM의 데스크톱에 연결합니다.
  2. 이벤트 뷰어를 열고 애플리케이션 및 서비스 로그>Microsoft>Windows>RemoteDesktopServices-RdpCoreCDV>운영 노드로 이동합니다.
  3. 이벤트 ID 170을 찾습니다. AVC 하드웨어 인코더 사용: 1이 표시되는 경우, 원격 데스크톱은 GPU 가속 인코딩을 사용합니다.

GPU 가속 테스트를 위해 Azure Virtual Desktop 외부의 세션 호스트에 연결하는 경우 로그는 대신 이벤트 뷰어 애플리케이션 및 서비스 로그>Microsoft>Windows>RemoteDesktopServices-RdpCoreTs>Operational에 저장됩니다.

전체 화면 비디오 인코딩 확인

원격 데스크톱이 전체 화면 비디오 인코딩을 사용하는지 확인하려면 다음을 수행합니다.

  1. Azure Virtual Desktop 클라이언트를 사용하여 VM의 데스크톱에 연결합니다.
  2. 이벤트 뷰어를 열고 애플리케이션 및 서비스 로그>Microsoft>Windows>RemoteDesktopServices-RdpCoreCDV>운영 노드로 이동합니다.
  3. 이벤트 ID 162를 찾습니다. AVC 사용 가능: 1 초기 프로필: 2048이 표시되는 경우, 원격 데스크톱은 전체 화면 비디오 인코딩(AVC 444)을 사용합니다.

GPU 가속 테스트를 위해 Azure Virtual Desktop 외부의 세션 호스트에 연결하는 경우 로그는 대신 이벤트 뷰어 애플리케이션 및 서비스 로그>Microsoft>Windows>RemoteDesktopServices-RdpCoreTs>Operational에 저장됩니다.

다음 단계

이러한 지침을 따르면 하나의 세션 호스트(하나의 VM)에서 GPU 가속을 실행할 수 있습니다. 더 큰 호스트 풀에서 GPU 가속을 사용하기 위한 몇 가지 추가 고려 사항은 다음과 같습니다.

  • VM 확장을 사용하여 여러 VM에서 드라이버 설치 및 업데이트를 간소화하는 것이 좋습니다. NVIDIA GPU를 사용하는 VM의 경우 NVIDIA GPU 드라이버 확장을 사용합니다. AMD GPU를 사용하는 VM의 경우 AMD GPU 드라이버 확장을 사용합니다.
  • 여러 VM에서 그룹 정책 구성을 간소화하기 위해서는 Active Directory를 사용하는 것이 좋습니다. Active Directory 도메인에 그룹 정책을 배포하는 방법에 대한 자세한 내용은 그룹 정책 개체로 작업하기를 참조하세요.