Merlin HugeCTR(以下簡稱 HugeCTR)是 GPU 加速的推薦程序框架,旨在在多個 GPU 和節點之間分配訓練并估計點擊率(Click-through rate)。
V3.8 版本新增內容
1. 第三代 Embedding 的示例:
這個版本我們新增了一個示例筆記本,介紹了 Embedding 集合的 Python API 以及第三代 Embedding 的使用方法。
2. 用于分級參數服務器查找功能的 DLPack Python API:
這個版本我們引入了對使用 DLPack Python API 從分層參數服務器 (HPS) 查找 Embedding 的支持。新方法是 lookup_fromdlpack()。
3. 使用 Python API 從 HDFS 讀取 Parquet 數據集:
現在您可以通過 DataSourceParams 來指定 Data Reader 的數據源的配置了,例如 Hadoop 分布式文件系統的 NameNode 的主機名和 NameNode 端口號。
4. 提高了日志記錄的性能。
5. 層類的改進:
全連接層現已支持 3 維輸入,Matrix Multiply 層現已支持 4 維輸入。
6. 文檔的改進:
a. 增加了導航長頁面以提供更好的體驗。
b. Criteo 1TB 點擊日志數據集的 URL 已更新。
7. 修復的問題:
修復了 _metadata.json 配置文件內的文件名和實際數據集文件名不一致的問題。
修復了在 AUC 預熱期間在多個 GPU 上運行大型模型時發生的內存崩潰問題。
修復了 ETC 筆記本中鍵集生成的問題。
修復了使用調試模式編譯時發生的編譯錯誤。
修復多節點訓練出現重復日志的問題。
V3.9 版本新增內容
1. 第三代 Embedding 的更新:
更新了 SOK 以使用 HugeCTR 第三代 Embedding 作為開發者預覽版本。
啟用了基于 cuCollection的動態Embedding 模式。動態的Embedding能夠在用戶不配置內存使用信息時自動拓展。
2. 全新的多節點訓練教程:
我們提供了一個全新的基于 HugeCTR 最新 Docker 容器使用多節點訓練的實例。
3. 現已支持 MMoE 模型的離線推理并提供了 Per-class AUC 和平均 AUC 計算。
4. 對 HPS TensorFlow 插件使用的文檔和實例更新:
一個新的簡介文檔。
新的實例筆記本。
新的API文檔。
5. 修復的問題:
修復了一個訓練性能受到 GPU 例程檢查影響的問題。該例程檢查輸入的 key 是否在規定的 Embedding Table 范圍內。對于可以保證輸入的 key 能放在指定的 workspace_size_per_gpu_in_mb 的情況,我們提供了一種解決方法:通過設置環境變量 HUGECTR_DISABLE_OVERFLOW_CHECK=1 來關閉例程檢查,以便恢復訓練性能。
我們修復了一個 Softmax 層的正確性問題。
我們刪除了一個未更新且不再使用的內聯分析器。
已知問題
以下是目前HugeCTR存在的已知問題,我們將在之后的版本中盡快修復。
HugeCTR 使用 NCCL 在 rank 之間共享數據,并且 NCCL 可能需要共享系統內存用于 IPC 和固定(頁面鎖定)系統內存資源。在容器內使用 NCCL 時,建議您通過發出以下命令來增加這些資源 -shm-size=1g -ulimit memlock=-1
另見 NCCL 的 已知問題。
還有 GitHub 問題。
目前即使目標 Kafka broker 無響應,KafkaProducers 啟動也會成功。為了避免與來自 Kafka 的流模型更新相關的數據丟失,您必須確保有足夠數量的 Kafka brokers 啟動、正常工作并且可以從運行 HugeCTR 的節點訪問。
文件列表中的數據文件數量應不小于數據讀取器的數量。否則,不同的 data reader worker 將被映射到同一個文件,導致數據加載不會按預期進行。
正則化器暫時不支持聯合損失訓練。
審核編輯:湯梓紅
-
gpu
+關注
關注
28文章
4729瀏覽量
128890 -
python
+關注
關注
56文章
4792瀏覽量
84628 -
GitHub
+關注
關注
3文章
469瀏覽量
16428
原文標題:HugeCTR v3.8 & v3.9 發布說明
文章出處:【微信號:NVIDIA_China,微信公眾號:NVIDIA英偉達】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論