DirectX memory sizes. How to get more?

Discussion created by pcmaster on Oct 20, 2011


I've been wondering for the past months, if there is a way to force the runtime/driver to give me more memory. For example, on systems with 6.00 GB to 18.0 GB system RAM, I get this from the runtime:

HD5700 (1024 MB): 1012 + 0 + 2782 MB (System with 6.0 GB RAM)
HD5700 (1024 MB): 1010 + 0 + 3839 MB (System with 8.0 GB RAM)

The sizes are queried via IDXGIAdapter1::GetDesc1() and are DXGI_ADAPTER_DESC1::DedicatedVideoMemory + DXGI_ADAPTER_DESC1::DedicatedSystemMemory + DXGI_ADAPTER_DESC1::SharedSystemMemory.

All computers are Windows 7 x64, tested with Catalyst 11.3 to 11.9, all the same. It doesn't seem to depend on page-file size, number of connected adapters, their order, whether there is a monitor connected or whether they are queried while a RDP driver is running or from console user session.

I'd really love to see more shared memory. Is there a way?
And another question: Does CrossFire combine/add-up/share graphics adapter memories anyhow?

It is necessary to note that this isn't a AMD/ATI issue, NVIDIA cards/drivers behave the same exact way. I just can't figure out why DirectX gives me only these amounts, why such amounts and how to force it to give me more, when there's a lot! Also 4 GB doesn't seem to be a limit, since I'm getting 4.5-4.8 GB in total on several systems.