Choose a VM size and image for compute nodes in an Azure Batch pool

When you select a node size for an Azure Batch pool, you can choose from among almost all the VM sizes available in Azure. Azure offers a range of sizes for Linux and Windows VMs for different workloads.

Supported VM series and sizes

There are a few exceptions and limitations to choosing a VM size for your Batch pool:

  • Some VM series or VM sizes are not supported in Batch.
  • Some VM sizes are restricted and need to be specifically enabled before they can be allocated.

Pools in Virtual Machine configuration

Batch pools in the Virtual Machine configuration support almost all VM sizes. See the following table to learn more about supported sizes and restrictions.

VM series Supported sizes
Basic A All sizes except Basic_A0 (A0)
A All sizes except Standard_A0
Av2 All sizes
B Not supported
DC Not supported
Dv2, DSv2 All sizes
Dv3, Dsv3 All sizes
Dav41 All sizes
Dasv41 All sizes
Ddv4, Ddsv4 All sizes
Dv4, Dsv4 Not supported
Ev3, Esv3 All sizes, except for E64is_v3
Eav41 All sizes
Easv41 All sizes
Edv4, Edsv4 All sizes
Ev4, Esv4 Not supported
F, Fs All sizes
Fsv2 All sizes
G, Gs All sizes
H All sizes
HB1 All sizes
HBv21 All sizes
HC1 All sizes
Ls All sizes
Lsv21 All sizes
M1 All sizes
Mv21,2 All sizes
NC All sizes
NCv21 All sizes
NCv31 All sizes
NCasT4_v3 None - not yet available
ND1 All sizes
NDv21 None - not yet available
NV All sizes
NVv31 All sizes
NVv41 All sizes
SAP HANA Not supported

1 These VM series can be allocated in Batch pools in Virtual Machine configuration, but you must create a new Batch account and request a specific quota increase. This limitation will be removed once vCPU quota per VM series is fully supported for Batch accounts.

2 These VM series can only be used with generation 2 VM Images.

Using Generation 2 VM Images

Some VM series, such as Mv2, can only be used with generation 2 VM images. Generation 2 VM images are specified like any VM image, using the 'sku' property of the 'imageReference' configuration; the 'sku' strings have a suffix such as "-g2" or "-gen2". To get a list of VM images supported by Batch, including generation 2 images, use the 'list supported images' API, PowerShell, or Azure CLI.

Pools in Cloud Service configuration

Batch pools in the Cloud Service configuration support all VM sizes for Cloud Services except for the following:

VM series Unsupported sizes
A-series Extra small
Av2-series Standard_A1_v2, Standard_A2_v2, Standard_A2m_v2

Size considerations

  • Application requirements - Consider the characteristics and requirements of the application you'll run on the nodes. Aspects like whether the application is multithreaded and how much memory it consumes can help determine the most suitable and cost-effective node size. For multi-instance MPI workloads or CUDA applications, consider specialized HPC or GPU-enabled VM sizes, respectively. For more information, see Use RDMA-capable or GPU-enabled instances in Batch pools.

  • Tasks per node - It's typical to select a node size assuming one task runs on a node at a time. However, it might be advantageous to have multiple tasks (and therefore multiple application instances) run in parallel on compute nodes during job execution. In this case, it is common to choose a multicore node size to accommodate the increased demand of parallel task execution.

  • Load levels for different tasks - All of the nodes in a pool are the same size. If you intend to run applications with differing system requirements and/or load levels, we recommend that you use separate pools.

  • Region availability - A VM series or size might not be available in the regions where you create your Batch accounts. To check that a size is available, see Products available by region.

  • Quotas - The cores quotas in your Batch account can limit the number of nodes of a given size you can add to a Batch pool. When needed, you can request a quota increase.

  • Pool configuration - In general, you have more VM size options when you create a pool in the Virtual Machine configuration, compared with the Cloud Service configuration.

Supported VM images

Use one of the following APIs to return a list of Windows and Linux VM images currently supported by Batch, including the node agent SKU IDs for each image:

Next steps