Comments (3)
Yeah, this seems like an oversight. Most of our tests don't really ever go past a few descriptors.
from bigwheels.
I checked the Vulkan and D3D12 code for this.
It looks like for Vulkan - the expectation was for the driver to fail if the allocation exceeded the pool capacity:
https://github.com/google/bigwheels/blob/main/src/ppx/grfx/vk/vk_descriptor.cpp#L109-L116
D3D12 has some amount of checking for pool capacity for when a decriptor set is allocated - there may possibly be a bug:
https://github.com/google/bigwheels/blob/main/src/ppx/grfx/dx12/dx12_descriptor.cpp#L74-L96
from bigwheels.
It looks like for Vulkan - the expectation was for the driver to fail if the allocation exceeded the pool capacity:
https://github.com/google/bigwheels/blob/main/src/ppx/grfx/vk/vk_descriptor.cpp#L109-L116
For Vulkan that's a bit tricky:
The driver should fail when going over the maxCount limit.
However the driver may fail if you go over 1 type capacity.
Here the maxCount was 512*3, as we allocated 512 of each.
But we allocated 600+ samplers. Meaning we didn't went above the maxCount, but above 512.
Thought soo too but apprently WAI because of the "may" in the spec. Don't understand the logic to have a pool with types and not enforce it but meh 🤷♂️
https://gitlab.freedesktop.org/mesa/mesa/-/issues/8411
from bigwheels.
Related Issues (20)
- Provide a way for applications to specify needed vulkan features/extensions
- [benchmark] [graphics_pipeline] dx12 crashes on startup HOT 5
- Allow fluid simulation class to be embedded in other apps HOT 1
- Rename `GeometryOptions` to `GeometryCreateInfo`
- Change Geometry's buffer growth rate to reduce allocations HOT 2
- GPU mipmap generation broken when running with SwiftShader HOT 1
- vk_24_push_constants segfaults on SwiftShader + Linux
- Organize benchmarks under folder benchmarks instead of samples
- [benchmark] invalid timestamp computation for multi-pass rendering HOT 12
- SPV shaders from previous builds in root directory overwrite compiled shaders in a custom directory HOT 1
- Update documentation on FluidSim::GetNormalizedSize
- ClearRenderTarget/ClearDepthStencil don't work with dynamic render passes HOT 1
- Remove the need for PPX_BUILD_XR in project level code HOT 1
- Consider removing function Profiler functionality
- Simplify RenderPass creation logic
- [graphics_pipeline] Wireframe mode crashes for Vulkan build
- [graphics_pipeline] Toggling 1x1 texture mode causes crash
- [Wayland] fix BigWheels when fractional scaling is enabled.
- [Wayland] fix BigWheels when scaling is enabled.
- vk_alloc has validation error "pAllocateInfo->allocationSize is 268435456 bytes from heap 2,but size of that heap is only 257949696 bytes"
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bigwheels.