Our great sponsors
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
Yes, Vulkan GPU source is split, though technically in a way that makes it more similar to CUDA. Vulkan uses an intermediate format instead of consuming text code directly, meaning new features are easier to add and frontend code doesn't need to be passed to the vendors driver compiler. SPIR-V is like DXIL or PTX code for CUDA, basically LLVM IR for GPUs. The CUDA compiler compiles your device code into PTX code, and it's what enables you to have "non split" source code. There's even an option to have separate PTX code in CUDA. There are few projects that aim to bring Vulkan SPIR-V into source, including Rust GPU for rust (though it will still have to be in a separate file) and Circle C++ shader for C++.
Yes, Vulkan GPU source is split, though technically in a way that makes it more similar to CUDA. Vulkan uses an intermediate format instead of consuming text code directly, meaning new features are easier to add and frontend code doesn't need to be passed to the vendors driver compiler. SPIR-V is like DXIL or PTX code for CUDA, basically LLVM IR for GPUs. The CUDA compiler compiles your device code into PTX code, and it's what enables you to have "non split" source code. There's even an option to have separate PTX code in CUDA. There are few projects that aim to bring Vulkan SPIR-V into source, including Rust GPU for rust (though it will still have to be in a separate file) and Circle C++ shader for C++.
Related posts
- What's the coolest Rust project you've seen that made you go, 'Wow, I didn't know Rust could do that!'?
- [rust-gpu] How do I run/build my own shaders locally?
- Posh: Type-Safe Graphics Programming in Rust
- Introducing posh: Type-Safe Graphics Programming in Rust
- Looking for high level GPU computing crate