MatmulApiTiling.get_base_k(self) |
获取Tiling计算得到的baseK值。 |
MatmulApiTiling.get_base_m(self) |
获取Tiling计算得到的baseM值。 |
MatmulApiTiling.get_base_n(self) |
获取Tiling计算得到的baseN值。 |
MatmulApiTiling.get_tiling(self, tiling) |
获取Tiling参数。 |
MatmulApiTiling.set_a_layout(self, b, s, n, g, d) |
设置A矩阵的Layout轴信息,包括B、S、N、G、D轴。对于BSNGD、SBNGD、BNGS1S2 Layout格式,调用IterateBatch接口之前, 需要在Host侧Tiling实现中通过本接口设置A矩阵的Layout轴信息。 |
MatmulApiTiling.set_a_type(self, pos, type, ...) |
设置A矩阵的位置,数据格式,数据类型,是否转置等信息,这些信息需要和kernel侧的设置保持一致。 |
MatmulApiTiling.set_b_layout(self, b, s, n, g, d) |
设置B矩阵的Layout轴信息,包括B、S、N、G、D轴。对于BSNGD、SBNGD、BNGS1S2 Layout格式,调用IterateBatch接口之前, 需要在Host侧Tiling实现中通过本接口设置B矩阵的Layout轴信息。 |
MatmulApiTiling.set_b_type(self, pos, type, ...) |
设置B矩阵的位置,数据格式,数据类型,是否转置等信息,这些信息需要和kernel侧的设置保持一致。 |
MatmulApiTiling.set_batch_info_for_normal(...) |
设置A/B矩阵的M/N/K轴信息,以及A/B矩阵的Batch数。Layout类型为NORMAL的场景, 调用IterateBatch或者IterateNBatch接口之前,需要在Host侧Tiling实现中通过本接口设置A/B矩阵的M/N/K轴等信息。 |
MatmulApiTiling.set_batch_num(self, batch) |
设置多Batch计算的最大Batch数,最大Batch数为A矩阵batchA和B矩阵batchB中的最大值。 调用IterateBatch接口之前,需要在Host侧Tiling实现中通过本接口设置多Batch计算的Batch数。 |
MatmulApiTiling.set_bias_type(self, pos, ...) |
设置Bias的位置,数据格式,数据类型,是否转置等信息,这些信息需要和kernel侧的设置保持一致。 |
MatmulApiTiling.set_buffer_space(self[, ...]) |
设置Matmul计算时可用的L1 Buffer/L0C Buffer/Unified Buffer/BiasTable Buffer空间大小,单位为字节。 |
MatmulApiTiling.set_c_layout(self, b, s, n, g, d) |
设置C矩阵的Layout轴信息,包括B、S、N、G、D轴。对于BSNGD、SBNGD、BNGS1S2 Layout格式,调用IterateBatch接口之前, 需要在Host侧Tiling实现中通过本接口设置C矩阵的Layout轴信息。 |
MatmulApiTiling.set_c_type(self, pos, type, ...) |
设置C矩阵的位置,数据格式,数据类型,是否转置等信息,这些信息需要和kernel侧的设置保持一致。 |
MatmulApiTiling.set_dequant_type(self, ...) |
该接口用于设置量化或反量化的模式。 |
MatmulApiTiling.set_double_buffer(self, a, ...) |
设置A/B/C/Bias是否使能double buffer功能,以及是否需要做ND2NZ或者NZ2ND的转换,主要用于Tiling函数内部调优。 |
MatmulApiTiling.set_fix_split(self[, ...]) |
设置A/B/C/Bias是否使能double buffer功能,以及是否需要做ND2NZ或者NZ2ND的转换,主要用于Tiling函数内部调优。 |
MatmulApiTiling.set_mad_type(self, mad_type) |
设置是否使能HF32模式。当前版本暂不支持。 |
MatmulApiTiling.set_matmul_config_params(...) |
在计算Tiling时,用于自定义设MatmulConfig参数。本接口中配置的参数对应的功能在Tiling与Kernel中需要保持一致,所以本接口中的参数取值,需要与Kernel侧对应的MatmulConfig参数值保持一致。 |
MatmulApiTiling.set_org_shape(*args, **kwargs) |
设置Matmul计算时的原始完整的形状M、N、K或Ka/Kb,单位均为元素个数。 |
MatmulApiTiling.set_shape(self, m, n, k) |
设置Matmul计算的形状m、n、k,该形状可以为原始完整矩阵或其局部矩阵,单位为元素。该形状的矩阵乘可以由单核或多核计算完成。 |
MatmulApiTiling.set_sparse(self[, is_sparce_in]) |
设置Matmul的使用场景是否为Sparse Matmul场景。 |
MatmulApiTiling.set_split_range(self[, ...]) |
设置baseM/baseN/baseK的最大值和最小值。 目前Tiling暂时不支持该功能。 |
MatmulApiTiling.set_traverse(self, traverse) |
设置固定的Matmul计算方向,M轴优先还是N轴优先。 |