-
Notifications
You must be signed in to change notification settings - Fork 0
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
QueueFamilyIndices VulkanEngine::find_queue_families(VkPhysicalDevice device) #2
Comments
Thanks for your suggestions. Sorry I haven't spent enough time on vendor-specific problems. Here is the queue family information of my device. https://vulkan.gpuinfo.org/displayreport.php?id=11642#queuefamilies For now, given the objective of asynchronous computing, I use the
I don't know your queue family information. Most of them are available on https://vulkan.gpuinfo.org. With that information, there may be better ways to handle your case. |
You use a high performance desktop GPU, but I am working with a notebook
and my computer has only one single queue family.
then, checking the available queue family # and deciding the assignment
could be a good way to solve the compatibility issue.
…On Mon, Aug 1, 2022 at 8:16 AM Derived Cat ***@***.***> wrote:
Thanks for your suggestions. Sorry I haven't spent enough time on
vendor-specific problems. Here is the queue family information of my
device.
https://vulkan.gpuinfo.org/displayreport.php?id=11642#queuefamilies
[image: queue family]
<https://user-images.githubusercontent.com/10691820/182175879-900f5e43-82be-4a58-98c9-c7d8039f43fe.png>
For now, given the objective of asynchronous computing, I use the
GRAPHICS|COMPUTE|TRANSFER queue family for graphics and the
COMPUTE|TRANSFER queue family for computing. I guess the following
treatment works for my purpose as well as produces a fallback.
int i = 0;
for (const auto& queueFamily : queue_families) {
if (queueFamily.queueFlags & VK_QUEUE_TRANSFER_BIT) {
indices.transfer_family = i;
}
if (queueFamily.queueFlags & VK_QUEUE_COMPUTE_BIT) {
indices.compute_family = i;
}
if (queueFamily.queueFlags & VK_QUEUE_GRAPHICS_BIT) {
indices.graphics_family = i;
}
if (indices.is_complete()) {
break;
}
i++;
}
I don't know your queue family information. Most of them are available on
https://vulkan.gpuinfo.org. With that information, there may be better
ways to handle your case.
—
Reply to this email directly, view it on GitHub
<#2 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AA4KKJYY3EBSFA53TVPIUE3VW7S6BANCNFSM55G5LHHA>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
I have updated the logic for queue family selection. You can pull the latest changes and check whether the fallback works as I expected. |
it should be updated as following.
The text was updated successfully, but these errors were encountered: