Pergunta

Eu comecei a usar DirectX 11 Compute Shader Tecnologia para programação GP-GPU. Eu escrevi um programa bastante complexo no HLSL e quando eu queria depurar, percebi que Pix Utilitário do DX SDK Agosto de 2009 não suporta shaders de computação ... eu sei que a NVIDIA vai lançar Nexo Para o Visual Studio, que suportará a depuração direta de computação, mas apenas na próxima geração de GPUs NVIDIA que ainda não foram lançadas :( computa a tecnologia de shader parece muito promissora para mim, por causa da independência do dispositivo, mas seria muito difícil de usar sem depuração Apoio, suporte.

Você conhece alguma ferramenta ou abordagem, que pode ser usada para depuração de shader de computação, disponível agora ou planejada para lançamento em um futuro próximo?

Foi útil?

Solução

eu estou esperando por Nvidia Nexus para se tornar amplamente disponível. Talvez a Microsoft possa criar algo que funcione com o rasterizador de referência, mas eu diria o que é importante é obter uma integração rígida com o hardware: nesse caso, apenas os fornecedores poderiam fornecer as ferramentas necessárias.

Alguém pode saber se a AMD planeja adicionar suporte para shaders de computação em GPU PerfStudio.

Outras dicas

Uma maneira eficiente de desenvolver e depurar shader de computação HLSL complexa é compilá -lo com C ++. Depois de conseguir que você possa aproveitar seus recursos de depuração do IDE que normalmente usa com C ++, como memória e pesquisa variável etc. Abaixo está um projeto de demonstração de conceito de prova, mostrando como depurar uma amostra DirectX HLSL Compute Shader:

https://github.com/cezbloch/shaderator

Depois que seu código estiver funcionando e corrija, você o execute na GPU - o C ++ Verion é destinado apenas a ajudar no desenvolvimento.

Desculpe, mas não há resposta trivial para essa pergunta por enquanto.

Talvez tente se matricular no programa BETA NVIDIA NEXUS:http://supportCentenline.com/ICS/support/default.asp?deptid=4639

Onde você leu Nexo Precisa de uma GPU baseada em Fermi? Eu pensei que os requisitos em que uma estação de trabalho capaz de SLI com 2 recentes NVIDIA GPUS ou 2 estações de trabalho baseadas em NVIDIA (e depois depra o alvo remotamente).

Infelizmente, os Shaders de Compute de depuração são muito parecidos com os shaders de depuração e pixels que costumavam ser ... A melhor maneira que encontrei é executar pequenas alterações e valores de teste de saída em um recurso de textura temporária. Em seguida, você pode renderizar o recurso de textura na tela do seu aplicativo (ou até salvo para arquivar) e usá -lo para extrair informações sobre o que está acontecendo no shader.

É realmente uma situação terrível, mas é assim que a situação de ferramentas é agora ...

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top