According to the tosa spec, the input/output type for average pool is always the same, and the accumulator type can be different (especially also larger than the result type, e.g.
fp16 with fp32 accumulate).
However, operators such as
matmul do not have an accumulate attribute, and their output type seems to be matching the accumulator type (implicitly).
Is there a reason why these operators have a different handling of the output types and the accumulate attribute?
I came across this as
tosa.matmul is currently not properly lowered from torch to tosa, the result type will be the same as the input type:
p.s.: I wanted to add links to the tosa spec on
mlplatform, but I wasn’t allowed to.