Google更新其Kubernetes服務GKE,提供多執行個體可共用單一Nvidia GPU的功能,透過在功能強大的GPU上,劃分出多個執行個體,讓用戶依照容器需求取用適當的運算資源,可有效提高資源利用率,讓用戶更好地控制成本支出。

由於GKE自動縮放和簡單管理的靈活性,GKE被許多資料科學家用來執行機器學習、視覺化和渲染等高效能運算,而現在Google再次強化GKE的功能,提供多執行個體GPU支援,進而使得GPU資源可以發揮的淋漓盡致。Google解釋,即便容器只需要一小部分的GPU資源,開源Kubernetes還是會為每個容器分配1個完整的GPU,而在功能強大的GPU上,可能會有資源浪費的情況發生。

GPU運算資源浪費的情況容易在推理工作負載上發生,比起模型訓練工作,動輒需要處理數百萬個樣本的運算負擔,推理工作僅需要即時處理少量樣本,因此對於推理和其他輕量級GPU工作負載來說,GPU共享對於提高利用率和降低成本來說至關重要。

現在Google在GKE新推出的多執行個體GPU功能,讓用戶可以將Nvidia A100 GPU劃分成7個執行個體,每個執行個體都有獨立的高頻寬記憶體、快取和運算核心,每個執行個體可以分配給1個容器,每個A100 GPU最多可以分配7個容器,另外,多執行個體GPU間由於採用硬體隔離,也就增加了安全性,也替所有GPU上執行的容器提供一致且可預測的QoS。

而Google雲端中最大的GPU Compute Engine執行個體A2虛擬機器,每個執行個體最多可支援高達16個A100 GPU,也就是說,每個節點可調度的GPU執行個體可達112個,每個執行個體可以執行1個獨立的工作負載,而GKE本身提供的自動縮放和配置功能,就可自動放大或縮小多執行個體GPU,以較低的成本提供良好的運算效能。

對CUDA應用程式來說,多執行個體GPU提供很高的透明度,每個GPU執行個體都會被視為常規的GPU資源,程式碼開發模型保持不變,Google提到,這個特點讓多執行個體GPU更容易使用。

熱門新聞

Advertisement