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]