Skip to content

[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

Merged

Conversation

trivedivivek
Copy link
Contributor

@trivedivivek trivedivivek commented Jun 3, 2025

Copy link

pytorch-bot bot commented Jun 3, 2025

🔗 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 Failures

As of commit 0e9cf7f with merge base af0a246 (image):
💚 Looks good so far! There are no failures yet. 💚

This comment was automatically generated by Dr. CI and updates every 15 minutes.

trivedivivek added a commit that referenced this pull request Jun 3, 2025
Differential Revision: [D74523774](https://our.internmc.facebook.com/intern/diff/D74523774/)

ghstack-source-id: 287760412
Pull Request resolved: #11306
@facebook-github-bot facebook-github-bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Jun 3, 2025
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D74523774

@trivedivivek trivedivivek added the release notes: vulkan Changes to the Vulkan backend delegate label Jun 3, 2025
trivedivivek added a commit that referenced this pull request Jun 4, 2025
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/)
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D74523774

trivedivivek added a commit that referenced this pull request Jun 4, 2025
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/)
@facebook-github-bot
Copy link
Contributor

This pull request was exported from Phabricator. Differential Revision: D74523774

@facebook-github-bot facebook-github-bot merged commit becbac4 into gh/trivedivivek/110/base Jun 4, 2025
98 checks passed
@facebook-github-bot facebook-github-bot deleted the gh/trivedivivek/110/head branch June 4, 2025 18:56
trivedivivek added a commit that referenced this pull request Jun 4, 2025
)

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]>
SS-JIA added a commit that referenced this pull request Jun 6, 2025
…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]
SS-JIA added a commit that referenced this pull request Jun 6, 2025
… 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]
SS-JIA added a commit that referenced this pull request Jun 6, 2025
…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]
SS-JIA added a commit that referenced this pull request Jun 9, 2025
… 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]
SS-JIA added a commit that referenced this pull request Jun 9, 2025
…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]
SS-JIA pushed a commit that referenced this pull request Jun 10, 2025
…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/)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. fb-exported release notes: vulkan Changes to the Vulkan backend delegate
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants