Crate vulkan_malloc [] [src]

This crate provides an implementation of a general purpose device memory allocator that should cover common use cases for Vulkan-based applications, while minimising the frequency of actual allocations of memory blocks from the Vulkan runtime.

This crate is heavily based on the C++ library VulkanMemoryAllocator from AMD.

For more details about the rationale and implementation of this library, please see the documentation of VulkanMemoryAllocator.

Allocator itself is thread-safe - it is both Send and Sync.

Structs

Allocator

Thread-safe device memory allocator

AllocatorBuilder

Used to construct an Allocator using the builder pattern.

AllocatorMemoryRequirements

In addition to normal MemoryRequirements, this struct provides additional details affecting how the allocator chooses memory to allocate.

Enums

MemoryUsage

Specifies how memory will be used with respect to transfers between the device and the host.