-
Notifications
You must be signed in to change notification settings - Fork 6k
[Impeller] [Vulkan] Add reset command buffer bit to command pools. #43867
Conversation
Without this bit, we're holding it wrong. From the docs: > VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT allows any command buffer allocated from a pool to be individually reset to the initial state; either by calling vkResetCommandBuffer, or via the implicit reset when calling vkBeginCommandBuffer. If this flag is not set on a pool, then vkResetCommandBuffer must not be called for any command buffer allocated from that pool. This means our reset calls later are getting ignored. Fixes flutter/flutter#131001
|
It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption to this rule, contact Hixie on the #hackers channel in Chat (don't just cc him here, he won't see it! He's on Discord!). If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix? Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing. |
jonahwilliams
left a comment
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.
LGTM
|
Derp. My bad. I should clarify that we still never reset the command buffers. We just destroy them which I presume resets them. It might also be a good idea to trim the pool from time to time. Perhaps after a frame workload so these sizes stay under control over a long period of time. |
Yes, the RAII wrapper resets them.
SGTM. |
|
auto label is removed for flutter/engine, pr: 43867, due to - The status or check suite Mac mac_clang_tidy has failed. Please fix the issues identified (or deflake) before re-applying this label.
|
…lutter#43867) Without this bit, we're holding it wrong. From the docs: > VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT allows any command buffer allocated from a pool to be individually reset to the initial state; either by calling vkResetCommandBuffer, or via the implicit reset when calling vkBeginCommandBuffer. If this flag is not set on a pool, then vkResetCommandBuffer must not be called for any command buffer allocated from that pool. This means our reset calls later are getting ignored. Fixes flutter/flutter#131001
…131025) flutter/engine@218b71c...b5a6b1c 2023-07-20 [email protected] [Impeller] [Vulkan] Add reset command buffer bit to command pools. (flutter/engine#43867) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
|
Filed flutter/flutter#131033 to followup on the pool trimming. |
…lutter#131025) flutter/engine@218b71c...b5a6b1c 2023-07-20 [email protected] [Impeller] [Vulkan] Add reset command buffer bit to command pools. (flutter/engine#43867) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Without this bit, we're holding it wrong. From the docs:
This means our reset calls later are getting ignored.
Fixes flutter/flutter#131001