Skip to content
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

Rework get_queue_by_flags function so it can select a dedicated transfer queue if requested #758

Open
asuessenbach opened this issue Jul 19, 2023 · 1 comment
Labels
framework This is relevant to the framework

Comments

@asuessenbach
Copy link
Contributor

Currently, when you ask for a transfer queue, for example, you would get the first queue that supports transfer, which probably is the same as you get when asking for graphics support.
When a dedicated transfer queue can be requested and is used (in the gltfLoader, for example), ownership of uploaded data needs to be handled properly. And a separate CommandPool would be needed for the CommandBuffer submitted to that queue.

@asuessenbach
Copy link
Contributor Author

asuessenbach commented Sep 6, 2023

Extending the functionality of get_queue_by_flags to optionally return a queue that supports all the required flags but as few additional flags as possible is simple. Just a few lines of additional code.
But using that correctly would need substantial changes, both in the framework and in some samples:

  • The Device would need to hold a CommandPool per queue family index, instead of just one;
  • CommandBuffer creation would require the queue family index;
  • Some functions would require a Queue, instead of a VkQueue, to have the queue family index available;

And probably more, I stopped investigating here.
Considering that complexity of changes, should we go that route (I'd say: yes!) or just close this issue as "will not fix"?

Note: I say "fix", as it's currently working by accident: we programmatically determine some queue family to use at various places, but assume the very same one is used everywhere.

@SaschaWillems SaschaWillems added the framework This is relevant to the framework label Feb 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
framework This is relevant to the framework
Projects
None yet
Development

No branches or pull requests

2 participants