Skip to content

Commit a2dd28b

Browse files
authored
Merge pull request #229496 from Padmalathas/Padmalathas-patch-1
Refactoring abandoned TOC
2 parents c97139b + 0ba367b commit a2dd28b

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

44 files changed

+178
-158
lines changed

articles/virtual-machines/.openpublishing.redirection.virtual-machines.json

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4918,6 +4918,46 @@
49184918
"source_path_from_root": "/articles/virtual-machines/linux/azure-hybrid-benefit-byos-linux.md",
49194919
"redirect_url": "/azure/virtual-machines/linux/azure-hybrid-benefit-linux/",
49204920
"redirect_document_id": false
4921+
},
4922+
{
4923+
"source_path_from_root": "/articles/virtual-machines/workloads/hpc/hb-series-overview.md",
4924+
"redirect_url": "/azure/virtual-machines/hb-series-overview",
4925+
"redirect_document_id": false
4926+
},
4927+
{
4928+
"source_path_from_root": "/articles/virtual-machines/workloads/hpc/hb-series-performance.md",
4929+
"redirect_url": "/azure/virtual-machines/hb-series-performance",
4930+
"redirect_document_id": false
4931+
},
4932+
{
4933+
"source_path_from_root": "/articles/virtual-machines/workloads/hpc/hbv2-performance.md",
4934+
"redirect_url": "/azure/virtual-machines/hbv2-performance",
4935+
"redirect_document_id": false
4936+
},
4937+
{
4938+
"source_path_from_root": "/articles/virtual-machines/workloads/hpc/hbv2-series-overview.md",
4939+
"redirect_url": "/azure/virtual-machines/hbv2-series-overview",
4940+
"redirect_document_id": false
4941+
},
4942+
{
4943+
"source_path_from_root": "/articles/virtual-machines/workloads/hpc/hbv3-performance.md",
4944+
"redirect_url": "/azure/virtual-machines/hbv3-performance",
4945+
"redirect_document_id": false
4946+
},
4947+
{
4948+
"source_path_from_root": "/articles/virtual-machines/workloads/hpc/hbv3-series-overview.md",
4949+
"redirect_url": "/azure/virtual-machines/hbv3-series-overview",
4950+
"redirect_document_id": false
4951+
},
4952+
{
4953+
"source_path_from_root": "/articles/virtual-machines/workloads/hpc/hc-series-overview.md",
4954+
"redirect_url": "/azure/virtual-machines/hc-series-overview",
4955+
"redirect_document_id": false
4956+
},
4957+
{
4958+
"source_path_from_root": "/articles/virtual-machines/workloads/hpc/hc-series-performance.md",
4959+
"redirect_url": "/azure/virtual-machines/hc-series-performance",
4960+
"redirect_document_id": false
49214961
}
49224962
]
49234963
}

articles/virtual-machines/TOC.yml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -339,36 +339,36 @@
339339
href: hb-series.md
340340
items:
341341
- name: Overview
342-
href: ./workloads/hpc/hb-series-overview.md
342+
href: hb-series-overview.md
343343
- name: Performance
344-
href: ./workloads/hpc/hb-series-performance.md
344+
href: hb-series-performance.md
345345
- name: HB-series retirement
346346
href: hb-series-retirement.md
347347
- name: HBv2-series
348348
href: hbv2-series.md
349349
items:
350350
- name: Overview
351-
href: ./workloads/hpc/hbv2-series-overview.md
351+
href: hbv2-series-overview.md
352352
- name: Performance
353-
href: ./workloads/hpc/hbv2-performance.md
353+
href: hbv2-performance.md
354354
- name: HBv3-series
355355
items:
356356
- name: Overview
357-
href: ./workloads/hpc/hbv3-series-overview.md
357+
href: hbv3-series-overview.md
358358
- name: HBv3-series
359359
href: hbv3-series.md
360360
- name: Performance
361-
href: ./workloads/hpc/hbv3-performance.md
361+
href: hbv3-performance.md
362362
- name: HBv4-series
363363
href: hbv4-series.md
364364
- name: HC-series
365365
items:
366366
- name: Overview
367-
href: ./workloads/hpc/hc-series-overview.md
367+
href: hc-series-overview.md
368368
- name: HC-series
369369
href: hc-series.md
370370
- name: Performance
371-
href: ./workloads/hpc/hc-series-performance.md
371+
href: hc-series-performance.md
372372
- name: HX-series
373373
href: hx-series.md
374374
- name: Previous generations

articles/virtual-machines/workloads/hpc/hb-series-overview.md renamed to articles/virtual-machines/hb-series-overview.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Learn about the preview support for the HB-series VM size in Azure.
44
ms.service: virtual-machines
55
ms.subservice: hpc
66
ms.topic: article
7-
ms.date: 08/19/2020
7+
ms.date: 03/04/2023
88
ms.reviewer: cynthn
99
ms.author: mamccrea
1010
author: mamccrea
@@ -16,7 +16,7 @@ author: mamccrea
1616

1717
Maximizing high performance compute (HPC) application performance on AMD EPYC requires a thoughtful approach memory locality and process placement. Below we outline the AMD EPYC architecture and our implementation of it on Azure for HPC applications. We will use the term “pNUMA” to refer to a physical NUMA domain, and “vNUMA” to refer to a virtualized NUMA domain.
1818

19-
Physically, an [HB-series](../../hb-series.md) server is 2 * 32-core EPYC 7551 CPUs for a total of 64 physical cores. These 64 cores are divided into 16 pNUMA domains (8 per socket), each of which is four cores and known as a “CPU Complex” (or “CCX”). Each CCX has its own L3 cache, which is how an OS will see a pNUMA/vNUMA boundary. A pair of adjacent CCXs shares access to two channels of physical DRAM (32 GB of DRAM in HB-series servers).
19+
Physically, an [HB-series](hb-series.md) server is 2 * 32-core EPYC 7551 CPUs for a total of 64 physical cores. These 64 cores are divided into 16 pNUMA domains (8 per socket), each of which is four cores and known as a “CPU Complex” (or “CCX”). Each CCX has its own L3 cache, which is how an OS will see a pNUMA/vNUMA boundary. A pair of adjacent CCXs shares access to two channels of physical DRAM (32 GB of DRAM in HB-series servers).
2020

2121
To provide room for the Azure hypervisor to operate without interfering with the VM, we reserve physical pNUMA domain 0 (the first CCX). We then assign pNUMA domains 1-15 (the remaining CCX units) for the VM. The VM will see:
2222

@@ -28,7 +28,7 @@ Process pinning will work on HB-series VMs because we expose the underlying sili
2828

2929
The following diagram shows the segregation of cores reserved for Azure Hypervisor and the HB-series VM.
3030

31-
![Segregation of cores reserved for Azure Hypervisor and HB-series VM](./media/architecture/hb-segregation-cores.png)
31+
![Segregation of cores reserved for Azure Hypervisor and HB-series VM](./media/hpc/architecture/hb-segregation-cores.png)
3232

3333
## Hardware specifications
3434

@@ -51,7 +51,7 @@ The following diagram shows the segregation of cores reserved for Azure Hypervis
5151
| Additional Frameworks | UCX, libfabric, PGAS |
5252
| Azure Storage Support | Standard and Premium Disks (maximum 4 disks) |
5353
| OS Support for SRIOV RDMA | CentOS/RHEL 7.6+, Ubuntu 16.04+, SLES 12 SP4+, WinServer 2016+ |
54-
| Orchestrator Support | CycleCloud, Batch, AKS; [cluster configuration options](../../sizes-hpc.md#cluster-configuration-options) |
54+
| Orchestrator Support | CycleCloud, Batch, AKS; [cluster configuration options](sizes-hpc.md#cluster-configuration-options) |
5555

5656
## Next steps
5757

articles/virtual-machines/workloads/hpc/hb-series-performance.md renamed to articles/virtual-machines/hb-series-performance.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Learn about performance testing results for HB-series VM sizes in A
44
ms.service: virtual-machines
55
ms.subservice: hpc
66
ms.topic: article
7-
ms.date: 09/09/2020
7+
ms.date: 03/04/2023
88
ms.reviewer: cynthn
99
ms.author: mamccrea
1010
author: mamccrea
@@ -33,7 +33,7 @@ MPI latency test from the OSU microbenchmark suite is run. Sample scripts are on
3333
./bin/mpirun_rsh -np 2 -hostfile ~/hostfile MV2_CPU_MAPPING=[INSERT CORE #] ./osu_latency
3434
```
3535
36-
:::image type="content" source="./media/latency-hb.png" alt-text="MPI latency on Azure HB.":::
36+
![Screenshot of MPI latency.](./media/hpc/latency-hb.png)
3737
3838
## MPI bandwidth
3939
@@ -43,7 +43,7 @@ MPI bandwidth test from the OSU microbenchmark suite is run. Sample scripts are
4343
./mvapich2-2.3.install/bin/mpirun_rsh -np 2 -hostfile ~/hostfile MV2_CPU_MAPPING=[INSERT CORE #] ./mvapich2-2.3/osu_benchmarks/mpi/pt2pt/osu_bw
4444
```
4545
46-
:::image type="content" source="./media/bandwidth-hb.png" alt-text="MPI bandwidth on Azure HB.":::
46+
![Screenshot of MPI bandwidth.](./media/hpc/bandwidth-hb.png)
4747
4848
4949
## Mellanox Perftest

articles/virtual-machines/hb-series.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Specifications for the HB-series VMs.
44
ms.service: virtual-machines
55
ms.subservice: sizes
66
ms.topic: conceptual
7-
ms.date: 12/19/2022
7+
ms.date: 03/04/2023
88
ms.reviewer: jushiman
99
---
1010

@@ -32,11 +32,11 @@ HB-series VMs feature 100 Gb/sec Mellanox EDR InfiniBand. These VMs are connecte
3232
| Standard_HB60rs | 60 | AMD EPYC 7551 | 228 | 263 | 2.0 | 2.55 | 2.55 | 100 | All | 700 | 4 | 8 |
3333

3434
Learn more about the:
35-
- [Architecture and VM topology](./workloads/hpc/hb-series-overview.md)
36-
- Supported [software stack](./workloads/hpc/hb-series-overview.md#software-specifications) including supported OS
37-
- Expected [performance](./workloads/hpc/hb-series-performance.md) of the HB-series VM
35+
- [Architecture and VM topology](hb-series-overview.md)
36+
- Supported [software stack](hb-series-overview.md#software-specifications) including supported OS
37+
- Expected [performance](hb-series-performance.md) of the HB-series VM
3838

39-
[!INCLUDE [hpc-include.md](./workloads/hpc/includes/hpc-include.md)]
39+
[!INCLUDE [hpc-include.md](./includes/hpc-include.md)]
4040

4141
[!INCLUDE [virtual-machines-common-sizes-table-defs](../../includes/virtual-machines-common-sizes-table-defs.md)]
4242

articles/virtual-machines/workloads/hpc/hbv2-performance.md renamed to articles/virtual-machines/hbv2-performance.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ ms.service: virtual-machines
66
ms.subservice: hpc
77
ms.workload: infrastructure-services
88
ms.topic: article
9-
ms.date: 09/28/2020
9+
ms.date: 03/04/2023
1010
ms.reviewer: cynthn
1111
ms.author: mamccrea
1212
author: mamccrea
@@ -16,7 +16,7 @@ author: mamccrea
1616

1717
**Applies to:** :heavy_check_mark: Linux VMs :heavy_check_mark: Windows VMs :heavy_check_mark: Flexible scale sets :heavy_check_mark: Uniform scale sets
1818

19-
Several performance tests have been run on [HBv2-series](../../hbv2-series.md) size VMs. The following are some of the results of this performance testing.
19+
Several performance tests have been run on [HBv2-series](hbv2-series.md) size VMs. The following are some of the results of this performance testing.
2020

2121

2222
| Workload | HBv2 |
@@ -36,7 +36,7 @@ MPI latency test from the OSU microbenchmark suite is run. Sample scripts are on
3636
./bin/mpirun_rsh -np 2 -hostfile ~/hostfile MV2_CPU_MAPPING=[INSERT CORE #] ./osu_latency
3737
```
3838

39-
:::image type="content" source="./media/latency-hbv2.png" alt-text="MPI latency on Azure HB.":::
39+
![Screenshot of MPI latency.](./media/hpc/latency-hbv2.png)
4040

4141
## MPI bandwidth
4242

@@ -46,7 +46,7 @@ MPI bandwidth test from the OSU microbenchmark suite is run. Sample scripts are
4646
./mvapich2-2.3.install/bin/mpirun_rsh -np 2 -hostfile ~/hostfile MV2_CPU_MAPPING=[INSERT CORE #] ./mvapich2-2.3/osu_benchmarks/mpi/pt2pt/osu_bw
4747
```
4848

49-
:::image type="content" source="./media/bandwidth-hbv2.png" alt-text="MPI bandwidth on Azure HB.":::
49+
![Screenshot of MPI bandwidth.](./media/hpc/bandwidth-hbv2.png)
5050

5151
## Mellanox Perftest
5252

@@ -61,4 +61,4 @@ numactl --physcpubind=[INSERT CORE #] ib_send_lat -a
6161
## Next steps
6262

6363
- Read about the latest announcements, HPC workload examples, and performance results at the [Azure Compute Tech Community Blogs](https://techcommunity.microsoft.com/t5/azure-compute/bg-p/AzureCompute).
64-
- For a higher-level architectural view of running HPC workloads, see [High Performance Computing (HPC) on Azure](/azure/architecture/topics/high-performance-computing/).
64+
- For a higher-level architectural view of running HPC workloads, see [High Performance Computing (HPC) on Azure](/azure/architecture/topics/high-performance-computing/).

articles/virtual-machines/workloads/hpc/hbv2-series-overview.md renamed to articles/virtual-machines/hbv2-series-overview.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ ms.service: virtual-machines
77
ms.subservice: hpc
88
ms.workload: infrastructure-services
99
ms.topic: article
10-
ms.date: 12/15/2020
10+
ms.date: 03/04/2023
1111
ms.reviewer: cynthn
1212
ms.author: mamccrea
1313
author: mamccrea
@@ -18,17 +18,17 @@ author: mamccrea
1818

1919
**Applies to:** :heavy_check_mark: Linux VMs :heavy_check_mark: Windows VMs :heavy_check_mark: Flexible scale sets :heavy_check_mark: Uniform scale sets
2020

21-
Maximizing high performance compute (HPC) application performance on AMD EPYC requires a thoughtful approach memory locality and process placement. Below we outline the AMD EPYC architecture and our implementation of it on Azure for HPC applications. We will use the term **pNUMA** to refer to a physical NUMA domain, and **vNUMA** to refer to a virtualized NUMA domain.
21+
Maximizing high performance compute (HPC) application performance on AMD EPYC requires a thoughtful approach memory locality and process placement. Below we outline the AMD EPYC architecture and our implementation of it on Azure for HPC applications. We use the term **pNUMA** to refer to a physical NUMA domain, and **vNUMA** to refer to a virtualized NUMA domain.
2222

23-
Physically, an [HBv2-series](../../hbv2-series.md) server is 2 * 64-core EPYC 7742 CPUs for a total of 128 physical cores. These 128 cores are divided into 32 pNUMA domains (16 per socket), each of which is 4 cores and termed by AMD as a **Core Complex** (or **CCX**). Each CCX has its own L3 cache, which is how an OS will see a pNUMA/vNUMA boundary. Four adjacent CCXs share access to 2 channels of physical DRAM.
23+
Physically, an [HBv2-series](hbv2-series.md) server is 2 * 64-core EPYC 7742 CPUs for a total of 128 physical cores. These 128 cores are divided into 32 pNUMA domains (16 per socket), each of which is 4 cores and termed by AMD as a **Core Complex** (or **CCX**). Each CCX has its own L3 cache, which is how an OS sees a pNUMA/vNUMA boundary. Four adjacent CCXs share access to two channels of physical DRAM.
2424

25-
To provide room for the Azure hypervisor to operate without interfering with the VM, we reserve physical pNUMA domains 0 and 16 (i.e. the first CCX of each CPU socket). All remaining 30 pNUMA domains are assigned to the VM at which point they become vNUMA. Thus, the VM will see:
25+
To provide room for the Azure hypervisor to operate without interfering with the VM, we reserve physical pNUMA domains 0 and 16 (that is, the first CCX of each CPU socket). All remaining 30 pNUMA domains are assigned to the VM at which point they become vNUMA. Thus, the VM sees:
2626

2727
`(30 vNUMA domains) * (4 cores/vNUMA) = 120` cores per VM
2828

2929
The VM itself has no awareness that pNUMA 0 and 16 are reserved. It enumerates the vNUMA it sees as 0-29, with 15 vNUMA per socket symmetrically, vNUMA 0-14 on vSocket 0, and vNUMA 15-29 on vSocket 1.
3030

31-
Process pinning will work on HBv2-series VMs because we expose the underlying silicon as-is to the guest VM. We strongly recommend process pinning for optimal performance and consistency.
31+
Process pinning works on HBv2-series VMs because we expose the underlying silicon as-is to the guest VM. We strongly recommend process pinning for optimal performance and consistency.
3232

3333

3434
## Hardware specifications
@@ -53,7 +53,7 @@ Process pinning will work on HBv2-series VMs because we expose the underlying si
5353
| Additional Frameworks | UCX, libfabric, PGAS |
5454
| Azure Storage Support | Standard and Premium Disks (maximum 8 disks) |
5555
| OS Support for SRIOV RDMA | CentOS/RHEL 7.6+, Ubuntu 16.04+, SLES 12 SP4+, WinServer 2016+ |
56-
| Orchestrator Support | CycleCloud, Batch, AKS; [cluster configuration options](../../sizes-hpc.md#cluster-configuration-options) |
56+
| Orchestrator Support | CycleCloud, Batch, AKS; [cluster configuration options](sizes-hpc.md#cluster-configuration-options) |
5757

5858
> [!NOTE]
5959
> Windows Server 2012 R2 is not supported on HBv2 and other VMs with more than 64 (virtual or physical) cores. See [Supported Windows guest operating systems for Hyper-V on Windows Server](/windows-server/virtualization/hyper-v/supported-windows-guest-operating-systems-for-hyper-v-on-windows) for more details.

articles/virtual-machines/hbv2-series.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Specifications for the HBv2-series VMs.
44
ms.service: virtual-machines
55
ms.subservice: sizes
66
ms.topic: conceptual
7-
ms.date: 12/19/2022
7+
ms.date: 03/04/2023
88
ms.reviewer: jushiman
99
---
1010

@@ -35,11 +35,11 @@ HBv2-series VMs feature 200 Gb/sec Mellanox HDR InfiniBand. These VMs are connec
3535
| Standard_HB120-16rs_v2 | 16 | AMD EPYC 7V12 | 456 | 350 | 2.45 | 3.1 | 3.3 | 200 | All | 480 + 960 | 8 | 8 |
3636

3737
Learn more about the:
38-
- [Architecture and VM topology](./workloads/hpc/hbv2-series-overview.md)
39-
- Supported [software stack](./workloads/hpc/hbv2-series-overview.md#software-specifications) including supported OS
40-
- Expected [performance](./workloads/hpc/hbv2-performance.md) of the HBv2-series VM
38+
- [Architecture and VM topology](hbv2-series-overview.md)
39+
- Supported [software stack](hbv2-series-overview.md#software-specifications) including supported OS
40+
- Expected [performance](hbv2-performance.md) of the HBv2-series VM
4141

42-
[!INCLUDE [hpc-include](./workloads/hpc/includes/hpc-include.md)]
42+
[!INCLUDE [hpc-include](./includes/hpc-include.md)]
4343

4444
[!INCLUDE [virtual-machines-common-sizes-table-defs](../../includes/virtual-machines-common-sizes-table-defs.md)]
4545

articles/virtual-machines/workloads/hpc/hbv3-performance.md renamed to articles/virtual-machines/hbv3-performance.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ ms.service: virtual-machines
66
ms.subservice: hpc
77
ms.workload: infrastructure-services
88
ms.topic: article
9-
ms.date: 03/25/2021
9+
ms.date: 03/04/2023
1010
ms.reviewer: cynthn
1111
ms.author: mamccrea
1212
author: mamccrea
@@ -22,16 +22,16 @@ Performance expectations using common HPC microbenchmarks are as follows:
2222
|-------------------------------------------------|-------------------------------------------------------------------|
2323
| STREAM Triad | 330-350 GB/s (amplified up to 630 GB/s) |
2424
| High-Performance Linpack (HPL) | 4 TF (Rpeak, FP64), 8 TF (Rpeak, FP32) for 120-core VM size |
25-
| RDMA latency & bandwidth | 1.2 microseconds (1-byte), 192 Gb/s (one-way) |
25+
| RDMA latency & bandwidth | 1.2 microseconds (1 byte), 192 GB/s (one-way) |
2626
| FIO on local NVMe SSDs (RAID0) | 7 GB/s reads, 3 GB/s writes; 186k IOPS reads, 201k IOPS writes |
2727

2828
## Process pinning
2929

30-
[Process pinning](compiling-scaling-applications.md#process-pinning) works well on HBv3-series VMs because we expose the underlying silicon as-is to the guest VM. We strongly recommend process pinning for optimal performance and consistency.
30+
[Process pinning](./workloads/hpc/compiling-scaling-applications.md#process-pinning) works well on HBv3-series VMs because we expose the underlying silicon as-is to the guest VM. We strongly recommend process pinning for optimal performance and consistency.
3131

3232
## MPI latency
3333

34-
The MPI latency test from the OSU microbenchmark suite can be executed per below. Sample scripts are on [GitHub](https://github.com/Azure/azhpc-images/blob/04ddb645314a6b2b02e9edb1ea52f079241f1297/tests/run-tests.sh).
34+
The MPI latency test from the OSU microbenchmark suite can be executed as shown. Sample scripts are on [GitHub](https://github.com/Azure/azhpc-images/blob/04ddb645314a6b2b02e9edb1ea52f079241f1297/tests/run-tests.sh).
3535

3636
```bash
3737
./bin/mpirun_rsh -np 2 -hostfile ~/hostfile MV2_CPU_MAPPING=[INSERT CORE #] ./osu_latency
@@ -48,7 +48,7 @@ The [Mellanox Perftest package](https://community.mellanox.com/s/article/perftes
4848
numactl --physcpubind=[INSERT CORE #] ib_send_lat -a
4949
```
5050
## Next steps
51-
- Learn about [scaling MPI applications](compiling-scaling-applications.md).
51+
- Learn about [scaling MPI applications](./workloads/hpc/compiling-scaling-applications.md).
5252
- Review the performance and scalability results of HPC applications on the HBv3 VMs at the [TechCommunity article](https://techcommunity.microsoft.com/t5/azure-compute/hpc-performance-and-scalability-results-with-azure-hbv3-vms/bc-p/2235843).
5353
- Read about the latest announcements, HPC workload examples, and performance results at the [Azure Compute Tech Community Blogs](https://techcommunity.microsoft.com/t5/azure-compute/bg-p/AzureCompute).
5454
- For a higher-level architectural view of running HPC workloads, see [High Performance Computing (HPC) on Azure](/azure/architecture/topics/high-performance-computing/).

0 commit comments

Comments
 (0)