NVIDIA Base Command Platform 為 AI 應用程序提供直觀、功能齊全的開發體驗。它是為了滿足 NVIDIA 內部研究和產品開發團隊的需求而建造的。現在,它已經成為訪問按需計算資源以訓練神經網絡模型和執行其他加速計算實驗的基本方法。
Base Command Platform 通過提供集成用戶、作業和數據的內聚服務,簡化了人工智能實驗工作流程。它提供了對私有注冊表的輕松訪問,以托管自定義容器以及 NGC Catalog 中的廣泛軟件。它提供了所有這些功能,而不犧牲可靠的 NVIDIA 性能、靈活性和可擴展性。您可以使用 Base Command Platform 進行需要單個 GPU 或數據中心的實驗。
基本指揮平臺界面和功能
Base Command Platform 支持 CLI 、 API 和 web 界面,所有這些都內置在 NGC 門戶中。集成的 web 界面使 NGC 目錄中的軟件發現和隨后在 Base Command Platform 中的使用變得順暢。您不必在非設計用于一起使用的工具之間進行轉換。
除了提供對公共 NGC 目錄的訪問,您還可以訪問專用于 Base Command Platform 環境的 private registry 。根據開發人員的要求,私有注冊表對于保持容器、模型和軟件的私有性和安全性非常有用。
Base Command Platform 提供了一組豐富的 user management controls 。當您被邀請使用 Base Command Platform 環境(稱為組織)時,管理員可以通過一組基于角色的訪問控制來限制您在平臺上上載和與內容交互的能力。這些控制可以應用于根組織,也可以應用于團隊的概念。
根據管理員如何配置團隊,團隊與根組織的差異可能很小或很大。例如,可以只向團隊提供對私有注冊表容器或資源子集的訪問。當加入團隊時,您可能被禁止將自己的容器上傳到私有注冊表。
組織管理員可以混合和匹配這些功能,為給定的用戶或組提供適當級別的功能。管理員還可以為特定用戶( GPU 和存儲容量)設置組織中的硬件使用配額。
基本指揮平臺 web 界面將關鍵用戶交互點放在前面和中間(左側):
- Jobs: 在 NVIDIA Base Command Platform 計算資源上運行的容器列表。
- Datasets: 可裝入作業的只讀數據輸入。
- Workspaces: 讀/寫持久存儲,也可以裝載到作業中。
視頻 1 。面向用戶的 Base Command Platform 用戶界面演練
簡單而強大的硬件抽象
在 Base Command Platform 中,管理的硬件資源通過兩個概念呈現給用戶:加速計算環境( ACE )和 ACE 內的實例。
ACE 是一組硬件資源的組合:計算、網絡和存儲。實例從 ACE 內的系統中選擇作業所需的 CPU 、 RAM 和 GPU 資源量。
ACE 可以支持多種實例類型,具體取決于其底層硬件組成。管理員可以通過 GPU 小時的配額限制這些資源的使用,并完全限制組織中特定用戶的實例類型可用性。
基礎指揮平臺資源通過底層基礎設施提供的業界領先技術連接。 NVIDIA NVLink 、 NVIDIA InfiniBand 和高性能以太網連接作為 Base Command Platform 環境設計的一部分進行了集成,以最大化管理硬件資源的價值。
Base Command Platform 中的調度器旨在利用拓撲感知,在提交作業時為作業提供最佳資源使用。
數據集和工作區
Data management 是 Base Command Platform 功能的核心。在實驗期間,數據集、模型和源代碼必須可用于計算資源。
數據集和工作空間概念是 Base Command Platform 解決這個問題的方法。數據集是創建后的只讀存儲構造,具有與私有注冊表內容相同的共享功能。它們可以是特定用戶專用的,可以與組織中的任意數量的團隊共享,也可以與整個組織共享。
工作空間更加靈活。它們可讀寫,但如果需要,可以在作業中使用時標記為只讀。工作區共享功能與數據集支持的功能相同。
數據集在上載或轉換時通過 web 界面或 CLI 創建。我們將在本文稍后討論工作時討論轉換。首先創建工作區,然后作為作業的一部分或通過直接上載(類似于數據集)填充數據。
那么,你為什么要用一個來代替另一個呢?
數據集非常適合必須按原樣廣泛共享的不可變數據。通常,這是一個不再需要修改的數據集,但也可以包括用于共享的許可證文件或 API 密鑰。它們可以被廣泛共享,因為它們不可能被修改。
工作空間非常適合作為正在進行的數據的著陸點:數據集、在容器外部維護的源代碼,甚至是正在開發的模型集合。工作空間可以廣泛共享,但由于默認情況下它們是可寫的,因此廣泛共享可能需要用戶之間的額外協調和意識。
Base Command Platform 中給定用戶可用的聚合數據集和工作空間容量由組織管理員設置的用戶存儲配額控制。您可以在 Base Command Platform 儀表板上查看存儲配額以及當前存儲使用情況。
還有一種額外的存儲類型 result ,它會影響此容量,稍后我們將在作業上下文中對此進行討論。當超過配額時,如果環境管理員啟用,則可以請求額外的容量。
在工作中把所有這些都整合在一起
Base Command Platform 使用 jobs 操作數據、計算資源、 NGC 目錄和私有注冊表內容。
作業創建從資源選擇開始。您將獲得可用的 ACE 供您的組織和團隊使用。您可以訪問多個 ACE ,但作業必須在單個 ACE 中執行。
選擇 ACE 后,可以從該 ACE 中的可用實例類型中進行選擇。對于多節點作業,唯一可用的實例是利用所選 ACE 內給定系統類型可用的最大 CPU 、 RAM 和 GPU 資源的實例。
如果需要,請選擇 ACE 、實例類型和多節點啟動選項。接下來,您可以指定作為要裝載到目標作業中的所選 ACE 的一部分的數據集和工作區,以及它們每個的所需裝載點。在這里,工作區可以標記為只讀。
還必須指定作業的結果存儲路徑。其結果是一個特定于作業的讀/寫存儲池,用于保存完成后要從作業中保留的工件,以及stderr
和stdout
。如前所述,結果所消耗的容量將計入您的配額。
然后,您必須選擇Container
對象和有效容器Tag
。您可以從 NGC 目錄以及您有權訪問的私有注冊表容器中選擇容器。如果選擇多節點作業,則僅在 NGC 目錄或專用注冊表中標記為支持多節點功能的容器作為選項顯示。
現在,您可以指定一個或多個命令,甚至指定一個服務(如 JupyterLab 、 Visual Studio Code Server 或 NVIDIA Triton 推理服務器),以便在作業處于活動狀態時在所選容器內運行。如果需要外部端口來公開 web 界面或其他端點,則必須使用 添加容器端口 選項添加一個或多個端口。
既然指定了作業,還有幾個選項可供配置:
- 作業優先級
- 新作業名稱
- 如果被搶占,工作如何表現
- 作業的最大運行時間
- 遙測采集的時間片間隔
- 自定義標簽
視頻 2 。在運行 JupyterLab 的 Base Command Platform 作業中使用 NGC 目錄中的資源的示例工作流
與正在運行和已完成的作業交互
啟動作業后,將重定向到特定于該作業的頁面,其中啟動詳細信息位于 Overview 選項卡上。事實上, Command 部分提供了啟動表單的等效 CLI 版本。
作業以易于復制的方式呈現:通過復制 CLI 表示或通過 web 界面克隆作業。如果在啟動時向作業添加了端口,則 URL 端點也可用(視頻 2 )。
對于計劃的、正在運行的或已完成的作業,還有幾個附加選項卡:
- Telemetry: 鍵 performance metrics 用于一段時間內的作業。
- Status History: 作業和關聯副本所處的狀態列表。
- Results: 查看已保存到作業結果目錄的文件的方法。
- Log: 可搜索、實時訪問作業的標準輸出。
作業完成后,特定于作業的頁面仍然可以訪問,并且可以用作將來作業的參考,或者在某些事情沒有按預期進行時進行進一步的調試。可以輕松檢索作業的結果目錄和日志文件。根據作業的編寫方式,所需的作業工件可能位于工作區而不是結果目錄中。
Base Command Platform 為從工作區下載數據提供 CLI 支持。然后,作業產生的工件可以上傳到 Base Command Platform ,公開或保存在組織的私有注冊表中。它為 Base Command Platform 中的進一步實驗或在其他地方部署的模型的關鍵組件提供了起點。
有關詳細信息,請參見 Managing Jobs 。
使用 NGC API 的 MLOps 集成
您可以通過記錄的 NGC API 通過外部軟件集成進一步增強和擴展 Base Command Platform 功能。
NGC API 可用于基本指揮平臺之外的工作流集成或儀表板,如第三方 MLOps 平臺和工具。 MLOps 軟件和服務提供商將其獨特的產品與 Base Command Platform 集成,包括 Weights & Biases 和 Rescale 。
隨著基礎指揮平臺功能的發展和擴展, NGC API 使新的和現有的軟件生態系統能夠將其優勢集成到其他專門構建的解決方案中。
結論
Base Command Platform 是 NVIDIA 的關鍵工具之一,用于使開發人員能夠訪問 AI 基礎設施。為了親身體驗 Base Command Platform 的工作原理, NVIDIA 通過 NVIDIA LaunchPad 提供了一系列實驗。一些實驗室涵蓋了自然語言處理和醫學成像方面的特定用例,其他實驗室則是為獲得基本指揮平臺功能方面的經驗而定制的。
了解如何 use NVIDIA Base Command Platform to accelerate your containerized AI training workloads 。