Skip to content

Fuse multiplication by a splat into conv2d and similar ops #3025

Description

@j2kun

Cf. the comment thread by @mdgrs in #3006 (comment)

#3006 implemented fusion of batchnorm1d into preceding convolution and linear ops. The operations that batchnorm1d lowers to are multiplication by general tensors, which only make sense to fuse into channel-wise operations.

However, some constructions (reportedly average pooling and sum pooling) reduce to multiplication by a splat after a non-channel ops like conv2d and conv1d. These splats can be fused into the filter matrix of the convolution. This issue is to add support for that.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions