-
Notifications
You must be signed in to change notification settings - Fork 590
[ET-VK] Using push constants for convolution prepack dispatches. #11306
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
[ET-VK] Using push constants for convolution prepack dispatches. #11306
Conversation
Differential Revision: [D74523774](https://our.internmc.facebook.com/intern/diff/D74523774/) [ghstack-poisoned]
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/11306
Note: Links to docs will display an error until the docs builds have been completed. ✅ No FailuresAs of commit 0e9cf7f with merge base af0a246 ( This comment was automatically generated by Dr. CI and updates every 15 minutes. |
Differential Revision: [D74523774](https://our.internmc.facebook.com/intern/diff/D74523774/) ghstack-source-id: 287760412 Pull Request resolved: #11306
This pull request was exported from Phabricator. Differential Revision: D74523774 |
…tches." Differential Revision: [D74523774](https://our.internmc.facebook.com/intern/diff/D74523774/) [ghstack-poisoned]
Pull Request resolved: #11306 This diff switches the `conv2d_prepack_weights`, `conv2d_dw_prepack_weights`, and `conv_transpose2d_prepack_weights` shaders to use push constants instead of uniform buffers for the `sizes` and `original_sizes` variables. ghstack-source-id: 288155883 @exported-using-ghexport Differential Revision: [D74523774](https://our.internmc.facebook.com/intern/diff/D74523774/)
This pull request was exported from Phabricator. Differential Revision: D74523774 |
…tches." Differential Revision: [D74523774](https://our.internmc.facebook.com/intern/diff/D74523774/) [ghstack-poisoned]
Pull Request resolved: #11306 This diff switches the `conv2d_prepack_weights`, `conv2d_dw_prepack_weights`, and `conv_transpose2d_prepack_weights` shaders to use push constants instead of uniform buffers for the `sizes` and `original_sizes` variables. ghstack-source-id: 288178302 @exported-using-ghexport Differential Revision: [D74523774](https://our.internmc.facebook.com/intern/diff/D74523774/)
This pull request was exported from Phabricator. Differential Revision: D74523774 |
becbac4
into
gh/trivedivivek/110/base
) This PR was created by the merge bot to help merge the original PR into the main branch. ghstack PR number: #11306 by @trivedivivek ^ Please use this as the source of truth for the PR details, comments, and reviews ghstack PR base: https://github.com/pytorch/executorch/tree/gh/trivedivivek/110/base ghstack PR head: https://github.com/pytorch/executorch/tree/gh/trivedivivek/110/head Merge bot PR base: https://github.com/pytorch/executorch/tree/gh/trivedivivek/109/orig Merge bot PR head: https://github.com/pytorch/executorch/tree/gh/trivedivivek/110/orig @diff-train-skip-merge Co-authored-by: Vivek Trivedi <[email protected]>
…stdout logging ## Changes Some changes to `vulkan_compute_api_test`: * Remove `conv2d_prepack_test`. D74523774 / #11306 recently changed the conv2d prepack shader to use push constants, and since this test uses the "old" vulkan compute API (which doesn't support push constants) the test broke. Operator tests at this point are handled by `compute_graph_op_tests` anyway so just remove this test. * Make it so that verbose logging in `test_to_copy` only occurs in `VULKAN_DEBUG` is defined * Disable `test_etvk_copy_channel_offset_node*` tests, as these tests fail on some platforms (i.e. devGPU, windows, mac) likely due to an error in the implementation of the op. Differential Revision: [D76156109](https://our.internmc.facebook.com/intern/diff/D76156109/) [ghstack-poisoned]
… compute_api_test + reduce stdout logging" ## Changes Some changes to `vulkan_compute_api_test`: * Remove `conv2d_prepack_test`. D74523774 / #11306 recently changed the conv2d prepack shader to use push constants, and since this test uses the "old" vulkan compute API (which doesn't support push constants) the test broke. Operator tests at this point are handled by `compute_graph_op_tests` anyway so just remove this test. * Make it so that verbose logging in `test_to_copy` only occurs in `VULKAN_DEBUG` is defined * Disable `test_etvk_copy_channel_offset_node*` tests, as these tests fail on some platforms (i.e. devGPU, windows, mac) likely due to an error in the implementation of the op. Differential Revision: [D76156109](https://our.internmc.facebook.com/intern/diff/D76156109/) [ghstack-poisoned]
…t + reduce stdout logging" ## Changes Some changes to `vulkan_compute_api_test`: * Remove `conv2d_prepack_test`. D74523774 / #11306 recently changed the conv2d prepack shader to use push constants, and since this test uses the "old" vulkan compute API (which doesn't support push constants) the test broke. Operator tests at this point are handled by `compute_graph_op_tests` anyway so just remove this test. * Make it so that verbose logging in `test_to_copy` only occurs in `VULKAN_DEBUG` is defined * Disable `test_etvk_copy_channel_offset_node*` tests, as these tests fail on some platforms (i.e. devGPU, windows, mac) likely due to an error in the implementation of the op. Differential Revision: [D76156109](https://our.internmc.facebook.com/intern/diff/D76156109/) [ghstack-poisoned]
… compute_api_test + reduce stdout logging" ## Changes Some changes to `vulkan_compute_api_test`: * Remove `conv2d_prepack_test`. D74523774 / #11306 recently changed the conv2d prepack shader to use push constants, and since this test uses the "old" vulkan compute API (which doesn't support push constants) the test broke. Operator tests at this point are handled by `compute_graph_op_tests` anyway so just remove this test. * Make it so that verbose logging in `test_to_copy` only occurs in `VULKAN_DEBUG` is defined * Disable `test_etvk_copy_channel_offset_node*` tests, as these tests fail on some platforms (i.e. devGPU, windows, mac) likely due to an error in the implementation of the op. Differential Revision: [D76156109](https://our.internmc.facebook.com/intern/diff/D76156109/) [ghstack-poisoned]
…t + reduce stdout logging" ## Changes Some changes to `vulkan_compute_api_test`: * Remove `conv2d_prepack_test`. D74523774 / #11306 recently changed the conv2d prepack shader to use push constants, and since this test uses the "old" vulkan compute API (which doesn't support push constants) the test broke. Operator tests at this point are handled by `compute_graph_op_tests` anyway so just remove this test. * Make it so that verbose logging in `test_to_copy` only occurs in `VULKAN_DEBUG` is defined * Disable `test_etvk_copy_channel_offset_node*` tests, as these tests fail on some platforms (i.e. devGPU, windows, mac) likely due to an error in the implementation of the op. Differential Revision: [D76156109](https://our.internmc.facebook.com/intern/diff/D76156109/) [ghstack-poisoned]
…stdout logging (#11486) ## Changes Some changes to `vulkan_compute_api_test`: * Remove `conv2d_prepack_test`. D74523774 / #11306 recently changed the conv2d prepack shader to use push constants, and since this test uses the "old" vulkan compute API (which doesn't support push constants) the test broke. Operator tests at this point are handled by `compute_graph_op_tests` anyway so just remove this test. * Make it so that verbose logging in `test_to_copy` only occurs in `VULKAN_DEBUG` is defined * Disable `test_etvk_copy_channel_offset_node*` tests, as these tests fail on some platforms (i.e. devGPU, windows, mac) likely due to an error in the implementation of the op. Differential Revision: [D76156109](https://our.internmc.facebook.com/intern/diff/D76156109/)
Stack from ghstack (oldest at bottom):
Differential Revision: D74523774