SIMD指令执行模型
单指令多数据流指令,指单条指令可以完成多个数据操作。昇腾AI处理器的SIMD指令的基本操作单位分布在空间和时间两个维度,其中空间上会进行分组(以block为单位),时间上会进行迭代(迭代单位为repeat)。一般1个block为32Byte,包括16个float16/uint16/int16、8个float32/uint32/int32或32个int8/uint8的elements。
相邻repeat内的相同block的偏移只支持线性模式,即用户需要指定下次repeat每个block的地址偏移。
TIK的SIMD指令主要的操作数为Tensor,少量操作数为标量(Scalar/立即数)。按照数据流,可分为按element操作与归约(以下称为Reduce)操作,前者根据源操作数的数目(计入标量操作数)可分为单目、双目与三目指令。
父主题: 矢量计算