vulkano
vulkano copied to clipboard
Access Delta concept. New algorithm of resource synchronization inside one command buffer
This is the first part of an effort to improve resource synchronization in vulkano. Original issue and design proposal: https://github.com/vulkano-rs/vulkano/issues/1914 In the design proposal I added a new section "Step 1. Introduction of Access Delta concept" that briefly describes this new concept .
- Added implementation of Access Delta for image and buffer resources
- Added append_command method and added it to all places where we are adding a command.
- Replaced old way of handling command buffer synchronization with a new access delta concept.
This change should not change an overall behavior but also introduces a few improvements: now we don't need to check for a conflicts because we can now resolve all of them, now we can build more optimal barriers and in future this will help us to add a synchronization between command buffers.
TODO: There are still a few todos in this PR that I will resolve in following commits.
Right now this PR is split into 3 commits for easier code review.