#gpu #vulkan #no-std

no-std gpu-descriptor-ash

gpu-descriptor integration with ash

3 releases (breaking)

new 0.3.0 Apr 9, 2024
0.2.0 Jun 21, 2022
0.1.0 Feb 7, 2022

#401 in Graphics APIs

Download history 17/week @ 2024-02-23 5/week @ 2024-03-01 1/week @ 2024-03-08 29/week @ 2024-03-29 147/week @ 2024-04-05

176 downloads per month


236 lines


crates docs actions MIT/Apache loc

Library for Vulkan-like APIs to allocated descriptor sets from descriptor pools fast, with least overhead and zero fragmentation.

Straightforward usage:

use gpu_descriptor::DescriptorAllocator;

let mut allocator = DescriptorAllocator::new(max_update_after_bind_descriptors_in_all_pools); // Limit as dictated by API for selected hardware

let result = allocator.allocate(
    device, // Implementation of `gpu_descriptor::DescriptorDevice`. Comes from plugins.
    layout, // Descriptor set layout recognized by device's type.
    flags,  // Flags specified when layout was created.
    layout_descriptor_count, // Descriptors count in the layout.
    count, // count of sets to allocated.


Licensed under either of

at your option.


Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Support me on Patreon

Support me on Patreon


~131K SLoC