NVIDIA RTX Memory Utility (RTXMU)
Reducing Memory Consumption with an Open Source Solution
RTXMU reduces the time it takes for a developer to integrate compaction and suballocation into an RTX title.
Eliminate Wasted Memory
For applications using RTXMU, NVIDIA RTX cards get a ~50% reduction in memory footprint.
Scenes with thousands of small unique BLAS benefit greatly from suballocation.
To ensure we are able to support as many developers as possible, RTXMU will be made available as open source on GitHub.
NVIDIA Competitive Analysis
Using RTXMU as a Suballocator
The AS suballocator works around the 64 KB / 4MB buffer alignment requirement by placing small AS allocations within a larger memory heap.
The AS suballocator still has to fulfil the 256 B alignment required for AS allocations.
If the application requests 4 MB or larger suballocation blocks then RTXMU uses placed resources with heaps that can provide 4 MB alignment.
Using RTXMU for Compaction
If the build requests compaction, RTXMU will request the compaction size be written out to a chunk of video memory.
Once the compaction size has been copied from video memory to system memory, RTXMU allocates a sub-allocated compaction buffer to be used as the destination for the compaction copy.
The compaction copy takes the original build containing unused memory segments and truncates it down to the smallest memory footprint it can fit in.
Compaction and Suballocation Analysis