-
Notifications
You must be signed in to change notification settings - Fork 797
[UR] Stop querying adapter fp16/fp64 support via extension. #15811
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
base: sycl
Are you sure you want to change the base?
Changes from 13 commits
32957aa
5e66ecc
8720fbe
368a9e8
d789703
5358def
b3b7153
fba0498
3049632
ee0fc6c
189bf35
62803c0
3e22484
461ca20
f3ab64a
8b55b79
e965b3e
9ecf00b
3f13197
f5bcab7
797dd4c
b9017b9
a9932cc
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -154,10 +154,7 @@ UR_APIEXPORT ur_result_t UR_APICALL urDeviceGetInfo(ur_device_handle_t hDevice, | |
case UR_DEVICE_INFO_HOST_UNIFIED_MEMORY: | ||
return ReturnValue(bool{1}); | ||
case UR_DEVICE_INFO_EXTENSIONS: | ||
// TODO : Populate return string accordingly - e.g. cl_khr_fp16, | ||
// cl_khr_fp64, cl_khr_int64_base_atomics, | ||
// cl_khr_int64_extended_atomics | ||
return ReturnValue("cl_khr_fp16, cl_khr_fp64 "); | ||
return ReturnValue(""); | ||
case UR_DEVICE_INFO_VERSION: | ||
return ReturnValue("0.1"); | ||
case UR_DEVICE_INFO_COMPILER_AVAILABLE: | ||
|
@@ -193,19 +190,18 @@ UR_APIEXPORT ur_result_t UR_APICALL urDeviceGetInfo(ur_device_handle_t hDevice, | |
case UR_DEVICE_INFO_IMAGE3D_MAX_DEPTH: | ||
// Default minimum values required by the SYCL specification. | ||
return ReturnValue(size_t{2048}); | ||
case UR_DEVICE_INFO_HALF_FP_CONFIG: { | ||
// todo: | ||
ur_device_fp_capability_flags_t HalfFPValue = 0; | ||
return ReturnValue(HalfFPValue); | ||
} | ||
case UR_DEVICE_INFO_SINGLE_FP_CONFIG: { | ||
// todo | ||
ur_device_fp_capability_flags_t SingleFPValue = 0; | ||
return ReturnValue(SingleFPValue); | ||
} | ||
case UR_DEVICE_INFO_HALF_FP_CONFIG: | ||
case UR_DEVICE_INFO_SINGLE_FP_CONFIG: | ||
case UR_DEVICE_INFO_DOUBLE_FP_CONFIG: { | ||
ur_device_fp_capability_flags_t DoubleFPValue = 0; | ||
return ReturnValue(DoubleFPValue); | ||
// All fp types are supported, return minimum flags to indicate support. | ||
// TODO: look at this in more detail. | ||
ur_device_fp_capability_flags_t SupportedFlags = | ||
UR_DEVICE_FP_CAPABILITY_FLAG_DENORM | | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'm not sure we support denormals on all platforms, we support them if and only if the target supports them. Do we have a way to query that? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Happy to drop DENORM as that wouldn't change anything as far as implementing aspect::fp16 and aspect::fp64 goes, although I'm not sure what the wider implications are. I guess if anything it's closer to what the adapter was doing before (reporting There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It looks like this should depend on the But that reminds me that the other flag values likely depend on command-line options as well such as There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Alright I'll drop it down to There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. done #17530 |
||
UR_DEVICE_FP_CAPABILITY_FLAG_INF_NAN | | ||
UR_DEVICE_FP_CAPABILITY_FLAG_ROUND_TO_NEAREST | | ||
UR_DEVICE_FP_CAPABILITY_FLAG_FMA; | ||
; | ||
return ReturnValue(SupportedFlags); | ||
} | ||
case UR_DEVICE_INFO_MAX_WORK_ITEM_DIMENSIONS: | ||
return ReturnValue(uint32_t{3}); | ||
|
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.
Please don't add extra methods. Existing interfaces should be enough, just change their implementation to the proper calls to the underlying UR queries.