I have a few questions about DirectX 12 memory management:
1) When you call the ID3D12Device::Evict() function, how do you specify that the contents of the resource is no longer needed and therefor can be discarded? For example, if I have a resource that I am done with, but will need it again later as a render target, I don't want the contents to be swapped out and restored because that would just be a waste of bandwidth.
2) When you call the QueryVideoMemoryInfo() function and find that your memory budget has been reduced and that you are now over budget, how much time do you have to rectify the situation?
3) Am I correct when saying that Placed Resources cannot be used when you want to use a resource as both a render target and a shader resource? (The reason being that you cannot create a heap that support both uses on heap tier 1 hardware (almost all current NVidia hardware). )