-
Notifications
You must be signed in to change notification settings - Fork 619
[ET-VK] 1/n Split dispatches between multiple command buffers. Add semaphore support in command buffer. #12519
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: gh/trivedivivek/121/base
Are you sure you want to change the base?
Conversation
…maphore support in command buffer. execute stage ## Context This following diffs aims to improve the performance of the Executorch Vulkan backend by adding a mechanism to issue multiple command buffers in prepack and execute function, so GPU work is issues while CPU is still working on issuing new work. ## This Diff ### Summary This diff is the first in a series of diffs that aim to split dispatches between multiple command buffers and add semaphore support in the command buffer. The changes in this diff include: * Adding a `VkSemaphore` parameter to the `CommandBuffer` constructor in `vk_api/Command.cpp` and `vk_api/Command.h` to support signaling when the command buffer has completed execution. * Modifying the `CommandBuffer` constructor in `vk_api/Command.h` and `vk_api/Command.cpp` to include the `VkSemaphore` parameter. * Updating the `CommandBuffer` object in `api/Context.cpp` to include the `VkSemaphore` parameter. Differential Revision: [D78282194](https://our.internmc.facebook.com/intern/diff/D78282194/) [ghstack-poisoned]
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/12519
Note: Links to docs will display an error until the docs builds have been completed. ❌ 3 New Failures, 1 PendingAs of commit a5fd200 with merge base 0012ffa ( NEW FAILURES - The following jobs have failed:
This comment was automatically generated by Dr. CI and updates every 15 minutes. |
…maphore support in command buffer. execute stage ## Context This following diffs aims to improve the performance of the Executorch Vulkan backend by adding a mechanism to issue multiple command buffers in prepack and execute function, so GPU work is issues while CPU is still working on issuing new work. ## This Diff ### Summary This diff is the first in a series of diffs that aim to split dispatches between multiple command buffers and add semaphore support in the command buffer. The changes in this diff include: * Adding a `VkSemaphore` parameter to the `CommandBuffer` constructor in `vk_api/Command.cpp` and `vk_api/Command.h` to support signaling when the command buffer has completed execution. * Modifying the `CommandBuffer` constructor in `vk_api/Command.h` and `vk_api/Command.cpp` to include the `VkSemaphore` parameter. * Updating the `CommandBuffer` object in `api/Context.cpp` to include the `VkSemaphore` parameter. Differential Revision: [D78282194](https://our.internmc.facebook.com/intern/diff/D78282194/) ghstack-source-id: 296377516 Pull Request resolved: #12519
This pull request was exported from Phabricator. Differential Revision: D78282194 |
…ers. Add semaphore support in command buffer." execute stage ## Context This following diffs aims to improve the performance of the Executorch Vulkan backend by adding a mechanism to issue multiple command buffers in prepack and execute function, so GPU work is issues while CPU is still working on issuing new work. ## This Diff ### Summary This diff is the first in a series of diffs that aim to split dispatches between multiple command buffers and add semaphore support in the command buffer. The changes in this diff include: * Adding a `VkSemaphore` parameter to the `CommandBuffer` constructor in `vk_api/Command.cpp` and `vk_api/Command.h` to support signaling when the command buffer has completed execution. * Modifying the `CommandBuffer` constructor in `vk_api/Command.h` and `vk_api/Command.cpp` to include the `VkSemaphore` parameter. * Updating the `CommandBuffer` object in `api/Context.cpp` to include the `VkSemaphore` parameter. Differential Revision: [D78282194](https://our.internmc.facebook.com/intern/diff/D78282194/) [ghstack-poisoned]
This pull request was exported from Phabricator. Differential Revision: D78282194 |
…ers. Add semaphore support in command buffer." execute stage ## Context This following diffs aims to improve the performance of the Executorch Vulkan backend by adding a mechanism to issue multiple command buffers in prepack and execute function, so GPU work is issues while CPU is still working on issuing new work. ## This Diff ### Summary This diff is the first in a series of diffs that aim to split dispatches between multiple command buffers and add semaphore support in the command buffer. The changes in this diff include: * Adding a `VkSemaphore` parameter to the `CommandBuffer` constructor in `vk_api/Command.cpp` and `vk_api/Command.h` to support signaling when the command buffer has completed execution. * Modifying the `CommandBuffer` constructor in `vk_api/Command.h` and `vk_api/Command.cpp` to include the `VkSemaphore` parameter. * Updating the `CommandBuffer` object in `api/Context.cpp` to include the `VkSemaphore` parameter. Differential Revision: [D78282194](https://our.internmc.facebook.com/intern/diff/D78282194/) [ghstack-poisoned]
This pull request was exported from Phabricator. Differential Revision: D78282194 |
…ers. Add semaphore support in command buffer." execute stage ## Context This following diffs aims to improve the performance of the Executorch Vulkan backend by adding a mechanism to issue multiple command buffers in prepack and execute function, so GPU work is issues while CPU is still working on issuing new work. ## This Diff ### Summary This diff is the first in a series of diffs that aim to split dispatches between multiple command buffers and add semaphore support in the command buffer. The changes in this diff include: * Adding a `VkSemaphore` parameter to the `CommandBuffer` constructor in `vk_api/Command.cpp` and `vk_api/Command.h` to support signaling when the command buffer has completed execution. * Modifying the `CommandBuffer` constructor in `vk_api/Command.h` and `vk_api/Command.cpp` to include the `VkSemaphore` parameter. * Updating the `CommandBuffer` object in `api/Context.cpp` to include the `VkSemaphore` parameter. Differential Revision: [D78282194](https://our.internmc.facebook.com/intern/diff/D78282194/) [ghstack-poisoned]
This pull request was exported from Phabricator. Differential Revision: D78282194 |
…ers. Add semaphore support in command buffer." execute stage ## Context This following diffs aims to improve the performance of the Executorch Vulkan backend by adding a mechanism to issue multiple command buffers in prepack and execute function, so GPU work is issues while CPU is still working on issuing new work. ## This Diff ### Summary This diff is the first in a series of diffs that aim to split dispatches between multiple command buffers and add semaphore support in the command buffer. The changes in this diff include: * Adding a `VkSemaphore` parameter to the `CommandBuffer` constructor in `vk_api/Command.cpp` and `vk_api/Command.h` to support signaling when the command buffer has completed execution. * Modifying the `CommandBuffer` constructor in `vk_api/Command.h` and `vk_api/Command.cpp` to include the `VkSemaphore` parameter. * Updating the `CommandBuffer` object in `api/Context.cpp` to include the `VkSemaphore` parameter. Differential Revision: [D78282194](https://our.internmc.facebook.com/intern/diff/D78282194/) [ghstack-poisoned]
This pull request was exported from Phabricator. Differential Revision: D78282194 |
…ers. Add semaphore support in command buffer." execute stage ## Context This following diffs aims to improve the performance of the Executorch Vulkan backend by adding a mechanism to issue multiple command buffers in prepack and execute function, so GPU work is issues while CPU is still working on issuing new work. ## This Diff ### Summary This diff is the first in a series of diffs that aim to split dispatches between multiple command buffers and add semaphore support in the command buffer. The changes in this diff include: * Adding a `VkSemaphore` parameter to the `CommandBuffer` constructor in `vk_api/Command.cpp` and `vk_api/Command.h` to support signaling when the command buffer has completed execution. * Modifying the `CommandBuffer` constructor in `vk_api/Command.h` and `vk_api/Command.cpp` to include the `VkSemaphore` parameter. * Updating the `CommandBuffer` object in `api/Context.cpp` to include the `VkSemaphore` parameter. Differential Revision: [D78282194](https://our.internmc.facebook.com/intern/diff/D78282194/) [ghstack-poisoned]
This pull request was exported from Phabricator. Differential Revision: D78282194 |
Stack from ghstack (oldest at bottom):
execute stage
Context
This following diffs aims to improve the performance of the Executorch Vulkan backend by adding a mechanism to issue multiple command buffers in prepack and execute function, so GPU work is issues while CPU is still working on issuing new work.
This Diff
Summary
This diff is the first in a series of diffs that aim to split dispatches between multiple command buffers and add semaphore support in the command buffer.
The changes in this diff include:
VkSemaphore
parameter to theCommandBuffer
constructor invk_api/Command.cpp
andvk_api/Command.h
to support signaling when the command buffer has completed execution.CommandBuffer
constructor invk_api/Command.h
andvk_api/Command.cpp
to include theVkSemaphore
parameter.CommandBuffer
object inapi/Context.cpp
to include theVkSemaphore
parameter.Differential Revision: D78282194