0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Merlin HugeCTR第三代 Embedding 功能优化

NVIDIA英伟达企业解决方案 来源:NVIDIA英伟达企业解决方案 作者:NVIDIA英伟达企业解 2022-10-20 09:51 次阅读

Merlin HugeCTR(以下简称 HugeCTR)是 GPU 加速的推荐框架,旨在在多个 GPU 和节点之间分配训练并估计点击率(Click-through rate)。

版本新增内容

HugeCTR 第三代 Embedding 更新:

第三代 Embedding 功能优化:自从在 v3.7 中引入新一代 HugeCTR Embedding 以来,进行了一些更新和优化,包括代码重构以提高可用性。此版本的增强功能如下:

优化了稀疏查找在 warp 间负载不平衡方面的性能。稀疏操作工具包 (SOK) 利用了此优化来提高性能。

修复了用于确定 GlobalEmbeddingData 和 LocalEmbeddingData 类中的最大 Embedding 向量大小的问题。

Sparse Operation Kit 1.1.4 版可以使用 Pip 安装,并包括前面提到的优化。

Embedding 表放置策略的 interface 简化:第三代 Embedding 现在为您提供了一种更简单的方法来配置 Embedding 表的放置策略。您可以使用函数参数配置嵌入表放置策略,而不是使用 JSON。您只需提供 shard_matrix、

table_group_strategy和 table_placement_strategy 参数。使用这些参数,第三代 Embedding 可以将不同的表组合在一起,并根据 shard_matrix 参数放置它们。请参阅示例:https://github.com/NVIDIA-Merlin/HugeCTR/blob/master/test/embedding_collection_test/dlrm_train.py

HugeCTR 分层参数服务器(HPS)更新:

用于 HPS 查找的 on-device 输入键:HPS 查找支持在推理期间位于 GPU 内存上的输入 Embedding 键。此功能移除了主机到设备的副本,并使用 DLPack lookup_fromdlpack() 接口,使得 embedding key 的 DLPack 包装可以是一个 GPU tensor。

使用可配置的比例来初始化 Embedding Cache:在以前的版本中,cache_refresh_percentage_per_iteration 参数的默认值为 0.1。在此版本中,默认值更改为 0.0,并且该参数提供了额外的用途。如果您将参数设置为大于 0.0 的值并且还将模型的 use_gpu_embedding_cache 设置为 True,则当分层参数服务器 (HPS) 启动时,HPS 通过从模型的稀疏文件对 Embedding Cache 进行初始化时,HPS 在会创建日志记录,日志记录类似于模型的 EC 初始化:“《model-name》”、num_tables:《int》 和设备上的 EC 初始化:《int》。这样将会减少预热阶段的持续时间。

HPS 插件的隐式初始化:在此版本中,当您使用 Triton 推理服务器部署 TensorFlow 的 SavedModel 时,首次执行加载的模型时会隐式初始化 HPS。在以前的版本中,您需要显式运行 hps.Init(ps_config_file, global_batch_size)。

ddbb187e-4fb9-11ed-a3b6-dac502259ad0.png

HugeCTR 分层参数服务器(HPS)架构

HugeCTR I/O 模块更新:

支持了 AWS S3 文件系统:Parquet DataReader 现在可以从 Amazon Web Services S3 文件系统读取数据集。您还可以在训练期间从 S3 加载和存储模型。

文件系统使用的简化:您不再需要传递 DataSourceParams 来使用远端文件系统进行模型的加载和存储。 FileSystem 类会根据您在构建模型时指定的路径 URI 自动推断正确的文件系统类型:本地、HDFS 或 S3。例如,路径 hdfs://localhost:9000/ 将被推断为 HDFS 文件系统,路径

https://mybucket.s3.myregion.amazonaws.com/ 将被推断为 S3 文件系统。

支持将模型从远程文件系统加载到 HPS:此版本使您能够在推理期间将模型从 HDFS 和 S3 远程文件系统加载到 HPS。要使用这个新功能,请在 InferenceParams 中为模型文件路径提供准确的 HDFS 或者 S3 URL。

dde854a6-4fb9-11ed-a3b6-dac502259ad0.png

HugeCTR I/O 框架

文档和示例更新:

新的 MMoE 模型示例:

https://github.com/NVIDIA-Merlin/HugeCTR/tree/master/samples/mmoe

新的 HPS 示例笔记本:

https://github.com/NVIDIA-Merlin/HugeCTR/tree/master/hierarchical_parameter_server/notebooks

HPS 文档样式更新:https://nvidia-

merlin.github.io/HugeCTR/master/hierarchical_parameter_server/index.html

删除了两个已弃用的教程 triton_tf_deploy 和 dump_to_tf。

增加了 Performance 相关页面:https://nvidia-merlin.github.io/HugeCTR/master/performance.html

其他更新:

对重叠 Pipeline 进行了更精细的粒度控制:我们弃用了旧的重叠 Pipeline knob,并引入了四个新的 knob:

train_intra_iteration_overlap

train_inter_iteration_overlap

eval_intra_iteration_overlap

eval_inter_iteration_overlap

以帮助用户更好地控制重叠行为。有关详细信息,请参阅 API 文档

https://nvidia-merlin.github.io/HugeCTR/master/api/python_interface.html#createsolver-method

支持在训练过程中将 Tensor 的值导出到 Numpy Array: 为 Model 和 InferenceModel 类新增了 check_out_tensor() 方法。现在用户可以使用这个 Pyhon 方法将 Tensor 的值导出,方便 debug。

修复的问题

InteractionLayer 类已修复,它可以在 num_feas 》 30 时正常工作了。

通过增加工作空间大小和添加结尾掩码来更正 cuBLASLt 配置。

用于演示特征交叉的示例的预处理脚本已修复。

异步数据读取器是固定的。以前,由于不正确的 I/O 块大小和 I/O 对齐问题,它会挂起并报错。AsyncParam 类已更改以实现修复。io_block_size 参数被 max_nr_request 参数替换,并且异步读取器使用的实际 I/O 块大小会相应计算

修复了在调试模式下触发的构建错误。

使用 Parquet DataReader 时,如果 metadata.json 中指定的 Parquet 数据集文件不存在,HugeCTR 不再崩溃,而是跳过丢失的文件并显示警告消息。

已知问题

以下是目前 HugeCTR 存在的已知问题,我们将在之后的版本中尽快修复:

HugeCTR 使用 NCCL 在队列之间共享数据,并且 NCCL 可能需要共享系统内存用于 IPC 和固定(页面锁定)系统内存资源。如果您在容器内使用 NCCL,请在启动容器时通过指定参数 -shm-size=1g -ulimit memlock=-1 来增加这些资源。

即使目标 Kafka 代理没有响应,KafkaProducers 启动也会成功。为避免与来自 Kafka 的流模型更新相关的数据丢失,您必须确保足够数量的 Kafka 代理正在运行、正常运行,并且可以从运行 HugeCTR 的节点访问。

文件列表中的数据文件数量应大于或等于数据读取器工作人员的数量。否则,不同的 worker 会映射到同一个文件,并且数据加载不会按预期进行。

暂时不支持使用正则化器的联合损失训练。

暂时不支持将 Adam 优化器状态导出到 AWS S3。

审核编辑:彭静
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • gpu
    gpu
    +关注

    关注

    28

    文章

    4729

    浏览量

    128901
  • 内存
    +关注

    关注

    8

    文章

    3020

    浏览量

    74011
  • 工具包
    +关注

    关注

    0

    文章

    46

    浏览量

    9530

原文标题:HugeCTR v4.0 & v4.1 发布说明

文章出处:【微信号:NVIDIA-Enterprise,微信公众号:NVIDIA英伟达企业解决方案】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    什么是第三代移动通信

    什么是第三代移动通信答复:第三代移动通信系统IMT2000,是国际电信联盟(ITU)在1985年提出的,当时称为陆地移动系统(FPLMTS)。1996年正式更名为IMT2000。与现有的第二移动
    发表于 06-13 22:49

    第三代移动通信过渡技术—EDGE

    仅限于新的2GHz频段, EDGE技术也能够让使用800、900、1800、1900MHz频段的网络提供第三代移动通信网络的部分功能。在此基础上,Ericsson公司于1997年第一次向ETSI提出了EDGE
    发表于 11-13 21:32

    什么是IR-III技术(第三代红外)?

    IR-III技术定义(IR-III Technology Definition)IR-III技术即红外夜视第三代技术,根植于上世纪60年美国贝尔实验室发明的红外夜视技术,属于一种主动式红外
    发表于 02-19 09:34

    第三代红外技术(IR-III)并不是阵列式

    、帕特罗(PATRO)多功能会议视频摄像机、帕特罗(PATRO)网络视频服务器广州精典科技有限公司的帕特罗(PATRO)第三代红外摄像机就是以IR-III技术研究开发的,将作为红外夜视领域的领先产品
    发表于 02-19 09:35

    liklon的第三代MP3

    `第一没有留下痕迹。第二之前在论坛展示过:https://bbs.elecfans.com/jishu_282495_1_1.html现在第三代诞生:`
    发表于 08-10 15:35

    第三代半导体科普,国产任重道远

    硅材料的研究也非常透彻。基于硅材料上器件的设计和开发也经过了许多的结构和工艺优化和更新,正在逐渐接近硅材料的极限,基于硅材料的器件性能提高的潜力愈来愈小。以氮化镓、碳化硅为代表的第三代半导体具备优异
    发表于 05-15 17:09

    第三代移动通信技术定义

    3G定义 3G是英文3rd Generation的缩写,至第三代移动通信技术。相对于第一模拟制式手机(1G)和第二GSM、TDMA等数字手机(2G)来说,第三代手机是指将无线通信与
    发表于 07-01 07:19

    什么是第三代移动通信网络规划?

    随着第三代移动通信技术的兴起,UMTS网络的建立将带来一场深刻的革命,这对网络规划也提出了更高的要求。在德国轰动一时的UMTS执照拍卖,引起了公众对这一新技术的极大兴趣。第三代移动通信网络的建设正方
    发表于 08-15 07:08

    基于第三代移动通信系统标准的ALC控制方案研究

    基于第三代移动通信系统标准的ALC控制方案的设计与实现
    发表于 01-13 06:07

    浅析第三代移动通信功率控制技术

    浅析第三代移动通信功率控制技术
    发表于 06-07 07:07

    中国第三代半导体名单!精选资料分享

    据业内权威人士透露,我国计划把大力支持发展第三代半导体产业,写入“十四五”规划,计划在2021-2025年期间,在教育、科研、开发、融资、应用等等各个方面,大力支持发展第三代半导体产业,...
    发表于 07-27 07:58

    第三代LonWorks技术和产品介绍

    第三代LonWorks技术和产品介绍 文章介绍了第三代LonWorks技术的应用方向和结构,以及美国Echelon公司新推出的一系列的第三代LonWorks产品以及它们的主要技术特点
    发表于 03-18 09:55 17次下载

    第三代iPad今夏来袭?

    据一向不靠谱的台湾媒体DigiTimes报道,苹果将于今年夏季发布新款第三代iPad。新款第三代iPad将配备来自夏普的IGZO显示屏,这种技术将使iPad变得更薄,电池更耐用。在第三代iPad发布之
    发表于 06-30 11:48 673次阅读

    什么是第三代半导体?第三代半导体受市场关注

    继5G、新基建后,第三代半导体概念近日在市场上的热度高居不下。除了与5G密切相关外,更重要是有证券研报指出,第三代半导体有望纳入重要规划,消息传出后多只概念股受到炒作。证券业人士提醒,有个人投资者
    发表于 09-21 11:57 4003次阅读

    Merlin HugeCTR v4.3 发布说明

    Embedding 更新: 第三代 Embedding 功能优化: 自从在 v3.7 中引入新一
    的头像 发表于 01-05 11:55 778次阅读