vcadd指令抽象。
根据指令的入参将tensor进行reduce维度,在mskpp指令体系里由reduce_num控制shape缩减倍数,并保持输入输出tensor的shape维度一致。当shape最后一维reduce到1,则将该维度消除。需保证shape中最后一维能够被reduce_num整除且不为0。
class vcadd(x, y, reduce_num)
参数名 |
输入/输出 |
数据类型 |
说明 |
---|---|---|---|
x |
输入 |
tensor变量 |
输入x向量tensor。支持FP16、FP32。 |
reduce_num |
输入 |
int |
指定最后一维reduce到多少倍,此参数的取值对该指令的性能无影响。 |
y |
输出 |
tensor变量 |
输出y向量tensor。支持FP16、FP32。 |
ub_x, ub_y = Tensor("UB"), Tensor("UB") reduce_num = 16 ub_x.load(gm_x) out = vcadd(ub_x, ub_y, reduce_num)()
reduce_num不能为0。