HPC 和 Batch 技術的案例
每個高效能運算 (HPC) 挑戰都有自己的需求,而且通常需要獨特的解決方案。
身為工程組織的解決方案結構設計師,您必須在 Azure 上使用 HPC 解決方案來解決組織所面臨的複雜工作。 這些工作包括為公司所設計的設施轉譯 3D 模型,以及儲存大量統計資料。 HPC 的本質是使用許多電腦或已高度指定 CPU、GPU 和記憶體設定的電腦,來處理複雜且耗時的工作。
在這裡,您會了解一些典型的 HPC 使用案例。 此知識應可協助您找出未來可能使用 HPC 解決方案來解決的問題。
一般 HPC 使用案例
組織會使用 HPC 來解決不同的商務問題。 您的需求可能是唯一的,但使用案例通常屬於數個常見案例的其中一種。
有限元素分析
有限元素分析會處理涉及複雜工程物理問題的問題。 這類問題可能包括熱傳輸、結構分析、質量輸送及電位。 為了解決這些問題,大型系統會細分為較小的區塊 (稱為有限元素),並重組為一個較大型的方程式系統。
範例包括車禍模擬和氣象預測。 您可以強調系統中最有趣的層面。 例如,車禍模擬可能專注於車輛前方,而氣象模擬可最佳化來識別極端氣象事件。 使用有限元素分析來將車禍模型化,只需指定車輛的結構幾何形狀和材料成分。 車禍中可能會在數秒內發生非常大的數學變化,因此您可能需要 HPC,才能適當地將其進行模型化。
3D 模型轉譯
3D 轉譯是雲端中適用於 HPC 的傳統使用案例。 單一電腦可能需要數小時或數天的時間,才能從靜態資產完全轉譯 3D 影片檔案或影像。 您可能會購買昂貴且規格齊全的電腦來處理此問題。 但是,考慮到技術日新月異的速度,在雲端中租用所需功能可能更符合經濟效益且更有效率。 使用 Azure Batch,在您擁有的時間內盡可能租用轉譯所需的功能,然後在作業完成時將它關閉。 當您經常需要完成類似的作業時,可以採用此程序。
隨著技術升級的推出,基礎結構可獲得改善。 Batch 也可讓您使用一些最重要的 3D 轉譯套件,例如 Maya、3D Studio Max 和 Chaos V-Ray。 您需要依小時支付所有授權費用。 由於轉譯在 CPU 上的負擔特別重,因此,將 H 系列 VM 部署到 Batch 集區可提供有效率的解決方案。
下圖顯示您可用來支援 3D 轉譯的一般 Batch 架構。
DNA 分析
基因體學是對單一生物個體的一組完整 DNA 所進行的研究,也很適合用於雲端式 HPC 技術。 基因組研究通常會涉及大量資料。 您可以在數量夠多的個體間追蹤 DNA 結構,以識別明顯的變化。 平均來說,人體中大約有 25,000 個基因,每個基因都會由 500 到 230 萬個字母的指示所組成。 雲端中的 HPC 能夠有效率地儲存和使用大量資料,而不需在很快就會過期的技術上投入大量資本。
電腦輔助設計
電腦輔助設計 (CAD) 與有限元素分析和 3D Batch 轉譯有一些相似之處,其為雲端中另一個適用於 HPC 的良好案例。 CAD 可加速產品設計和測試,並允許在產生的成品上執行複雜的視覺效果和模擬。
此圖顯示您可以根據 Azure 中的 N 和 H 系列 VM,用來發佈 CAD 軟體即服務 (SaaS) 產品的可能架構。
計算流體動力學
計算流體動力學會使用數學,將可自由流動以及與固體表面互相作用的流體流動模型化。 從計算的角度而言,這些模擬非常消耗資源。 這些模擬為您稍早看到 H 系列 VM 較複雜的層面提供了良好的使用案例。 這些層面包括 InfiniBand 網路功能,以及透過訊息傳遞介面 (MPI) 進行互動的能力。
決策準則
我該使用哪一個候選服務?
隨即轉移策略可直接將工作負載移轉至雲端,無需重新設計應用程式或變更程式碼。 這也稱為重新裝載。 如需詳細資訊,請參閱 Azure 移轉中心。
雲端最佳化是透過重構應用程式,充分利用雲端原生功能來移轉至雲端的策略。
我該使用哪一個 Azure HPC 儲存體服務?
CPU 型與 GPU 型運算的比較
CPU (大腦) 可以處理各種不同的計算,而 GPU (肌肉) 最適合將所有運算能力投入特定工作上。
個別 CPU 核心的 CPU 時脈速度較快,且在可用指令集方面更聰明。 而 GPU 透過核心數目以及龐大的平行處理能力,補足其單一核心時脈速度落差和有限的指令集。
CPU
- CPU 是由針對循序序列處理最佳化的一些核心所組成, 其設計目的是將作業內單一工作的效能最大化。
- 尋找正確 CPU VM 的步驟:
- 判斷 HPC 應用程式的一個作業是否在少於一部電腦上執行,或是使用跨多部電腦的 MPI。
- 判斷作業每個核心的 RAM 使用量 (例如每個核心 6 GB 的 RAM),並針對符合的執行個體進行基準測試。
- 如果工作負載需要實體核心,請使用 VM 系列 (顯示為紫色)。
- 檢查慣用機器的可用性。
- Cray 適用於任何工作負載:
- 當可用的 VM 類型無法在區域內使用時
- 高使用率,伺服器用量超過 80%
- 沒有運作中的 VM 設定時
GPU
- GPU 針對大量平行架構採用數千個較小且更有效率的核心,藉此同時處理多個函式。
- 現代 GPU 可提供比同類 CPU 產品更出色的處理能力、記憶體頻寬和效率。 在需要多個平行處理的工作中,其速度可快上 50-100 倍。
為什麼低延遲網路對於緊密耦合的作業很重要?
許多 HPC 應用程式都高度採用平行處理,並且有緊密耦合的通訊。 在應用程式平行模擬執行期間,所有平行處理都必須經常彼此通訊。
如果平行處理之間的通訊是在高頻寬/低延遲網路上完成,例如 InfiniBand 等高頻寬/低延遲網路,通常能達到這類應用程式的最佳執行效能。
由於這些應用程式的緊密耦合特性,如果單一 VM 無法以最佳方式運作,可能會導致作業效能降低。
節點彼此之間需要大量的交叉交談 (聊天) 才能正常運作。