下载
中文
注册

Slice

支持的产品型号

Atlas 训练系列产品

Atlas A2训练系列产品/Atlas 800I A2推理产品

Atlas 推理系列产品

函数功能

从输入tensor中提取想要的切片。

函数原型

  • const aclTensor *Slice(const aclTensor *x, const aclIntArray *offsets, const aclIntArray *size, aclOpExecutor *executor)
  • const aclTensor *Slice(const aclTensor *x, const aclTensor *y, const aclTensor *offset, const aclTensor *size, aclOpExecutor *executor)

参数说明

参数

输入/输出

说明

x

输入

输入tensor,数据类型支持FLOAT16、FLOAT、BOOL、INT8、UINT8、INT16、UINT16、INT32、UINT32、INT64、BFLOAT16、UINT64。数据格式支持ND。

说明:

BFLOAT16适用于如下产品型号:

Atlas A2训练系列产品/Atlas 800I A2推理产品

y

输出

切片后的输出tensor,数据类型支持FLOAT16、FLOAT、BOOL、INT8、UINT8、INT16、UINT16、INT32、UINT32、INT64、BFLOAT16、UINT64数据格式支持ND。

说明:

BFLOAT16适用于如下产品型号:

Atlas A2训练系列产品/Atlas 800I A2推理产品

offsets

输入

const aclIntArray*类型,表示输入x在各个维度切片的起始位置,其形状为x的维度。数据类型支持INT32、INT64。数据格式支持ND。

offset

输入

const aclTensor*类型,表示输入x在各个维度切片的起始位置,其形状为x的维度。数据类型支持INT32、INT64。数据格式支持ND。

size

输入

输入x的各个维度切片的大小,其形状为x的维度。支持aclIntArray*、aclTensor*类型。数据类型支持INT32、INT64。数据格式支持ND。

executor

输入

op执行器,包含了算子计算流程。

返回值说明

返回类型和输入tensor一样、shape为size的tensor。

约束说明

调用示例

// 调用l0op::Slice对每一块进行处理
auto sliceRes = l0op::Slice(self, offsetArray, sizeArray, executor);
// 调用l0op::Slice对每一块进行处理
auto sliceRes = l0op::Slice(xTensor, yTensor, offsetTensor, sizeTensor, executor);