#Is it possible in Vulkan to skip the driver and write assembly GPU bytecode directly?
5 messages · Page 1 of 1 (latest)
No
Why not? The more I think about it, the less crazy it becomes
Vulkan is a cross vendor API - meaning it can be used to talk with GPU's from different hardware companies (amd, intel, nvidia, etc). That means Vulkan wants to abstract over the implementation details of GPU's, like assembly, and present a single unified interface.
What you are suggesting is the opposite of that.
even if you made a vendor extension (and thus only focused on one vendor), actual gpu bytecode is more or less impossible because the assembly depends on the specific way drivers implement things like push constants and descriptors and so on - if that implementation changes but the assembly stays the same (because it’s supplied by the app which has no idea), then things will obviously break