AMDMIGraphX
AMDMIGraphX copied to clipboard
Add SkipGroupNorm Contrib Op
DOR (Definition of Ready)
When we have a change and need to find additional optimizations for stable diffusion pipelines that leverage Onnxruntime as the front end.
Description
Task
Add support for the Microsoft Contrib op SkipGroupNorm Doc: https://github.com/microsoft/onnxruntime/blob/main/docs/ContribOperators.md#com.microsoft.SkipGroupNorm
Uses
Seen in Stable diffusion optimizations with Onnxruntime's pipeline's
Seen via using the optimize pipeline script for stable diffusion runs
export MIGRAPHX_DISABLE_CK_GEMM=1
export MIGRAPHX_DISABLE_CK_GEMM_FUSION=1
export MIGRAPHX_DISABLE_CK_GEMM_SOFTMAX_GEMM=1
python optimize_pipeline.py -i ./sd-v2 -o ./sd-v2-0-migx --float16 --disable_attention --disable_skip_layer_norm
--disable_embed_layer_norm --disable_bias_skip_layer_norm --disable_nhwc_conv --disable_group_norm
Reference to the workflow on this found here: https://github.com/ROCm/AMDMIGraphX/issues/1688
Using this would give us the ability to further parse OnnxRT optimizations prior to MIGraphX doing any sort of optimizations
DOD (Definition of Done)
- [ ] Operator is parsed in MIGraphX-driver correctly
- [ ] Proper test coverage for operator is given in MIGraphX unit tests
- [ ] Onnxruntime support for operator is present when using MIGraphX Execution Provider