下载
中文
注册

vec_max

功能说明

按element求最大值:

函数原型

vec_max(mask, dst, src0, src1, repeat_times, dst_rep_stride, src0_rep_stride, src1_rep_stride)

参数说明

请参见参数说明

dst/src0/src1的数据类型需要保持一致。

Atlas 200/300/500 推理产品,dst/src0/src1支持的数据类型为:Tensor(float16/float32/int32)

Atlas 训练系列产品,dst/src0/src1支持的数据类型为:Tensor(float16/float32/int32)

Atlas推理系列产品AI Core,dst/src0/src1支持的数据类型为:Tensor(float16/int16/float32/int32)

Atlas推理系列产品Vector Core,dst/src0/src1支持的数据类型为:Tensor(float16/int16/float32/int32)

Atlas A2训练系列产品/Atlas 800I A2推理产品,dst/src0/src1支持的数据类型为:Tensor(float16/int16/float32/int32)

Atlas 200/500 A2推理产品,dst/src0/src1支持的数据类型为:Tensor(float16/int16/float32/int32/uint8/int8)

AS31XM1X AI处理器,dst/src0/src1支持的数据类型为:Tensor(float16/int16/float32/int32/uint8/int8)

返回值

支持的型号

Atlas 200/300/500 推理产品

Atlas 训练系列产品

Atlas推理系列产品AI Core

Atlas推理系列产品Vector Core

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

Atlas 200/500 A2推理产品

注意事项

请参考注意事项

调用示例

此样例是针对数据量较小、一次搬运就可以完成的场景,目的是让大家了解接口的功能,更复杂的数据量较大的样例可参见调用示例

from tbe import tik
tik_instance = tik.Tik()
src0_gm = tik_instance.Tensor("float16", (128,), name="src0_gm", scope=tik.scope_gm)
src1_gm = tik_instance.Tensor("float16", (128,), name="src1_gm", scope=tik.scope_gm)
dst_gm = tik_instance.Tensor("float16", (128,), name="dst_gm", scope=tik.scope_gm)
src0_ub = tik_instance.Tensor("float16", (128,), name="src0_ub", scope=tik.scope_ubuf)
src1_ub = tik_instance.Tensor("float16", (128,), name="src1_ub", scope=tik.scope_ubuf)
dst_ub = tik_instance.Tensor("float16", (128,), name="dst_ub", scope=tik.scope_ubuf)
# 将用户输入数据从gm搬运到ub
tik_instance.data_move(src0_ub, src0_gm, 0, 1, 8, 0, 0)
tik_instance.data_move(src1_ub, src1_gm, 0, 1, 8, 0, 0)
tik_instance.vec_max(128, dst_ub, src0_ub, src1_ub, 1, 8, 8, 8)
# 将计算结果从ub拷贝到目标gm
tik_instance.data_move(dst_gm, dst_ub, 0, 1, 8, 0, 0)

tik_instance.BuildCCE(kernel_name="vec_max", inputs=[src0_gm, src1_gm], outputs=[dst_gm])

结果示例:

输入数据(src0_gm):
[-1.961  -2.916   6.99   -1.839   1.703   2.193   3.652   0.2793 -9.48
 -8.27    8.695   9.86    8.09    1.984   8.19    5.566   5.46   -9.72
 -3.336   6.79    5.887  -4.098  -1.636   4.9    -3.248  -5.938   8.75
 -5.99    3.143  -0.718   2.879   7.367  -5.715  -2.287   8.664  -0.2922
  7.14   -0.3672  6.703  -9.234  -6.266   0.5137  2.121   3.023  -0.436
 -7.35    0.6846  3.174  -1.753  -2.621  -6.78    8.55    5.992  -6.145
 -9.805  -8.516   2.924  -3.398   5.6     8.62   -8.914  -5.395  -5.53
 -3.389   4.793   7.64    8.71   -2.686   0.834  -2.748  -2.34    8.23
 -0.5454  5.402  -8.15    8.555  -0.0935  2.389   5.57   -0.941  -8.36
  4.113  -1.774   7.414  -0.2961  4.703   3.172  -6.125  -9.82    7.254
  8.78    6.87    7.977  -8.97    0.7637 -5.71   -3.367   0.967  -2.375
  8.17    3.307   3.402   0.2358 -5.02    1.235  -2.88    7.54    9.97
 -3.115   6.746   7.5    -3.65    4.547  -4.984   6.992   5.67    2.676
  9.84   -0.1356 -8.61    1.213  -2.215   8.516   1.431  -9.984  -2.16
  2.705   0.1729]

输入数据(src1_gm):
[-6.586   7.844   6.52    8.99   -3.984  -7.21    8.47   -7.32    5.62
 -6.625   1.09    6.81   -5.605  -4.117  -4.855  -4.434  -8.484   9.02
 -0.4868  4.99   -0.651  -4.582   2.186   0.6377 -5.89   -0.547  -4.12
  6.715  -9.16   -1.182  -0.467  -7.97   -9.61    3.857   3.025   5.344
  6.242  -0.908  -3.492  -3.771   0.6377  4.7     3.822  -0.3733  1.949
 -7.89   -9.     -8.6    -1.557   8.4     9.93    8.23    1.87    6.934
 -3.264  -1.156  -1.502   0.616   8.51    0.9644  7.945   0.7334 -3.201
 -9.05   -1.673  -4.426   2.31    5.535   2.754  -9.15    9.06   -3.129
 -7.523  -4.65    9.03   -1.503  -1.194  -2.28   -7.766  -8.31   -9.68
  6.97   -5.066   3.223  -4.758  -4.027   4.31    3.822   3.312  -1.498
 -3.06   -6.69   -6.41   -4.28    8.85    4.56    8.33   -8.85   -3.389
  7.316   0.646   5.438   9.03    4.105  -1.482  -8.914  -4.934  -4.848
  8.695  -6.715   6.938  -5.152   9.56    0.44   -6.01    3.645  -7.707
  3.809  -7.113   1.084   4.32   -3.084  -4.723  -3.74    2.197   8.24
 -2.998  -9.766 ]

输出数据(dst_gm):
[-1.961   7.844   6.99    8.99    1.703   2.193   8.47    0.2793  5.62
 -6.625   8.695   9.86    8.09    1.984   8.19    5.566   5.46    9.02
 -0.4868  6.79    5.887  -4.098   2.186   4.9    -3.248  -0.547   8.75
  6.715   3.143  -0.718   2.879   7.367  -5.715   3.857   8.664   5.344
  7.14   -0.3672  6.703  -3.771   0.6377  4.7     3.822   3.023   1.949
 -7.35    0.6846  3.174  -1.557   8.4     9.93    8.55    5.992   6.934
 -3.264  -1.156   2.924   0.616   8.51    8.62    7.945   0.7334 -3.201
 -3.389   4.793   7.64    8.71    5.535   2.754  -2.748   9.06    8.23
 -0.5454  5.402   9.03    8.555  -0.0935  2.389   5.57   -0.941  -8.36
  6.97   -1.774   7.414  -0.2961  4.703   4.31    3.822   3.312   7.254
  8.78    6.87    7.977  -4.28    8.85    4.56    8.33    0.967  -2.375
  8.17    3.307   5.438   9.03    4.105   1.235  -2.88    7.54    9.97
  8.695   6.746   7.5    -3.65    9.56    0.44    6.992   5.67    2.676
  9.84   -0.1356  1.084   4.32   -2.215   8.516   1.431   2.197   8.24
  2.705   0.1729]