Recuperando números de memória de gráficos
Os desenvolvedores de software que criam aplicativos gráficos podem usar as APIs do Microsoft DirectX versão 10 começando no Windows Vista para recuperar o conjunto preciso de números de memória de gráficos em computadores que executam drivers de exibição WDDM (Windows Display Driver Model ). As etapas a seguir mostram como recuperar os números de memória de gráficos:
Como os novos relatórios de memória gráfica estão disponíveis apenas em computadores que executam drivers de exibição WDDM (Windows Display Driver Model), um aplicativo deve primeiro chamar a seguinte função para confirmar o modelo de driver:
HasWDDMDriver() { LPDIRECT3DCREATE9EX pD3D9Create9Ex = NULL; HMODULE hD3D9 = NULL; hD3D9 = LoadLibrary( L"d3d9.dll" ); if ( NULL == hD3D9 ) { return false; } // // Try to create a IDirect3D9Ex interface (also known as a DX9L // interface). // This interface can only be created if the driver is written // according to the Windows Display Driver Model (WDDM). // pD3D9Create9Ex = (LPDIRECT3DCREATE9EX) GetProcAddress ( hD3D9, "Direct3DCreate9Ex" ); return pD3D9Create9Ex != NULL; }
Depois que o aplicativo determina que o modelo de driver de exibição é o WDDM, o aplicativo pode usar as novas APIs do DirectX versão 10 para obter os números de memória gráficos. O aplicativo obtém os números de memória de gráficos da seguinte estrutura de dados DXGI_ADAPTER_DESC , que está presente em Dxgi.h e está incluída no SDK (Kit de Desenvolvimento de Software) do DirectX.
typedef struct DXGI_ADAPTER_DESC { WCHAR Description[ 128 ]; UINT VendorId; UINT DeviceId; UINT SubSysId; UINT Revision; SIZE_T DedicatedVideoMemory; SIZE_T DedicatedSystemMemory; SIZE_T SharedSystemMemory; LUID AdapterLuid; } DXGI_ADAPTER_DESC;
Devido ao uso extensivo de elementos gráficos no Windows Vista e jogos posteriores da área de trabalho e do DirectX, o software executado no Windows Vista e posterior deve ser capaz de determinar com precisão a quantidade de memória gráfica disponível. O WDDM gerencia a virtualização da memória gráfica em si e também garante relatórios precisos de vários aspectos da memória gráfica. Desenvolvedores de aplicativos e fornecedores de software devem aproveitar as APIs do DirectX versão 10 para recuperar o conjunto preciso de valores de memória de gráficos em computadores que têm drivers de exibição do Windows Vista.