Como começar a escrever um perfil de GPU de baixo nível?

8

Tenho estudado os perfis de GPU das empresas de hardware nos últimos dias (Qualcomm, PowerVR, Intel). Percebi que essas ferramentas parecem fornecer mais detalhes de baixo nível do que os criadores de perfil de GPU que usei no passado - captura e apitrace de quadro OpenGL ES do XCode - que listavam apenas as chamadas OpenGL feitas e qual o estado atual. recursos são.

Como começar se eu quiser criar uma ferramenta de baixo nível que exiba coisas como falhas no cache do amostrador e código do assembler de sombreador?


fonte

Respostas:

6

Para dados básicos de tempo de GPU, você pode usar as consultas de carimbo de data / hora do D3D ou as consultas de timer OpenGL equivalentes .

Quaisquer dados de hardware de baixo nível, como falhas de cache, serão extremamente específicos do fornecedor. Cada fornecedor de GPU possui sua própria API ou extensão personalizada para dar acesso a dados de desempenho de baixo nível em seu hardware. As APIs variam em como funcionam e nem todas expõem necessariamente os mesmos detalhes. Os dados disponíveis também podem variar entre diferentes modelos de chips no mesmo fornecedor, portanto, você provavelmente precisará saber um pouco sobre como o hardware funciona para dar sentido a ele.

Aqui estão os links para as APIs relevantes para a maioria dos principais fornecedores de GPU.

Nathan Reed
fonte
Oh, incrível, acho que eu deveria ter me aprofundado um pouco mais nos sites da corporação. Supus que, como a apitrace não oferecesse esses detalhes, havia algum tipo de reversão em andamento. Obrigado!
oh, eu pensei que ele queria escrever outro perfkit. qual a resposta seria que não é possível, a menos que você faça seu próprio hardware.
v.oddou 30/05