ConcatTileFusionPass
Description
Concats the inputs of the Tile operators with the same Multiple to fuse the Tile operators, as shown in the following figures.
Mode 1

Mode 2

Restrictions
- Only Tile/TileD+Concat operators are supported.
- Concat[ConcatD/ConcatV2/ConcatV2D] and Tile/TileD support only one output.
- concat_dim of Concat cannot be the same as the broadcast axis of Tile/TileD.
- Concat supports only data edges. Control edges can exist only in the input of Tile nodes.
- Only static scenarios are supported.
- The inputs of Tile/TileD must have identical multiples and must appear consecutively among the inputs of the Concat. The number of consecutive Tile/TileD operators must be greater than two.
- The product of the input tensor shape dimensions of Tile/TileD must be less than or equal to shape_limited_.
shape_limited_ = vector_calculate_size x 2 x vector_core_num/data_type_size
data_type_size indicates the data size of the output tensor of Concat[ConCatD/ConcatV2/ConcatV2D].
To view the values of vector_calculate_size and vector_core_num, perform the following steps:
View the platform information file in the ${INSTALL_DIR}/${arch}/data/platform_config folder and search for the keywords "vec_calc_size" or "vector_core_cnt" to obtain the values of vector_calculate_size and vector_core_num. Replace ${INSTALL_DIR} with the CANN component directory. For example, if the installation is performed by the root user, the default file storage path is /usr/local/Ascend/cann.