共用方式為


Azure Synapse Analytics 中的 GPU 加速 Apache Spark 集區 (預覽)

Azure Synapse Analytics 現在支援以圖形處理單位 (GPU) 加速的 Apache Spark 集區。

藉由使用 NVIDIA GPU,數據科學家和工程師可以縮短執行數據整合管線、評分機器學習模型等等所需的時間。 本文說明如何建立及搭配 Azure Synapse Analytics 建立和使用 GPU 加速集區。 本文也會詳細說明預先安裝為 GPU 加速運行時間一部分的 GPU 驅動程式和連結庫。

警告

  • GPU 加速預覽僅限於 Apache Spark 3.2(已宣佈終止支援) 運行時間。 已於 2023 年 7 月 8 日宣佈 Azure Synapse Runtime for Apache Spark 3.2 的支持終止。 終止支援宣佈的運行時間不會有 Bug 和功能修正。 安全性修正會根據風險評估進行向後移植。 截至 2024 年 7 月 8 日,Spark 3.2 上的此運行時間和對應的 GPU 加速預覽將會淘汰和停用。
  • Azure Synapse 3.1(不支援)運行時間現在不支援 GPU 加速預覽。 自 2023 年 1 月 26 日起,適用於 Apache Spark 3.1 的 Azure Synapse Runtime 已終止其終止支援,官方支援已於 2024 年 1 月 26 日終止,且無法進一步解決超過此日期的支援票證、錯誤修正或安全性更新。

注意

已啟用 Azure Synapse GPU 的集區目前處於公開預覽狀態。

建立 GPU 加速集區

為了簡化建立和管理集區的流程,Azure Synapse 會負責預先安裝低階程式庫,並設定計算節點之間的所有複雜網路需求。 這種整合可讓使用者在短短幾分鐘內就能開始使用 GPU 加速集區。

注意

  • 您可以在位於美國東部、澳大利亞東部和北歐的工作區中建立 GPU 加速集區。
  • GPU 加速集區僅適用於 Apache Spark 3 運行時間。
  • 您可能必須要求增加限制,才能建立已啟用 GPU 的叢集。

GPU 加速運行時間

NVIDIA GPU 驅動程式、CUDA 和 cuDNN

Azure Synapse Analytics 現在提供 GPU 加速的 Apache Spark 集區,其中包含各種 NVIDIA 連結庫和組態。 根據預設,Azure Synapse Analytics 會安裝在 Spark 驅動程式和背景工作實例上使用 GPU 所需的 NVIDIA 驅動程式和連結庫:

  • CUDA 11.2
  • libnccl2=2.8.4
  • libnccl-dev=2.8.4
  • libcudnn8=8.1.1
  • libcudnn8-dev=8.1.1

注意

此軟體包含 NVIDIA Corporation 提供的原始程式碼。 具體而言,為了支援 GPU 加速集區,Azure Synapse Apache Spark 集區包含來自 CUDA 範例的程式碼。

NVIDIA 終端使用者許可協定 (EULA)

當您在 Synapse Spark 中選取 GPU 加速硬體選項時,會隱含同意 NVIDIA EULA 中所述的條款和條件:.

加速 ETL 工作負載

透過內建支援 NVIDIA 的 RAPIDS Accelerator for Apache Spark,Azure Synapse 中的 GPU 加速 Spark 集區相較於標準分析基準,可提供顯著的效能改善,而不需要變更任何程式代碼。 此套件建置在 NVIDIA CUDA 和 UCX 之上,並啟用 GPU 加速的 SQL、DataFrame 作業和 Spark 隨機顯示。 由於不需要變更程式代碼來利用這些加速,使用者也可以加速依賴Linux Foundation Delta Lake 或 Microsoft Hyperspace 索引編製的數據管線。

若要深入瞭解如何在 Azure Synapse Analytics 中搭配 GPU 加速集區使用 NVIDIA RAPIDS 加速器,請流覽本指南,瞭解如何 使用 RAPIDS 來改善效能。

定型深度學習模型

深度學習模型通常需要大量數據和計算。 因此,組織通常會使用已啟用 GPU 的叢集加速其訓練程式。 在 Azure Synapse Analytics 中,組織可以使用 Tensorflow 和 PyTorch 等架構來建置模型。 然後,使用者可以使用 Horovod 和 Petastorm 擴大其深度學習模型。

若要深入瞭解如何定型分散式深度學習模型,請流覽下列指南: - 教學課程:使用 Horovod 和 Tensorflow - 進行分散式訓練教學課程:使用 Horovod 和 PyTorch 的分散式訓練

改善機器學習評分工作負載

許多組織都依賴大型批次評分作業,在狹窄的時間範圍期間經常執行。 若要達到改善的批次評分作業,您也可以使用 GPU 加速的 Spark 集區搭配 Microsoft 的 Hummingbird 連結庫。 使用 Hummingbird,使用者可以採用以樹狀結構為基礎的傳統 ML 模型,並將其編譯成張量計算。 Hummingbird 可讓用戶順暢地利用原生硬體加速和類神經網路架構來加速其 ML 模型評分,而不需要重寫其模型。

下一步