-
Notifications
You must be signed in to change notification settings - Fork 63
Description
Given that gpu-allocator is getting wider and wider use and that it intends to abstract over some platform specific elements when it comes to memory allocation gpu-allocator often get change requests on the repository to expose some functionality.
We're in a spot where we want to provide a unified and easy to use API and with that come some expectations;
- Cross platform features: Most of the time we will want to have the same set of features exposed on multiple platforms, and if the features are available across a wide range of APIs we should support it for all of the APIs (Metal, Vulkan and Dx12). This makes maintenance significantly easier as it sets clear expectations of what features are available where.
- Platform specific features: However, if a feature only exists on a single platform we shouldn't shy away from it either as sometimes these individual features are key to unlocking performance. In those cases, the PR's around them should mention this explicitly.
This does have some implication directly on the PR authors in that they'll need to work with the community to be able to target some of the platforms they might not otherwise have access to. Note: we do have comprehensive CI set up to compile and test on all these platforms
This also has some implications for reviewers as we're currently not accepting changes that only implement a feature on one of the backends (if that feature is widely available).