Passes
pass
-
struct migraphx::internal::pass
An interface for applying a transformation to the instructions in a
program
dead_code_elimination
-
struct migraphx::internal::dead_code_elimination
Remove instructions where the output is not used.
eliminate_common_subexpression
-
struct migraphx::internal::eliminate_common_subexpression
Remove identical instructions.
eliminate_concat
eliminate_contiguous
eliminate_identity
-
struct migraphx::internal::eliminate_identity
Remove identity instructions. Currently when used as the last pass, it will preserve the semantics of previous program state, therefore dead code elimination should not be used afterwards.
eliminate_pad
-
struct migraphx::internal::eliminate_pad
Remove pads if they can be written as an attribute to another op (im2col, convolution, pooling)
propagate_constant
-
struct migraphx::internal::propagate_constant
Replace instructions which take all literals with a literal of the computation.
rewrite_batchnorm
-
struct migraphx::internal::rewrite_batchnorm
Rewrite batchnorm to a multiply and add.
rewrite_rnn
-
struct migraphx::internal::rewrite_rnn
Rewrite rnn to gemm and add.
schedule
-
struct migraphx::internal::schedule
Schedule instructions for concurrent execution
simplify_algebra
-
struct migraphx::internal::simplify_algebra
Simplify many algebraic instructions to more efficient versions.
simplify_reshapes
-
struct migraphx::internal::simplify_reshapes
Eliminate redundant reshapes.