部署由 NVIDIA Tensor Core GPU 支援的 HPC 裸機伺服器叢集

部署人工智慧 (AI)、機器學習 (ML) 或深度學習 (DL) 模型 (例如 BERT-Large for language modeling),通常可從 GPU 加速用於 AI 工作負載。

Oracle Cloud Infrastructure (OCI) 可直接存取裸機伺服器叢集。裸機 GPU 叢集提供業界部署 AI、ML 或 DL 的最佳性價比。您可以視需要輕鬆代管超過 500 個 GPU 叢集。

架構

此架構示範一般系統中各種元件與其核心 HPC 裸機 GPU 叢集之間的關係。它適用於許多 AI、ML 或 DL 應用程式,例如 BERT-Large、GPT2/3、Jasper、MaskRCNN 及 GNMT。

BERT 是一種預先訓練的深度學習模型,在自然語言處理 (NLP) 工作中很受歡迎。它可以針對特定應用程式或網域進行微調。較大的變體 BERT-large 包含 340M 參數。在數百個相同的 GPU 上,訓練和推論時間都沒有大規模分散式叢集。GPU 叢集需要高 I/O 傳輸量和低延遲叢集檔案系統。對於即時 AI 推論應用程式而言,您可以處理資料的速度、速度和成本低廉非常重要。

Oracle Cloud Infrastructure (OCI) 根據遠端直接記憶體存取 (RDMA),透過融合乙太網路 (RoCE) 執行,且延遲低於 2μs,運用 Oracle 的低延遲叢集網路。RDMA 允許節點之間的低延遲連線,以及存取 GPU 記憶體,而不涉及 CPU。OCI HPC 可讓客戶將 64 個裸機節點 (每個節點都有 8 個 NVIDIA A100 GPU) 叢集至 512 個 GPU。

OCI 為 HPC 工作負載 (例如本機 NVMe SSD、網路及平行檔案系統) 提供多種高效能、低延遲的儲存解決方案。OCI 裸機伺服器隨附 NVMe SSD 本機儲存體。可以用來建立暫存檔案的暫用 NFS 或暫用平行檔案系統 (BeeOND,Weka)。使用區塊磁碟區多重連附功能,您可以使用單一磁碟區來儲存整個訓練資料集,並將其連附至多個 GPU 執行處理。或者,您也可以使用 Intel Ice lake BM 或 VM 和平衡效能層區塊儲存,建置最高傳輸量和最低成本的檔案伺服器,其中包含 NFS 型 (NFS-HA、FSS) 或平行檔案系統 (Weka.io、Spectrum Scale、BeeGFS、BeeOND)。訓練結果會儲存在 Oracle Cloud Infrastructure Object Storage 中,供長期儲存使用。

下圖說明此參照架構。

architecture-hpc-bm-gpu.png 的描述如下
architecture-hpc-bm-gpu.png 圖解描述

architecture-hpc-bm-gpu-oracle.zip 架構

此架構具有下列元件:

  • 地區

    Oracle Cloud Infrastructure 區域是包含一或多個資料中心 (稱為可用性網域) 的本地化地理區域。區域與其他區域無關,且遠距離可加以區分 (跨國家,甚至是大陸)。

  • 雲端保全

    您可以使用 Oracle Cloud Guard 來監控及維護 Oracle Cloud Infrastructure 中資源的安全性。Cloud Guard 使用偵測器處方,您可以定義這些處方來檢查資源是否有安全漏洞,以及監控操作員和使用者是否有危險的活動。偵測到任何組態錯誤或不安全的活動時,Cloud Guard 會建議更正動作,並根據您可以定義的回應器處方協助採取這些動作。

  • 可用性網域

    可用性網域是區域內獨立的資料中心。每個可用性網域中的實體資源會與其他可用性網域中的資源隔離,提供容錯能力。可用性網域不共用基礎設施 (例如電源或冷卻系統) 或內部可用性網域網路。因此,一個可用性網域發生故障不應影響區域中的其他可用性網域。

  • 容錯域

    故障領域是可用性領域內的一組硬體和基礎設施。每個可用性網域都有三個容錯域,分別具備獨立的電源和硬體。當您將資源分配給多個容錯域時,您的應用程式可以容忍容錯域內的實體伺服器失敗、系統維護,以及電源失敗。

  • 區間

    區間是 Oracle Cloud Infrastructure 租用戶內的跨區域邏輯分割區。使用區間組織 Oracle Cloud 中的資源、控制對資源的存取,以及設定使用配額。若要控制對指定區間中資源的存取,您必須定義原則,指定誰可以存取資源及其可執行的動作。

  • 虛擬雲端網路 (VCN) 和子網路

    VCN 是您在 Oracle Cloud Infrastructure 區域中設定的可自訂軟體定義網路。就像傳統的資料中心網路一樣,VCN 也可讓您控制網路環境。VCN 可以有多個非重疊的 CIDR 區塊,您可以在建立 VCN 之後加以變更。您可以將 VCN 分割成子網路,子網路可以限定為區域或可用性網域。每個子網路都是由不與 VCN 中其他子網路重疊的連續位址範圍所組成。您可以在建立子網路後變更其大小。子網路可以是公用或專用。

  • 網站至網站 VPN

    網站至網站 VPN 可在您的內部部署網路與 Oracle Cloud Infrastructure 中的 VCN 之間提供 IPSec VPN 連線。IPSec 協定套件會在封包從來源傳輸至目的地之前加密 IP 流量,並在到達時解密流量。

  • FastConnect

    Oracle Cloud Infrastructure FastConnect 可讓您輕鬆地在您的資料中心與 Oracle Cloud Infrastructure 之間建立專屬的專用連線。相較於網際網路連線,FastConnect 提供更高的頻寬選項和更可靠的網路體驗。

  • 動態路由閘道 (DRG)

    DRG 是一個虛擬路由器,可在 VCN 與區域外部網路之間 (例如另一個 Oracle Cloud Infrastructure 區域中的 VCN、內部部署網路或其他雲端提供者中的網路) 提供相同區域 VCN 之間的專用網路流量路徑。

  • 網路位址轉譯 (NAT) 閘道

    NAT 閘道可讓 VCN 中的專用資源存取網際網路上的主機,而不會將這些資源暴露給內送網際網路連線。

  • 網際網路閘道

    網際網路閘道允許 VCN 中公用子網路與公用網際網路之間的流量。

  • 服務閘道

    服務閘道可讓您從 VCN 存取其他服務,例如 Oracle Cloud Infrastructure Object Storage 。從 VCN 到 Oracle 服務的流量會透過 Oracle 網路結構傳送,而不會周遊網際網路。

  • 安全清單

    您可以為每個子網路建立安全規則,指定子網路中必須允許進出的流量來源、目的地和類型。

  • 路由表

    虛擬路由表包含規則,可將流量從子網路路由至 VCN 外部的目的地,通常透過閘道。

  • 堡壘主機

    堡壘主機是運算執行處理,可作為雲端外部拓樸的安全受控制進入點。堡壘主機通常在解密區域 (DMZ) 中佈建。它可讓您將機密資源放在無法直接從雲端存取的專用網路中,以保護機密資源。拓樸具有單一的已知進入點,您可以定期監督和稽核。因此,您可以避免讓拓樸的敏感元件暴露,而不影響拓樸的存取。

  • 堡壘主機節點 (標頭節點)

    堡壘主機節點 (前端節點) 使用 Web 式入口網站連線至前端節點並排定 HPC 工作。工作要求會透過 Oracle Cloud Infrastructure FastConnect 或 IPSec VPN 傳送至標頭節點。標頭節點也會將客戶資料集傳送至檔案儲存,並可在資料上進行一些預先處理。前端節點可以在工作完成時佈建 HPC 節點叢集和刪除 HPC 叢集。

    head 節點包含 BERT 模型、執行排程器,並可作為存取叢集的堡壘主機。它具有訊息傳遞介面 (MPI),並透過 REST API 自動調整裸機節點。HPC 叢集會視需要佈建裸機節點。模型訓練和推論使用連接到裸機節點的 4 x 6.4TB NVMe SSD 本機儲存。如果您使用我們的解決方案來啟動基礎架構,架構會部署標頭節點,且預設會在 /mnt 的 NVMe SSD 儲存上安裝 nfs-share

  • HPC 叢集節點

    Head 節點會佈建並終止這些啟用 RDMA 的運算節點。它們會處理儲存在檔案儲存中的資料,並將結果傳回檔案儲存。

  • NFS 伺服器

    Head 節點會將其中一個 HPC 節點升級為 NFS 伺服器。

  • 執行處理集區

    執行個體池是區域內的一組執行個體,這些執行個體是從同一執行個體配置創建,並做為一個組管理。

    執行處理集區可讓您在與群組相同的區域內建立及管理多個運算執行處理。他們還能與其他服務 (例如 Oracle Cloud Infrastructure Load Balancing 服務和 Oracle Cloud Infrastructure Identity and Access Management 服務) 整合。

  • 裸機資料庫系統

    裸機 (BM) 資料庫系統是單一裸機伺服器,執行 Oracle Linux 7,連附至本機的 NVMe 儲存體。使用裸機 GPU 資源配置進行硬體加速分析和其他運算。

    啟動裸機資料庫系統時,您可以選取適用於該資料庫系統上所有資料庫的資源配置和單一 Oracle Database 版本。每個資料庫系統可以有多個資料庫本位目錄,這可以是不同的版本。每個資料庫本位目錄只能有一個與資料庫本位目錄相同的資料庫。

    資源配置決定了配置給資料庫系統的資源。選項 (例如雙向或三向鏡像) 以及配置給資料檔的空間,都會影響系統上可用的儲存量。

  • 物件儲存

    物件儲存可讓您快速存取各種內容類型的大量結構化和非結構化資料,包括資料庫備份、分析資料,以及豐富的內容 (例如影像和影片)。您可以安全地儲存資料,然後直接從網際網路或雲端平台內擷取資料。您可以擴展儲存體,而不會發生任何效能或服務可靠性的降低。針對快速、立即且經常存取的「熱」儲存體,使用標準儲存體。將封存儲存用於保留很長一段時間、極少或極少存取的「冷」儲存。

建議

使用下列建議作為起點。 您的需求可能與此處描述的架構不同。
  • VCN

    建立 VCN 時,請根據計畫要連附至 VCN 中子網路的資源數目,決定所需的 CIDR 區塊數目和每個區塊的大小。使用標準專用 IP 位址空間內的 CIDR 區塊。

    選取未與任何其他網路 (在 Oracle Cloud Infrastructure 中、您的內部部署資料中心或其他雲端提供者) 重疊的 CIDR 區塊,以設定專用連線。

    建立 VCN 之後,您可以變更、新增及移除其 CIDR 區塊。

    設計子網路時,請考慮流量和安全性需求。將特定層或角色內的所有資源連附至相同的子網路,以作為安全界限。

    使用區域子網路。

  • 安全

    使用 Oracle Cloud Guard 主動監控及維護 Oracle Cloud Infrastructure 中資源的安全性。Cloud Guard 使用您可以定義的偵測器處方來檢查資源是否有安全漏洞,以及監控操作員和使用者是否有危險活動。偵測到任何組態錯誤或不安全的活動時,Cloud Guard 會建議更正動作,並根據您可以定義的回應器處方協助採取這些動作。

    對於需要最高安全性的資源,Oracle 建議您使用安全區域。安全區域是與以最佳做法為基礎之 Oracle 定義的安全原則處方關聯的區間。舉例來說,安全區域中的資源不得從公用網際網路存取,而必須使用客戶管理的金鑰加密。當您在安全區域中建立及更新資源時,Oracle Cloud Infrastructure 會根據安全區域處方中的原則驗證作業,並拒絕違反任何原則的作業。

  • 雲端保全

    複製並自訂 Oracle 提供的預設處方,以建立自訂偵測器和回應器處方。這些處方可讓您指定哪些類型的安全違規會產生警告,以及允許對它們執行哪些動作。例如,您可能會想要偵測可見性設為公用物件儲存的儲存桶。

    在租用戶層級套用 Cloud Guard 以涵蓋最廣泛的範圍,並降低維護多個組態的管理負擔。

    您也可以使用「受管理清單」功能,將特定組態套用至偵測器。

  • 安全區域

    對於需要最高安全性的資源,Oracle 建議您使用安全區域。安全區域是與以最佳做法為基礎之 Oracle 定義的安全原則處方關聯的區間。舉例來說,安全區域中的資源不得從公用網際網路存取,而必須使用客戶管理的金鑰加密。當您在安全區域中建立及更新資源時,Oracle Cloud Infrastructure 會根據安全區域處方中的原則驗證作業,並拒絕違反任何原則的作業。

  • 網路安全群組 (NSG)

    您可以使用 NSG 定義一組適用於特定 VNIC 的輸入和輸出規則。建議您使用 NSG 而非安全清單,因為 NSG 可讓您將 VCN 的子網路架構與應用程式的安全需求分開。

  • HPC 節點

    部署 HPC 裸機資源配置以取得完整效能。

    使用 BM.HPC4.8 資源配置搭配 8 個 A100 Tensor Core GPU 搭配 40 GB 記憶體、2 x 32 Core AMD (位於 2.9 GHz、2048 GB DDR4、8 x 200 Gbps 網路)、4 x 6.4-TB 本機 NVMe SSD 儲存體,每個節點最多可有 1PB 區塊)。

    叢集最多可達 64 個裸機節點,可提供 512 個 GPU 和 4096 個 CPU。

注意事項

建置此參照架構時,請考量下列各點。

  • 效能

    視工作負載的大小而定,決定您希望 BERT 執行的核心數目。此決定可確保適時完成模擬。

    若要獲得最佳效能,請選擇具有適當頻寬的正確運算資源配置。

  • 使用狀態

    請根據您的部署需求和區域,考慮使用高可用性選項。選項包括在一個區域和容錯域中使用多個可用性網域。

    • 監督與警示

      設定節點的 CPU 和記憶體使用量監控和警示,以便視需要縱向擴展或縮減資源配置。

    • 成本

      裸機 GPU 執行處理可提供更高成本的必要 CPU 電源。評估您的需求以選擇適當的運算資源配置。

      沒有執行中的工作時,您可以刪除叢集。

  • 叢集檔案系統

    有多個案例:

    1. 隨附 HPC 資源配置的本機 NVMe SSD 儲存體。
    2. 多連附區塊磁碟區可提供高達 2,680 MB/ 秒 IO 傳輸量或 700k IOPS。
    3. 您也可以根據效能需求,在 NVMe SSD 儲存體或區塊儲存體上安裝自己的平行檔案系統。OCI 提供暫用且永久的 NFS 型 (NFS-HA、FSS) 或平行檔案系統 (weka.io、Spectrum Scale、BeeGFS、BeeOND、Lustre、Gluster、Quobyte) 解決方案,請參閱「深入瞭解」。與 HPC 儲存團隊聯絡,以設計最符合您需求的解決方案。

認可

  • 作者Wei Han