-
Notifications
You must be signed in to change notification settings - Fork 241
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
Dynamic Composable Kernel Initial Integration #1071
Conversation
git-subtree-dir: src/composable_kernel git-subtree-split: f6edda6119ebbb237dfa6270797b34f960d7b190
Congratulations 🎉. DeepCode analyzed your code in 2.66 seconds and we found no issues. Enjoy a moment of no bugs ☀️. 👉 View analysis in DeepCode’s Dashboard | Configure the bot👉 The DeepCode service and API will be deprecated in August, 2021. Here is the information how to migrate. Thank you for using DeepCode 🙏 ❤️ !If you are using our plugins, you might be interested in their successors: Snyk's JetBrains plugin and Snyk's VS Code plugin. |
Previous review comment
|
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
…le_kernel_init_integration_v3
I've removed online compilation code from this PR. |
CI has passed. This PR is ready to be reviewed |
Ping @pfultz2 @zjing14 @JehandadKhan @qianfengz for review :) |
Co-authored-by: JD <Jehandad.Khan@amd.com>
… for invalid element
…init_integration_v3
…init_integration_v3
src/composable_kernel/composable_kernel/include/utility/static_buffer.hpp
Show resolved
Hide resolved
|
||
template <AddressSpaceEnum_t BufferAddressSpace, typename T, typename ElementSpaceSize> | ||
__host__ __device__ constexpr auto | ||
make_dynamic_buffer(T* p, ElementSpaceSize element_space_size, T invalid_element_value) |
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.
Should we use remove_cv_t<T>
here to provide a simpler type for invalid_element_value
, so that the calling codes don't have to make difficult adaption
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.
I will update this in CK repo master branch. Reduction PR will be able to use the update
@junliume @JehandadKhan CI just passed |
@asroy would you need to make more code changes? e.g. comments from #1071 (comment) If not, any objections that we merge it tonight? (2000 CDT, 1800 PDT) |
@junliume No more change is needed for this PR. |
PR description
Add new dynamic composable kernel under:
src/composable_kernel/
, which is pulled in as a "git subtree" from composable kernel reporemote repo: https://github.com/ROCmSoftwarePlatform/composable_kernel
remote branch:
master
Move old static composable kernel to:
src/kernels/static_composable_kernel/
Add a new iGEMM solver for Forward NCHW FP32/FP16/Int8 (int8 is not supported by ConvolutionContext so the solver support for Int8 cannot be used yet):
src/solver/conv_ck_igemm_fwd_v6r1_dlops_nchw.cpp::ConvCkIgemmFwdV6r1DlopsNchw
, which is calls into composable kernel solver:src/composable_kernel/host/driver_online/include/conv_igemm_fwd_v6r1_dlops_nchw_kcyx_nkhw.hpp::ConvIgemmFwdV6r1DlopsNchwKcyxNkhw
Sync between
composable_kernel
andMIOpen
with "git subtree"Relation between MIOpen solver class
ConvCkIgemmFwdV6r1DlopsNchw
and composable_kernel classConvIgemmFwdV6r1DlopsNchwKcyxNkhw