-
Notifications
You must be signed in to change notification settings - Fork 94
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enable fp8e5m2fnuz type #3570
Enable fp8e5m2fnuz type #3570
Conversation
CharlieL7
commented
Oct 29, 2024
- Enables the E5M2 FNUZ datatype so that we have full support for all the current FP8 types
- E5M2 FNUZ will not be used directly in model but might be useful when converting from OCP -> FNUZ
- Lots of updated files, but mostly expanding test cases
@@ -55,5 +55,6 @@ template struct test_gemm_add_broadcast2<migraphx::shape::float_type>; | |||
// template struct test_gemm_add_broadcast2<migraphx::shape::half_type>; // fails with CK, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we have a CK feature for this or is there a workaround?
@@ -58,3 +58,6 @@ struct test_gemm_add : verify_program<test_gemm_add<DType>> | |||
template struct test_gemm_add<migraphx::shape::float_type>; | |||
template struct test_gemm_add<migraphx::shape::half_type>; | |||
// TODO template struct test_gemm_add<migraphx::shape::fp8e4m3fnuz_type>; | |||
// TODO template struct test_gemm_add<migraphx::shape::fp8e5m2fnuz_type>; | |||
// TODO template struct test_gemm_add<migraphx::shape::fp8e4m2fn_type>; | |||
// TODO template struct test_gemm_add<migraphx::shape::fp8e5m2_type>; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why are these TODO?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
these don't work, umang made an issue about them earlier
@@ -46,6 +46,7 @@ struct test_gemm_transposea : verify_program<test_gemm_transposea<DType>> | |||
template struct test_gemm_transposea<migraphx::shape::float_type>; | |||
template struct test_gemm_transposea<migraphx::shape::half_type>; | |||
template struct test_gemm_transposea<migraphx::shape::fp8e4m3fnuz_type>; | |||
template struct test_gemm_transposea<migraphx::shape::fp8e5m2fnuz_type>; | |||
// TODO need hipblaslt support | |||
// template struct test_gemm_transposea<migraphx::shape::fp8e4m3fn_type>; | |||
// template struct test_gemm_transposea<migraphx::shape::fp8e5m2_type>; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Anyway to workaround and run these tests without hipblastlt?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Initial comments. Few questions, nothing concerning after you fixed the API compatability.
Just more following up on some of your comments with tests and things.
… into enable_fp8e5m2fnuz_type
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## develop #3570 +/- ##
========================================
Coverage 92.19% 92.19%
========================================
Files 513 513
Lines 21633 21638 +5
========================================
+ Hits 19945 19950 +5
Misses 1688 1688 ☔ View full report in Codecov by Sentry. |
… into enable_fp8e5m2fnuz_type
…form/AMDMIGraphX into enable_fp8e5m2fnuz_type
This build is not recommended to merge 🔴 |
🔴bert_large_uncased_fp16: FAILED: MIGraphX is not within tolerance - check verbose output |
Should get this in sooner than later @causten . Onnxrt has support for this as well form the looks of it so it would be nice to get his all in for fp8 support at once |