cancel
Showing results for 
Search instead for 
Did you mean: 

How-to and best practices for Admins switching to NVv4 instances

george_watkins
1 0 3,283

Microsoft Azure® NVv4 Instance type

Microsoft Azure’s NVv4-series introduces for the first-time virtual machines with fractional (shared) GPUs. This makes it possible to provision appropriately sized virtual machines for various GPU accelerated graphics applications and virtual desktops. Sizes start at 1/8th of a GPU with 2 GiB frame buffer to a full GPU with 16 GiB frame buffer. The NVv4 virtual machines from Microsoft Azure are powered by AMD Radeon Instinct MI25 GPUs and AMD EPYC 7002 series CPUs. The NVv4 virtual machines currently support Windows guest operating system.

ACU: 230-260
Premium Storage: Supported
Premium Storage caching: Supported
Live Migration: Not Supported
Memory Preserving Updates: Not Supported
VM Generation Support: Generation 1 and 2
Accelerated Networking: Supported
Ephemeral OS Disks: Supported

TABLE 1

Size

vCPU

Memory: GiB

Temp storage (SSD) GiB

GPU

GPU memory: GiB

Max data disks

Max NICs / Expected network bandwidth (MBps)

Standard_NV4as_v4

4

14

88

1/8

2

4

2 / 1000

Standard_NV8as_v4

8

28

176

1/4

4

8

4 / 2000

Standard_NV16as_v4

16

56

352

1/2

8

16

8 / 4000

Standard_NV32as_v4

32

112

704

1

16

32

8 / 8000

1 NVv4-series VMs feature AMD Simultaneous multithreading Technology

  

Prerequisites for changing from NV6 to NVv4

  1. Validate that you have Microsoft Azure quota for NVv4 in your selected region, and verify that NVv4 is available in your selected region. If you do not see quota available for NVv4, then depending on the terms of your support agreement with Azure, contact either your partner or Azure to create a support ticket and get access.

 

  1. Supported operating systems for NVv4:
  • Windows® 10 Enterprise multi-session build 1909
  • Windows® 10 Build 1909
  • Windows® Server® 2016
  • Windows® Server® 2019

 

  1. Go to the Azure Portal https://portal.azure.com/ Identify and find your virtual machine that is currently running NV6, which you would like to change to NVv4.

 

Shutdown the identified NV6 virtual machine.

Validate its status is labeled “deallocated.”    

 

Change virtual machine NV6 size to NVv4

  1.          Identify the machine whose size you want to change to NVv4
  2.          Confirm its current “Size” is “Standard NV6”    
  3.          Click on the “Size” to change the virtual machine

 1.png

  1.          Click the “Size” button, under settings, at the left of the display
  2.          This will open a search box. Search for the “NV” to find the AMD powered NVv4 sizes.
  3.          Alternately, simply find AMD powered NVv4 by clicking

 

2.png

NOTE: If you cannot see "N-series" listed under VM Size, you can search for it by typing NV in the search field. Be aware, however, that it is not available for your subscription. This may be the case if it is a sponsored subscription. Ask Microsoft Help if you don’t see the NVv4 instances to get access.

 

Once you’ve found the N-Series, choose the NVv4 size you want to convert your VM to. The options are:      

  • NV4as_v4
  • NV8as_v4
  • NV16as_v4
  • NV32as_v4

3.png

 

When you click on one of the NVv4 instances, it will be highlighted as shown in the image,  below. That confirms that you have chosen the size. Click on the button “Resize” to apply your selection.

4.png

The Azure portal will change your machine to reflect your choice. To validate that Azure has completed changing the size of the virtual machine to NVv4, look under “Size,” as below. In this example “Nv8as_v4” was chosen and this is now reflected under the virtual machine Size as “Standard NV8as_v4”

5.png

 

NVv4 AMD GPU driver          

 To take advantage of the GPU capabilities of the new Azure NVv4 series VMs running Windows, A

6.png

MD GPU drivers must be installed. The NVv4 driver can be installed in several ways:    

 

  • with Virtual Machine extensions GUI
  • manually via RDP from inside the Virtual Machine OS      
  • via Azure Resource Manager Template
  • via PowerShell
  • via Azure CLI

 

Install NVv4 GPU driver with Virtual Machine extensions GUI

Choose the machine you would like to modify and click on the virtual machine extensions. 

 

george_watkins_0-1616175393486.png

  

 

7.png

 

9.png

10.png

You can validate the AMD EPYC CPU in "Task Manager"

 

11.png

You can also validate the AMD Radeon Instinct MI25 MxGPU

12.png

You can now start working with the AMD GPU.

 

 

Install NVv4 driver manually via RDP from inside the Virtual Machine OS    

If you choose to install AMD GPU drivers manually, the following article provides details regarding supported operating systems, drivers, as well as installation and verification steps.

Source: https://docs.microsoft.com/en-us/azure/virtual-machines/windows/n-series-amd-driver-setup  

NOTE: Only GPU drivers published by Microsoft are supported on NVv4 VMs.  Please DO NOT install GPU drivers from any other source.

 

 

Supported operating systems and drivers with NVv4

OS

  • Windows® 10 Enterprise multi-session build 1909
  • Windows® 10 Build 1909
  • Windows® Server® 2016
  • Windows® Server® 2019

Driver: 20.Q4

 

NVv4 Driver installation
**IF the Nvidia driver is already installed in virtual machine extensions, it is recommended that you remove it. This can be completed in the Azure portal

*** the screenshot below shows a virtual machine with NV6 in which the NVIDIA GPU driver is installed. This can be found under the “Extensions” in “Settings.”    

Double-click and choose “uninstall” to remove the driver.     

13.png

 

1) Connect by Remote Desktop (RDP) to NVv4-series VM.

2) If you need to uninstall a previous driver version then download the AMD cleanup utility here. Do not use the utility that comes with the previous version of the driver.

3) Confirm that you see the two items indicated in the image below under “display adapters” in Device Manager

 

14.png

4) Download and install the latest AMD NVv4 driver from: https://docs.microsoft.com/en-us/azure/virtual-machines/windows/n-series-amd-driver-setup

5) Install the AMD Azure NVv4 driver

Latest Driver: 20.Q4

 

6) Reboot the VM.

7) Confirm you can see the AMD GPU under “Device Manager.” Also check under “Programs and Features” that “AMD Software” is present, which means that the Nvv4 drivers are installed.

15.png

Open Device Manager to validate that there is no AMD GPU driver installed under "Display adapters."    

9) The window, below, shows that the AMD driver is not installed and can see the AMD GPU.

10) Under "Task manager" validate that you see the AMD EPYC CPU

 

16.png

 

11) Validate the AMD MI25 MxGPU

 

17.png

 

 

Install NVv4 driver via Azure Resource Manager Template

Source: https://docs.microsoft.com/en-us/azure/virtual-machines/extensions/hpccompute-amd-gpu-windows

 

Azure VM extensions can be deployed using Azure Resource Manager templates. Templates are ideal when deploying one or more virtual machines that require configuration post deployment.

The JSON configuration for a virtual machine extension can be nested inside the virtual machine resource, or placed at the root or top level of a Resource Manager JSON template. The placement of the JSON configuration affects the value of the resource name and type. For more information, see Set name and type for child resources.

The following example assumes the extension is nested inside the virtual machine resource. When nesting the extension resource, the JSON is placed in the "resources": [] object of the virtual machine.

{

  "name": "myExtensionName",

  "type": "extensions",

  "location": "[resourceGroup().location]",

  "apiVersion": "2015-06-15",

  "dependsOn": [

    "[concat('Microsoft.Compute/virtualMachines/', myVM)]"

  ],

  "properties": {

    "publisher": "Microsoft.HpcCompute",

    "type": "AmdGpuDriverWindows",

    "typeHandlerVersion": "1.0",

    "autoUpgradeMinorVersion": true,

    "settings": {

    }

  }

}

Install NVv4 driver via PowerShell

Source: https://docs.microsoft.com/en-us/azure/virtual-machines/extensions/hpccompute-amd-gpu-windows

 

Powershell

Set-AzVMExtension

    -ResourceGroupName "myResourceGroup" `

    -VMName "myVM" `

    -Location "southcentralus" `

    -Publisher "Microsoft.HpcCompute" `

    -ExtensionName "AmdGpuDriverWindows" `

    -ExtensionType "AmdGpuDriverWindows" `

    -TypeHandlerVersion 1.0 `

    -SettingString '{ `

                    }'

 

Install NVv4 driver via Azure CLI

Source: https://docs.microsoft.com/en-us/azure/virtual-machines/extensions/hpccompute-amd-gpu-windows

 

Azure CLI

 

az vm extension set `

  --resource-group myResourceGroup `

  --vm-name myVM `

  --name AmdGpuDriverWindows `

  --publisher Microsoft.HpcCompute `

  --version 1.0 `

  --settings '{ `

  }'

 

GPO for NVv4

 

The following group policy (GPO) is recommended) for hardware acceleration. This is      required to ensure that protocols such as RDP and other remoting solutions see the GPU.

 

Group Policy can be configured locally in the virtual machine or via a domain policy.

 

The recommended configuration is:

 

Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Remote Session Environment.

 

  • Use hardware graphics adapters for all Remote Desktop Services session
    • Enable this policy
  • Configure H.264/AVC hardware encoding for Remote Desktop connections
    • Enable this policy
  • Prioritize H.264/AVC 444 Graphics mode for Remote Desktop connections
    • Enable this policy

 

Note:

If you use build 1903/1909 then you may need to update the following group policy for optimal performance. These changes are not needed for any other Windows builds.

[Computer Configuration->Policies->Windows Settings->Administrative Templates->Windows Components->Remote Desktop Services->Remote Desktop Session Host->Remote Session Environment], set the Policy [Use WDDM graphics display driver for Remote Desktop Connections] to Disabled.

The information contained herein is for informational purposes only, and is subject to change without notice. While every precaution has been taken in the preparation of this document, it may contain technical inaccuracies, omissions and typographical errors, and AMD is under no obligation to update or otherwise correct this information. Advanced Micro Devices, Inc. makes no representations or warranties with respect to the accuracy or completeness of the contents of this document, and assumes no liability of any kind, including the implied warranties of noninfringement, merchantability or fitness for particular purposes, with respect to the operation or use of AMD hardware, software or other products described herein. No license, including implied or arising by estoppel, to any intellectual property rights is granted by this document. Terms and limitations applicable to the purchase or use of AMD’s products are as set forth in a signed agreement between the parties or in AMD's Standard Terms and Conditions of Sale.