开发者
资源
[object Object]

📄

[object Object][object Object]undefined
[object Object]
  • 接口功能:将tensor src中的值按指定的轴和方向和对应的位置关系逐个替换/累加/累乘至tensor self中。

  • 示例: 对于一个3D tensor,self会按照如下的规则进行更新:

    [object Object]
  • 在计算时需要满足以下要求:

    • self、index和src的维度数量必须相同。
    • 对于每一个维度d,有index.size(d) <= src.size(d)的限制。
    • 对于每一个维度d,如果d != dim,有index.size(d) <= self.size(d)的限制。
    • dim的值的大小必须在 [-self的维度数量, self的维度数量-1] 之间。
    • self的维度数应该小于等于8。
    • index中对应维度dim的值大小必须在[0, self.size(dim)-1]之间。
[object Object]

aclnnScatter和aclnnInplaceScatter实现相同的功能,使用区别如下,请根据自身实际场景选择合适的算子。

  • aclnnScatter:需新建一个输出张量对象存储计算结果。
  • aclnnInplaceScatter:无需新建输出张量对象,直接在输入张量的内存中存储计算结果。

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

[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
  • 参数说明:

    [object Object]
  • 返回值:

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

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

    [object Object]
[object Object]
  • 参数说明:

    [object Object]
  • 返回值:

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

[object Object]
  • 参数说明:

    [object Object]
  • 返回值:

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

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

    [object Object]
[object Object]
  • 参数说明:

    [object Object]
  • 返回值:

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

[object Object]
  • 确定性计算:
    • aclnnScatter&aclnnInplaceScatter默认确定性实现。
[object Object]

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

aclnnScatter示例代码:

[object Object]

aclnnInplaceScatter示例代码:

[object Object]