Skip to content

Latest commit

 

History

History
54 lines (32 loc) · 2.68 KB

File metadata and controls

54 lines (32 loc) · 2.68 KB

简介

功能介绍

Rec SDK Torch涉及功能如下:

  • 模型训练基础功能

  • 支持单机单卡训练、单机多卡分布式训练。

  • 支持基于Torch开发的模型。

  • 推荐场景特有功能

    基于Rec SDK Torch动态稀疏表方案,Rec SDK Torch提供推荐的必备功能,如哈希映射功能、稀疏表动态扩容、基于HKV(Hierarchical Key-Value)高性能key-value存储加速库实现的动态稀疏表算子等。

  • 大规模稀疏表特有功能

    支持按照Row-wise的分布式稀疏表切分方式。

关键功能特性

Rec SDK Torch为用户提供了哈希映射、Row-wise分表、稀疏表动态扩容与淘汰、动态稀疏表算子等特性。

  • 哈希映射

    Torch提供了用于稠密ID查表的nn.Embedding。但在推荐场景,大部分原始特征ID都是离散型,查表时不便于直接使用。为此基于动态稀疏表的Rec SDK Torch提供了哈希映射功能,支持将离散的特征Key实时映射为存储地址,不需要用户提前做ID连续化转换。

  • Row-wise分表

    在将Embedding切分到不同表时,按行对Embedding进行分表,使用取余分桶策略,按照ID取余的余数确定Embedding在表上的分桶位置。

  • 稀疏表动态扩容与淘汰

    支持稀疏表的弹性扩容。系统会根据新特征的进入自动分配空间。当空间达到阈值时,算子内置的淘汰策略会自动清理低频不活跃特征,确保存储资源的有效利用。

  • 动态稀疏表算子

    提供了深度优化的自定义高性能算子扩展dynamic_emb_extensions,相比原生Torch实现,极大地提升了训练吞吐量。

软件架构

图 1 软件架构图

Rec SDK Torch基于TorchRec、推荐场景主流框架、CANN和各种硬件和网络,对于搜索、推荐、广告模型训练的应用场景需求,提供极简易用、高性能API,助力昇腾AI处理器完成搜索、推荐、广告等模型的高效训练。各个模块的介绍说明如表1所示:

表 1 结构图模块介绍

Rec SDK Torch模块 说明
推荐接口层 提供易用性接口、简化用户接入和迁移成本。支持用户规模化上量。
推荐功能层 核心功能实现层,满足用户的使用要求。
推荐加速层 性能竞争力核心组件,为整机系统提供更优性能。
推荐存储层 支持稀疏表的分布式存储。
Torchrec-npu 开源TorchRec的昇腾适配层。