NVIDIA CUDA
®
是一種革命性的平行運算架構,可支援 NVIDIA GPU 架構上的加速運算作業。NVIDIA 開發的 RAPIDS 是建立在 CUDA 之上的一組開放原始碼函式庫,可以讓你在資料科學流程中使用 GPU 加速功能。
NVIDIA 為 Spark 3 建立了 RAPIDS 加速器,能藉由大幅提高 Spark SQL 與 DataFrame 作業的效能來攔截和加速 ETL 流程。
Spark 3 為 Catalyst 需求最佳化工具提供欄式處理支援,這正是 RAPIDS 加速器為了加速 SQL 與 DataFrame 運算所採用的功能。執行需求計畫時,就可以透過 Spark 叢集中的 GPU 執行這些運算。
NVIDIA 也建立了新的 Spark 隨機實作,將 Spark 處理序之間的資料傳輸作業最佳化。此隨機實作構建在 GPU 加速的通訊函式庫 (包含 UCX、RDMA 和 NCCL) 基礎上。
Spark 3 將 GPU 視為首要資源 接著才是 CPU 和系統記憶體。這讓 Spark 3 可以將 GPU 加速的工作負載直接放在包含必要 GPU 資源的伺服器上,因為這些資源是加速和完成工作所必需。
NVIDIA 工程師也協助開發這項重大的 Spark 增強功能,讓 Spark 應用程式可以透過 Spark 單機版、YARN 和 Kubernetes 叢集中的 GPU 資源啟動。