pytorch icon indicating copy to clipboard operation
pytorch copied to clipboard

[release/2.5] enable NHWC batchnorm with MIOpen

Open dnikolaev-amd opened this issue 10 months ago • 12 comments

NHWC batchnorm on MIOpen in preview mode supported modes:

  • NCHW/NHWC fp32
  • NCHW/NHWC fp16/bf16 mixed mode (with fp16 input/gradinet and fp32 scale/bias)

redundant NHWC-NCHW-NHWC conversions for MiopenBatchNormBackward is fixed

NHWC batchnorm disabled by default. Environment variable PYTORCH_MIOPEN_SUGGEST_NHWC_BATCHNORM=1 enables NHWC batchnorm (separately from NHWC convolution)

new batchnorm tests (most of them are skipped by default) (only for debugging purposes):

test_batchnorm_layout_NCHW_mixed_False_bfloat16 - skipped - not supported mode
test_batchnorm_layout_NCHW_mixed_False_float16 - skippes - not supported mode
test_batchnorm_layout_NCHW_mixed_False_float32 - passed
test_batchnorm_layout_NCHW_mixed_True_bfloat16 - skipped - tolerance issue
test_batchnorm_layout_NCHW_mixed_True_float16 - passed
test_batchnorm_layout_NCHW_mixed_True_float32 - skipped - useless
test_batchnorm_layout_NHWC_mixed_False_bfloat16 - skipped - NHWC
test_batchnorm_layout_NHWC_mixed_False_float16 - skippes - not supported mode
test_batchnorm_layout_NHWC_mixed_False_float32 - skippes - not supported mode
test_batchnorm_layout_NHWC_mixed_True_bfloat16 - skipped - NHWC
test_batchnorm_layout_NHWC_mixed_True_float16 - skipped - NHWC
test_batchnorm_layout_NHWC_mixed_True_float32 - skipped - useless

test_batchnorm_nhwc_eval_mixed_False_bfloat16 - skipped - not supported mode
test_batchnorm_nhwc_eval_mixed_False_float16 - skipped - not supported mode
test_batchnorm_nhwc_eval_mixed_False_float32 - skipped - NHWC
test_batchnorm_nhwc_eval_mixed_True_bfloat16 - skipped - NHWC
test_batchnorm_nhwc_eval_mixed_True_float16 - skipped - NHWC
test_batchnorm_nhwc_eval_mixed_True_float32 - skipped - useless

(cherry picked from commit a1e8b0e925114d34e9feb994fb76e447b6bf264d) (cherry picked from commit 8c39322153d9608f06f69cdc588cbe0acd2d53aa) (cherry picked from commit d726574c808284976e943858ee2ce9b40ccbb5db) (cherry picked from commit 432b200751f5dc3eb636e0639c182029ff7af750) (cherry picked from commit 398bd573dcde7a5f5e69c00e1e5a02fd349aee71) (cherry picked from commit d9668352f0d960457a40e1ea9458aa11d8668c8d)

dnikolaev-amd avatar Mar 19 '25 17:03 dnikolaev-amd

Enable it for ROCm 6.5 and higher

pruthvistony avatar Mar 19 '25 17:03 pruthvistony

Jenkins build for 68c086965a5d6819a1311ba879964022cec70238 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for 68c086965a5d6819a1311ba879964022cec70238 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for 68c086965a5d6819a1311ba879964022cec70238 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for 68c086965a5d6819a1311ba879964022cec70238 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for 68c086965a5d6819a1311ba879964022cec70238 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for 68c086965a5d6819a1311ba879964022cec70238 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for 68c086965a5d6819a1311ba879964022cec70238 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for 68c086965a5d6819a1311ba879964022cec70238 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for 68c086965a5d6819a1311ba879964022cec70238 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for a031bb41e82a8751e47d0890fe57427ab24d0b76 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Need to refactor it to bring in the changes from #2022

jithunnair-amd avatar Apr 09 '25 20:04 jithunnair-amd

Jenkins build for a031bb41e82a8751e47d0890fe57427ab24d0b76 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for a031bb41e82a8751e47d0890fe57427ab24d0b76 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for a031bb41e82a8751e47d0890fe57427ab24d0b76 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for a031bb41e82a8751e47d0890fe57427ab24d0b76 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for a031bb41e82a8751e47d0890fe57427ab24d0b76 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for a031bb41e82a8751e47d0890fe57427ab24d0b76 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for a031bb41e82a8751e47d0890fe57427ab24d0b76 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for a031bb41e82a8751e47d0890fe57427ab24d0b76 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for a031bb41e82a8751e47d0890fe57427ab24d0b76 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for a031bb41e82a8751e47d0890fe57427ab24d0b76 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Closing this as stale. Will file new PR with updated changes if a customer needs NHWC batchnorm in 2.5.

jithunnair-amd avatar Apr 30 '25 17:04 jithunnair-amd

Jenkins build for a031bb41e82a8751e47d0890fe57427ab24d0b76 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for a031bb41e82a8751e47d0890fe57427ab24d0b76 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for a031bb41e82a8751e47d0890fe57427ab24d0b76 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for a031bb41e82a8751e47d0890fe57427ab24d0b76 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for a031bb41e82a8751e47d0890fe57427ab24d0b76 commit finished as FAILURE Links: Blue Ocean view / Build artifacts

Jenkins build for a031bb41e82a8751e47d0890fe57427ab24d0b76 commit finished as ABORTED Links: Blue Ocean view / Build artifacts

Jenkins build for a031bb41e82a8751e47d0890fe57427ab24d0b76 commit finished as FAILURE Links: Blue Ocean view / Build artifacts