merge misc commits i had done locally#55
Draft
pythonlover02 wants to merge 54 commits into
Draft
Conversation
…-lost retry (2.2)
…on) overload (3.0)
…y in GetMemoryFlags (3.0)
… OptimizeLayout (3.0)
…formFeedback is unsupported (2.7.1)
…teReadbackResource (3.0)
…D3D11DeferredContext (2.4.1)
…tencilFormat, check post-conversion format (2.6.1)
…xvk-low-latency Adds an opt in frame pacing mode, adapted from netborg-afps/dxvk-low-latency. modified to fit Sarek synchronous vk::Presenter and per-frame CallbackFence, since that project's predictive low latency mode depends on per-submission GPU timestamps and an async presenter that don't exist here.
adds DxvkMemoryPool as an alternative to the legacy per chunk worst fit allocator, toggled via dxvk.enablePagedAllocator (env override DXVK_DISABLE_PAGED_ALLOCATOR). chunks grow based on heap usage instead of a fixed size, up to 256 MiB (64 MiB on 32-bit); anything that doesn't fit a bounded chunk size falls back to the legacy allocator per-request. allocations above 32 KiB use a single best fit free list per memory type at 64 KiB page granularity, replacing the per chunk worst fit scan. allocations up to 32 KiB use size classed slabs so small/frequently churned allocations (constant buffers) share a page instead of each claiming one. allocations between 32-64 KiB still cost a full page either way, same tradeoff any power of two size class pool has. empty chunks/slab pages are released under memory pressure, with a small reserve (1-4, matching legacy) kept first to avoid alloc/free churn at the boundary. no defragmentation a single long-lived allocation pinning an otherwise empty chunk keeps it resident until freed. would need buffer/image objects to own their memory indirectly, which this doesn't change. extends the HUD memory item with per type chunk/page counts under DXVK_HUD=memory.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
they are not big enough to have their own pr