昇腾社区首页
中文
注册
开发者
下载

aclnnSlice

产品支持情况

[object Object]undefined

功能说明

算子功能:在指定维度dimdim上,根据给定的范围[start,end][start, end]和步长stepstep,从输入张量selfself中提取子张量outoutstartstartendend可以取[0,self.shape[dim]][0, self.shape[dim]]以外的值,取值后根据以下公式转换为合法值,假设self.shape[dim] = N:

start={0,if  start<NN,if  start>=N(start+N)%N,otherwisestart = \begin{cases} &0, & if\;start < -N \\ &N, & if\;start >= N\\ &(start+N) \% N, & otherwise \end{cases} end={N,if  end>=Nstart,else  if  (end+N)%N<start(end+N)%N,otherwiseend = \begin{cases} &N, & if\; end >= N\\ &start, & else\;if\; (end+N)\%N < start \\ &(end+N)\%N, & otherwise\\ \end{cases}

out.shapeout.shapeself.shapeself.shape只有dim轴上不一致,其他轴一致:

out.shape[dim]=endstart+step1stepout.shape[dim] = ⌊\frac{end - start + step - 1}{step}⌋

函数原型

每个算子分为,必须先调用“aclnnSliceGetWorkspaceSize”接口获取计算所需workspace大小以及包含了算子计算流程的执行器,再调用“aclnnSlice”接口执行计算。

[object Object]
[object Object]

aclnnSliceGetWorkspaceSize

  • 参数说明:

    [object Object]
  • [object Object]Atlas 训练系列产品[object Object]:数据类型不支持BFLOAT16。

  • 返回值:

    aclnnStatus:返回状态码,具体参见

    第一段接口完成入参校验,出现以下场景时报错:

    [object Object]

aclnnSlice

  • 参数说明:

    [object Object]
  • 返回值:

    aclnnStatus:返回状态码,具体参见

约束说明

无。

调用示例

示例代码如下,仅供参考,具体编译和执行过程请参考

[object Object]