-
Notifications
You must be signed in to change notification settings - Fork 1k
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
[wgpu-hal] Blas compaction #7101
Conversation
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. I suspect that it would be better to have fewer/larger query pools in the vulkan backend, but we can cross that bridge if it shows up in profiles.
@JMS55 mentioned this on matrix too, but I'd need to look at the specifics (and how expensive they were). For mesa at least this is 8 bytes read back from the acceleration structure so I would be surprised if this is the main bottleneck (especially since my current plan is to combine this in a build command which is not very fast itself), |
It's not the cost of the copy as much as the driver overhead of managing a lot of tiny pools (and maybe the per-pool memory overhead). The recommendation is generally to group things into large-ish pools but to be honest I don't know how impactful it is. |
I think I'll add it to wgpu/wgpu-core/src/ray_tracing.rs Lines 1 to 8 in 9770409
|
Yeah this is something we can stress test once I start the actual RT work in Bevy and have something to measure. |
Connections
Hal part of #6609
Description
Allows for BLASes to be compacted in wgpu-hal
Testing
No testing, but the successful tests in #6609 tested this API.
Checklist
cargo fmt
.cargo clippy
.cargo xtask test
to run tests.CHANGELOG.md
. See simple instructions inside file.