-
Notifications
You must be signed in to change notification settings - Fork 441
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
Task graph [7/10]: descriptor sets #2648
Conversation
680db10
to
44099ce
Compare
The raytracing example hangs on my system when I run it. No window or other output, it just prints the device name and then sits there. |
You get no validation errors either? |
No validation or syncval errors. |
Not even with GPU-assisted validation? |
Nope. If I enable warnings (alongside errors) I get this, but I don't know how relevant that is:
|
It's probably something super stupid like waiting on a fence that was never going to be signalled. |
It would be really helpful if you figured out where it hangs. |
It appears to be freezing in |
44099ce
to
0a0223e
Compare
Does it work now? |
No, still the same. |
Can you tell me exactly where it hangs? Like if you follow the call stack all the way. |
0a0223e
to
42142f9
Compare
42142f9
to
465bf4b
Compare
Follow up to #2627, adding a bindless system to the task graph.
At some point we should add a bindful system as well, as this here requires features and/or extensions. That said, the bindless system is trying to use the least amout of required features and/or extensions while still being maximally performant. It is tenchnically possible to do bindless only using core Vulkan 1.0, but it's not as performant as it could be because we wouldn't be allowed to use
UPDATE_UNUSED_WHILE_PENDING
, meaning we would have to create a new (huge) global descriptor set for each update, orPARTIALLY_BOUND
, meaning we would have to fill the gaps with fallback resources. Alas, the only platform still not supporting bindless is Android. God forbid vendors ship up-to-date drivers.