locked
IDXGIDevice3::Trim fails 3.8 requirement (fails WACK Perf Test)

    Question

  • Since Windows 8.1, it is impossible to get certified any of my apps (Direct3D app). They all failed the Perf test in the Windows ACK. Weird thing that the app pass on my Surface RT Perf test (which is the slowest Windows 8.1 device you can have), and the app takes like 1 seconds to load.

    Is Windows ACK comprised ?

    It seems to be related to the IDXGIDevice3::Trim: This function seems to fails the 3.8 requirement.  Also it seems to be required for being passed. So adding it will pass the new Trim test, but will fails to 3.8 requirement (Perf Test).

    Is it possible to get an exception, to no support it, or target for Windows 8.0, to not have to implement Trim function ?

    Wednesday, October 30, 2013 1:55 PM

All replies

  • Trim gives back memory used by direct3d while in suspend mode to help with performance.

    You need trim only for win 8.1

    Its not too hard to implement.

    #include "DXGI1_3.h"
    
    
    
    	IDXGIDevice3 * pDXGIDevice;
    	if (FAILED(dxgiDevice->QueryInterface(__uuidof(IDXGIDevice3), (void **) &pDXGIDevice)))
    		return;
    
    
    	pDXGIDevice->Trim();
    


    n.Wright


    Wednesday, October 30, 2013 10:17 PM
  • Using trim fails on Windows RT. It is not compliant with Perf test. I'm tried to update an other app, it failed again (and it was certified many times on Windows 8.0)

    Trim takes too much time, more than 5 seconds after restoring the app, and fails the performance test. But if I remove it, it fails to an other test (The new Trim required test).

    Right now, the only solution is to drop Windows RT (ARM platform) until Microsoft is fixing the WACK test or the trim function requirement. I'm working right now with someone at microsoft which is testing the app and he's agree that my app is perfectly fine on Windows 8 and Windows RT, regarding the performance test. However it fails at Microsoft test labs.

    Thursday, October 31, 2013 3:28 PM