Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Integrate VMA (Vulkan Memory Allocator) #15162

Merged
merged 10 commits into from
Nov 23, 2021
Merged

Integrate VMA (Vulkan Memory Allocator) #15162

merged 10 commits into from
Nov 23, 2021

Conversation

hrydgard
Copy link
Owner

@hrydgard hrydgard commented Nov 22, 2021

VMA is an open source project by AMD, which simplifies memory allocations in Vulkan and follows best practices, and is also very battle-tested - it's used by a number of commercial games and engines.

This replaces our own allocators with it. I don't see any regressions with regards to memory usage, and some stalls are gone (where we were allocating and freeing too many small-ish memory blocks for our push buffers).

Needs a bit more testing including Android, but after that I think this is probably the way to go.

(Now confirmed working on Android).

License of VMA is MIT, which should be fine.

@hrydgard hrydgard added this to the v1.13.0 milestone Nov 22, 2021
GPU/Vulkan/DebugVisVulkan.cpp Outdated Show resolved Hide resolved
GPU/Vulkan/TextureCacheVulkan.cpp Outdated Show resolved Hide resolved
Common/GPU/Vulkan/VulkanMemory.cpp Outdated Show resolved Hide resolved
@hrydgard hrydgard merged commit c7bba9b into master Nov 23, 2021
@hrydgard hrydgard deleted the integrate-vma branch November 23, 2021 08:19
@ghost
Copy link

ghost commented Nov 23, 2021

Why there's still no android build on automated buildbot?

@unknownbrackets
Copy link
Collaborator

Should be there now.

-[Unknown]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants