GPU-enabled集群
預覽
這個特性是在公共預覽。
請注意
一些GPU-enabled實例類型β和被標記為下拉列表中選擇司機和工人時在集群創建類型。
創建一個GPU集群
創建一個集群GPU集群類似於創建任何火花。你應該記住以下幾點:
的磚的運行時版本的必須是一個GPU-enabled版本,如運行時9.1 LTS毫升(GPU, Scala 2.12,火花3.1.2)。
的工作類型和驅動程序類型必須GPU實例類型。
對單機工作流沒有火花,你可以設置員工的數量為零。
支持實例類型
磚支持以下實例的類型:
A2機家庭:a2-highgpu-2g a2-highgpu-1g a2-highgpu-4g、a2-highgpu-8g a2-megagpu-16g
看到GCP accelerator-optimized機器在這些實例類型的更多信息,和豐富的地區檢查這些實例可用。你的磚部署必須駐留在一個地區推出GPU-enabled集群支持。
GPU調度
磚運行時9.1 LTS毫升以上的支持GPU-aware調度從Apache 3.0火花。磚preconfigures在GPU集群。
GPU調度不是單一節點上啟用集群。
spark.task.resource.gpu.amount
是唯一的火花GPU-aware調度相關配置,您可能需要改變。缺省配置使用一個GPU每個任務,這是理想的分布式推理工作負載和分布式訓練,如果你使用所有GPU節點。做分布式訓練節點的一個子集,這有助於減少通信開銷在分布式訓練,磚推薦設置spark.task.resource.gpu.amount
人均的gpu集群中的節點火花配置。
對於PySpark任務,磚自動重新映射分配GPU (s)指數0,1,…。在每個任務使用一個GPU的默認配置,您的代碼可以使用默認的GPU沒有檢查這GPU是分配給的任務。如果您設置多個gpu每個任務,例如4中,您的代碼可以假定的指標分配gpu總是0,1,2,3。如果你需要指定的gpu的物理指標,你可以得到的CUDA_VISIBLE_DEVICES
環境變量。
如果你使用Scala,你可以得到gpu的指標分配給的任務TaskContext.resources () . get (gpu)
。
NVIDIA GPU的司機,CUDA和cuDNN
磚安裝NVIDIA驅動程序和庫需要使用gpu火花司機和工人實例:
NVIDIA驅動程序的版本包括450.119.04,支持CUDA 11.0。
的版本庫包含,請參閱發布說明您使用的特定數據磚運行時版本。
請注意
這個軟件包含NVIDIA公司提供的源代碼。具體來說,支持gpu,磚包括代碼CUDA樣品。
英偉達最終用戶許可協議(EULA)
當您選擇一個GPU-enabled“磚磚運行時版本”,你含蓄地同意的條款和條件中列出的NVIDIA CUDA EULA對,cuDNN,特斯拉庫,英偉達最終用戶許可協議(NCCL補充)NCCL庫。
限製
你不能當你創建一個新的GPU集群安排一個工作從一個筆記本。你可以在現有的GPU集群上運行的工作隻有從集群創建頁麵。
磚在穀歌的雲,常用的NVIDIA的可執行文件
nvidia-smi
不包括在內嗎路徑
環境變量。相反,他們在/usr/local/nvidia/bin
。例如,使用nvidia-smi
你必須使用網絡終端或% sh
筆記本神奇的命令運行/usr/local/nvidia/bin/nvidia-smi
。不支持集群監控指標使用Ganglia磚在穀歌的雲。