aclnnIndexSelect
产品支持情况
功能说明
接口功能:从输入Tensor的指定维度dim,按index中的下标序号提取元素,保存到out Tensor中。 例如,对于输入张量 和索引张量 index=[1, 0], self.index_select(0, index)的结果: ;
x.index_select(1, index)的结果: ;
计算公式:
以三维张量为例, shape为(3,2,2)的张量 self = index=[1, 0], self张量dim=0、1、2对应的下标分别是, index是一维
dim为0, index_select(0, index): I=index[i]; out = self
dim为1, index_select(1, index): J=index[j]; out = self
dim为2, index_select(2, index): K=index[k]; out = self
函数原型
每个算子分为,必须先调用“aclnnIndexSelectGetWorkspaceSize”接口获取计算所需workspace大小以及包含了算子计算流程的执行器,再调用“aclnnIndexSelect”接口执行计算。
[object Object]
[object Object]
aclnnIndexSelectGetWorkspaceSize
参数说明
[object Object]- [object Object]Atlas 推理系列产品[object Object]、[object Object]Atlas 训练系列产品[object Object]:数据类型不支持BFLOAT16。
返回值
第一段接口完成入参校验,出现以下场景时报错:
[object Object]
aclnnIndexSelect
约束说明
当self的shape为[]时,index的shape只能为[1]。
确定性计算:
- aclnnIndexSelect默认确定性实现。
调用示例
[object Object]