Skip to content

Reflecting capabilities used by a shader more finely #222

@mbechard

Description

@mbechard

If I'm given an arbitrary shader and I want to see if it runs on the local hardware, I can use reflection to see if any capabilities are being requested that the hardware doesn't support. However this isn't quite fine grained enough in many cases. For example if SpvCapabilityAtomicFloat32AddEXT is declared, I can see if VK_EXT_shader_atomic_float is supported as a first check. However the hardware may support atomic float operations on some data types and not others, as per the entries in VkPhysicalDeviceShaderAtomicFloatFeaturesEXT. For example on macOS shaderImageFloat32AtomicAdd is not currently supported.

Is there any path forward where we can see what kinds of operations are applied to data, such as flags on a reflected image descriptor saying it was used for an atomic float operation?

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions