已关闭
embedding_dense_grad支持Ascend950 #814
cpy_123456创建于  2月5日关闭于  2月9日
cpy_123456成员
2月5日 创建

Thanks for sending an requirement! Please fill in the following template to help quickly solve your problem.

Backgroud(背景信息)

embedding_dense_grad支持Ascend950(开源迁移)
算子功能:实现Embedding的反向计算,将相同索引indices对应grad的一行累加到out上。
关联pr:https://gitcode.com/cann/canndev/pull/80091

Origin(信息来源)

turing

Benefit / Necessity (价值/作用)

embedding_dense_grad支持Ascend950

Design(设计方案)

embedding_dense_grad支持Ascend950
输入输出设计

参数名 输入/输出/属性 描述 数据类型 数据格式
grad 计算输入 数据的原始梯度,Device侧的aclTensor,支持维度2-8维,除尾轴外合轴后shape与indices合轴后shape相同;支持非连续的Tensor。 BFLOAT16、FLOAT16、FLOAT ND
indices 计算输入 grad输入对应的索引值,Device侧的aclTensor,取值范围为[0, numWeights),支持维度1-8维,支持非连续的Tensor。 FLOAT、FLOAT16、DOUBLE、INT32、INT64、INT16、INT8、UINT8、BOOL ND
numWeights 计算输入 输出tensor的首轴大小(uint64_t)。 UINT64 -
paddingIdx 计算输入 将输出tensor中第paddingIdx行填充成0;若paddingIdx为负数则不进行处理(uint64_t)。 UINT64 -
scaleGradByFreq 计算输入 是否根据单词出现频率对梯度进行缩放。true:按词频缩放;false:不处理。 Bool -
out 计算输出 梯度求和的结果输出,Device侧的aclTensor,维度为2维,首轴大小为numWeights,尾轴大小与grad尾轴相同,仅支持ND格式。 BFLOAT16、FLOAT16、FLOAT ND
likedislike
Ccpy_123456成员
2月5日 关联了pull request:open op embedding_dense_grad
Ccpy_123456成员
2月5日 修改标题为 “开源开放embdding_dense_grad算子”,原标题为“[Requirement|需求建议]: ”
cpy_123456成员
2月5日 评论:

/assign

likedislike
CANN-robotCANN-robot成员
2月5日 将 cpy_123456 设为负责人
Ccpy_123456成员
2月5日 修改了issue 的描述
cpy_123456成员
2月5日 评论:

/assign

likedislike
CANN-robot
CANN-robot成员
2月5日 评论:

Notice

This issue is already assigned to cpy_123456. Please do not assign repeatedly.

likedislike
Ccpy_123456成员
2月6日 修改标题为 “embedding_dense_grad支持Ascend950”,原标题为“开源开放embdding_dense_grad算子”
Ccpy_123456成员
2月6日 修改了issue 的描述
Ccpy_123456成员
2月6日 修改了issue 的描述
Ccpy_123456成员
2月6日 修改了issue 的描述
Ccpy_123456成员
2月6日 修改了issue 的描述
Ccpy_123456成员
2月6日 修改了issue 的描述
CANN-robotCANN-robot成员
2月9日 关闭了 issue
CANN-robotCANN-robot成员
3月20日 添加了label:resolved