-
Notifications
You must be signed in to change notification settings - Fork 787
[SYCL] Add sycl-enable-bfloat16-conversion compilation flag #4343
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
Conversation
Created instead of #4266 |
This flag defines __SYCL_ENABLE_BF16_CONVERSION__ macro that can be used to specify whether BF16 conversion feature is supported. This macro is being defined for both host and device compilation. Signed-off-by: Dmitry Sidorov <[email protected]>
6574e86
to
0442119
Compare
Signed-off-by: Dmitry Sidorov <[email protected]>
Signed-off-by: Dmitry Sidorov <[email protected]>
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.
This flag doesn't currently have any semantics beyond defining a macro; shouldn't there also be codegen changes as part of this?
No, it's just about definition of the macro.
At some point of time we may add a fallback implementation in SYCL headers as well.
|
Thanks for the background! Is the plan then to deprecate this option once we implement the optional device feature extension? If so, is there a pressing need for landing this as official functionality (as opposed to experimenting with it in a branch or something until the general feature lands)? |
The plan is to set SYCLEnableBF16Conversion's default value to "true" when the feature matures leaving a way to disable it if necessary with -fno option.
I'd say, not a 'pressing need', but it would be really appreciated by our customers. |
I would also like to hear from @AlexeySachkov as he has a better knowledge of optional device's features status/design. Do you see any drawbacks of introducing this option? |
I won't block this change, but I would say that my general preference is to never add a feature that we already know will be replaced by another approach in the foreseeable future. |
Signed-off-by: Dmitry Sidorov <[email protected]>
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.
LGTM aside from concerns raised about timing.
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.
Driver LGTM
The existence of the option and support burden it brings to us :) I think I'm with @AaronBallman here. BTW, why can't we just document a particular macro which our customers could pass/pass with particular value/explicitly undefine/pass |
Okay, I'll check internally whether it's acceptable. @AlexeySachkov or @AaronBallman could you please 'request changes' so the PR couldn't be merged by incident? |
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.
Requesting changes to avoid an accidental merge while we think on the timing.
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.
Explicitly requesting changes to wait until the discussion about command line option vs a macro is settled down
No need for the patch |
This flag defines SYCL_BF16_CONVERSION_IS_SUPPORTED macro that
can be used to specify whether BF16 conversion feature is supported.
This macro is being defined for both host and device compilation.
Signed-off-by: Dmitry Sidorov [email protected]