Azure 上的電腦輔助工程服務
為 Azure 上的電腦輔助工程 (CAE) 提供軟體即服務 (SaaS) 平臺。
高效能運算(HPC),也稱為「大型計算」,會使用大量的 CPU 或 GPU 型電腦來解決複雜的數學工作。
許多產業都使用 HPC 來解決一些最困難的問題。 其中包括工作負載,例如:
內部部署 HPC 系統與雲端中的其中一個主要差異,就是能夠視需要動態新增和移除資源。 動態調整會移除計算容量作為瓶頸,而是允許客戶針對其作業的需求調整其基礎結構大小。
下列文章提供此動態調整功能的詳細數據。
當您想要在 Azure 上實作自己的 HPC 解決方案時,請確定您已檢閱下列主題:
建置 HPC 系統需要許多基礎結構元件。 不論您選擇如何管理 HPC 工作負載,計算、記憶體和網路都提供基礎元件。
在 Azure 上設計和實作 HPC 架構的方式有很多種。 HPC 應用程式可以調整為數千個計算核心、擴充內部部署叢集,或以 100% 的雲端原生解決方案執行。
下列案例概述 HPC 解決方案建置的一些常見方式。
為 Azure 上的電腦輔助工程 (CAE) 提供軟體即服務 (SaaS) 平臺。
使用 Azure Batch 服務在 Azure 中執行原生 HPC 工作負載
Azure 提供一系列大小,針對 CPU 和 GPU 密集工作負載進行優化。
N 系列 VM 具有 NVIDIA GPU,專為計算密集型或圖形密集型應用程式所設計,包括人工智慧 (AI) 學習和視覺效果。
大規模 Batch 和 HPC 工作負載對於超過傳統雲端文件系統功能的數據記憶體和存取需求。 有許多解決方案可管理 Azure 上 HPC 應用程式的速度和容量需求:
如需比較 Azure 上的 Lustre、GlusterFS 和 BeeGFS 的詳細資訊,請檢閱 Azure 電子書上的 Parallel Files Systems 和 Azure 部落格上的 Lustre。
H16r、H16mr、A8 和 A9 VM 可以連線到高輸送量後端 RDMA 網路。 此網路可以改善在Microsoft訊息傳遞介面下執行的緊密結合平行應用程式的效能,更稱為 MPI 或 Intel MPI。
從頭開始在 Azure 上建置 HPC 系統可提供大量的彈性,但通常需要大量維護。
如果您有想要連線到 Azure 的現有內部部署 HPC 系統,有幾個資源可協助您開始使用。
首先,請檢閱 檔中有關將內部部署網路連線至 Azure 的選項一文。 您可以從該處找到這些連線選項的其他資訊:
此參考架構會示範如何使用網站對網站虛擬私人網路 (VPN),將內部部署網路擴充至 Azure。
實作高可用性且安全的站對站網路架構,此架構橫跨 Azure 虛擬網路,以及使用 ExpressRoute 搭配 VPN 閘道故障轉移連線的內部部署網路。
一旦安全地建立網路連線,您就可以開始隨選使用雲端計算資源與現有 工作負載管理員的高載功能。
Azure Marketplace 中提供許多工作負載管理員。
Azure Batch 是一項平臺服務,可用於在雲端有效率地執行大規模平行和 HPC 應用程式。 Azure Batch 會排程計算密集型工作,以在虛擬機的受控集區上執行,並可自動調整計算資源以符合您的作業需求。
SaaS 提供者或開發人員可以使用 Batch SDK 和工具來整合 HPC 應用程式或容器工作負載與 Azure、暫存數據至 Azure,以及建置作業執行管線。
在 Azure Batch 中,所有服務都在雲端上執行,下圖顯示架構與 Azure Batch 的外觀,在雲端中執行延展性和作業排程設定,而結果和報表可以傳送至您的內部部署環境。
Azure CycleCloud 提供在 Azure 上使用任何排程器管理 HPC 工作負載的最簡單方式(例如 Slurm、Grid Engine、HPC Pack、HTCondor、LSF、PBS Pro 或 Symphony),
CycleCloud 可讓您:
在此混合式範例圖表中,我們可以清楚地看到這些服務在雲端與內部部署環境之間分佈的方式。 有機會在這兩個工作負載中執行作業。
下列雲端原生模型範例圖表顯示雲端中的工作負載如何處理所有專案,同時仍會保留與內部部署環境的連線。
功能 | Azure Batch | Azure CycleCloud |
---|---|---|
排程器 | Azure 入口網站 (Cloud Native) 中的 Batch API 和工具和命令行腳本。 | 使用標準 HPC 排程器,例如 Slurm、PBS Pro、LSF、Grid Engine 和 HTCondor,或擴充 CycleCloud 自動調整外掛程式以使用您自己的排程器。 |
計算資源 | 軟體即服務節點 – 平臺即服務 | 平臺即服務軟體 – 平臺即服務 |
監視工具 | Azure 監視器 | Azure 監視器、Grafana |
自訂 | 自定義映像集區、第三方映像、Batch API 存取。 | 使用完整的 RESTful API 來自定義和擴充功能、部署您自己的排程器,以及將支援部署到現有的工作負載管理員 |
整合 | Synapse Pipelines、Azure Data Factory、Azure CLI | 適用於 Windows 和 Linux 的內建 CLI |
使用者類型 | 開發人員 | 傳統 HPC 系統管理員和使用者 |
工作類型 | Batch、工作流程 | 緊密結合(訊息傳遞介面/MPI)。 |
Windows 支援 | Yes | 視排程器選擇而有所不同 |
以下是可在 Azure 基礎結構中執行的叢集和工作負載管理員範例。 在 Azure VM 中建立獨立叢集,或從內部部署叢集高載至 Azure VM。
容器也可以用來管理某些 HPC 工作負載。 Azure Kubernetes Service (AKS) 等服務可讓您輕鬆地在 Azure 中部署受控 Kubernetes 叢集。
您可以透過數種不同的方式,在 Azure 上管理 HPC 成本。 請確定您已檢閱 Azure 購買選項 ,以尋找最適合您組織的方法。
如需 Azure 上安全性最佳做法的概觀,請檢閱 Azure 安全性檔。
除了 Cloud Bursting 區段中可用的網路組態之外,您還可以實作中樞/輪輻組態來隔離計算資源:
中樞是 Azure 中的虛擬網路 (VNet),會作為對您內部部署網路之連線能力的中心點。 「輪輻」是與中樞對等的 VNet,可用於隔離工作負載。
此參考架構建置在中樞輪輻參考架構基礎上,以包含可以被所有輪輻取用之中樞中的共用服務。
在 Azure 中執行自訂或商業 HPC 應用程式。 本節中的數個範例會進行效能評定,以透過其他 VM 或計算核心有效率地調整。 請流覽 Azure Marketplace 以取得已準備好部署的解決方案。
注意
請洽詢任何商業應用程式的廠商,以取得授權或其他限制,以在雲端中執行。 並非所有廠商都提供隨用隨付授權。 您的解決方案可能需要雲端中的授權伺服器,或連線到內部部署授權伺服器。
在與 HPC 輸出相同的區域中執行 GPU 支援的虛擬機,以取得最低的延遲、存取,以及透過 Azure 虛擬桌面從遠端可視化。
有許多客戶已透過使用 Azure 來取得其 HPC 工作負載的巨大成功。 您可以在下列幾個客戶案例研究中找到:
如需最新的公告,請參閱下列資源:
這些教學課程會提供您在 Microsoft Batch 上執行應用程式的詳細資料: