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

aclnnForeachSubList

支持的产品型号

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

接口原型

每个算子分为,必须先调用“aclnnForeachSubListGetWorkspaceSize”接口获取入参并根据计算流程计算所需workspace大小,再调用“aclnnForeachSubList”接口执行计算。

  • [object Object]
  • [object Object]

功能描述

  • 算子功能:返回一个和输入张量列表同样形状大小的新张量列表,它的每一个张量是输入的两个张量列表的相减运算的结果。

  • 计算公式:

  • outi=x1x2alphaout_i = x_1-{x_2}*alpha

aclnnForeachSubListGetWorkspaceSize

  • 参数说明

    • x1(aclTensorList*,计算输入):公式中的[object Object],Device侧的aclTensorList,数据类型支持FLOAT、FLOAT16、BFLOAT16、INT32。支持ND,shape维度不高于8维。支持
    • x2(aclTensorList*,计算输入):公式中的[object Object],Device侧的aclTensorList,数据类型支持FLOAT、FLOAT16、BFLOAT16、INT32,支持ND,shape维度不高于8维。数据类型、数据格式和shape跟入参[object Object]的数据类型、数据格式和shape一致。支持
    • alpha(aclTensor*,计算输入):公式中的[object Object],Host侧的aclTensor,支持ND。支持。数据类型支持FLOAT、FLOAT16、INT32,且与入参[object Object]的数据类型具有一定对应关系:
      • [object Object]的数据类型为FLOAT、FLOAT16、INT32时,数据类型与[object Object]的数据类型保持一致。
      • [object Object]的数据类型为BFLOAT16时,数据类型支持FLOAT。
    • out(aclTensorList*,计算输出):公式中的[object Object],Device侧的aclTensorList,数据类型支持FLOAT、FLOAT16、BFLOAT16、INT32,支持ND,shape维度不高于8维。数据类型、数据格式和shape跟入参[object Object]的数据类型、数据格式和shape一致。支持
    • workspaceSize(uint64_t*,出参):返回用户需要在Device侧申请的workspace大小。
    • executor(aclOpExecutor**,出参):返回op执行器,包含了算子计算流程。
  • 返回值

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

    [object Object]

aclnnForeachSubList

  • 参数说明

    • workspace(void*,入参):在Device侧申请的workspace内存地址。
    • workspaceSize(uint64_t,入参):在Device侧申请的workspace大小,由第一段接口aclnnForeachSubListGetWorkspaceSize获取。
    • executor(aclOpExecutor*,入参):op执行器,包含了算子计算流程。
    • stream(aclrtStream,入参):指定执行任务的AscendCL Stream流。
  • 返回值

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

约束与限制

无。

调用示例

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

[object Object]